เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก

Graudit เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบซเบผเบฒเบเปเบฅเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡ codebase เป‚เบ”เบเบเบปเบ‡เป€เบ‚เบปเป‰เบฒเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ.

เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก
เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: Unsplash (Markus Spiske)

เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบกเปˆเบ™เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ‚เบญเบ‡เบงเบปเบ‡เบˆเบญเบ™เบŠเบตเบงเบดเบ”เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบง. เบกเบตเบซเบผเบฒเบเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เปเบ•เปˆเบฅเบฐเบ„เบปเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡. เบกเบทเป‰เบ™เบตเป‰เบ‚เป‰เบญเบเบขเบฒเบเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบŠเบญเบเบซเบฒเบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเปƒเบ™เบฅเบฐเบซเบฑเบ”.

เปเบ™เปˆเบ™เบญเบ™, เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบกเบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบง, เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบˆเบฐเบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™. เปƒเบ™เป€เบงเบฅเบฒเบซเบ™เบถเปˆเบ‡, เบ„เปเบฒเบžเบดเป€เบชเบ” DevSecOps เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ. เบ„เปเบฒเบชเบฑเบšเบ™เบตเป‰เบซเบกเบฒเบเป€เบ–เบดเบ‡เบŠเบธเบ”เบ‚เบญเบ‡เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ—เบตเปˆเบกเบตเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เปเบฅเบฐเบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเบญเปˆเบญเบ™เปเบญเปƒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™. เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบžเบดเป€เบชเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเบ•เบฒเบกเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ OWASP, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ—เบดเบšเบฒเบเบ›เบฐเป€เบžเบ”เบ•เปˆเบฒเบ‡เป† เปเบฅเบฐเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡.

เบกเบตเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™เปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบž, เป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ„เบปเบ‡เบ—เบตเปˆ (SAST), เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปเบšเบšเป€เบ„เบทเปˆเบญเบ™เป„เบซเบง (DAST), เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปเบšเบšเป‚เบ•เป‰เบ•เบญเบš (IAST), เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบŠเบญเบšเปเบง, เปเบฅเบฐเบญเบทเปˆเบ™เป†.

เบเบฒเบ™โ€‹เบ—เบปเบ”โ€‹เบชเบญเบšโ€‹เบ„เบงเบฒเบกโ€‹เบ›เบญเบ”โ€‹เป„เบžโ€‹เบ‚เบญเบ‡โ€‹เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹เบชเบฐโ€‹เบ–เบดเบ”โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เบ„เบงเบฒเบกโ€‹เบœเบดเบ”โ€‹เบžเบฒเบ”โ€‹เปƒเบ™โ€‹เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เบ‚เบฝเบ™โ€‹เปเบฅเป‰เบงโ€‹. เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบงเปˆเบฒเบกเบฑเบ™เบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบชเบฐเบ–เบดเบ”.

เบ‚เป‰เบญเบเบˆเบฐเบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบฅเบฐเบซเบฑเบ”เบชเบฐเบ–เบดเบ”เปเบฅเบฐเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”.

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ‚เป‰เบญเบเบˆเบถเปˆเบ‡เป€เบฅเบทเบญเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบฅเบฐเบซเบฑเบ”เบชเบฐเบ–เบดเบ”

เบกเบตเป€เบซเบ”เบœเบปเบ™เบซเบผเบฒเบเบขเปˆเบฒเบ‡เบชเปเบฒเบฅเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰: เบ—เปเบฒเบญเบดเบ”, เบกเบฑเบ™เบšเปเปˆเป€เบชเบเบ„เปˆเบฒเป€เบžเบฒเบฐเบงเปˆเบฒเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบเบŠเบธเบกเบŠเบปเบ™เบ‚เบญเบ‡เบœเบนเป‰เบ—เบตเปˆเบกเบตเบˆเบดเบ”เปƒเบˆเบ”เบฝเบงเบเบฑเบ™เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบŠเปˆเบงเบเป€เบซเบผเบทเบญเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบญเบทเปˆเบ™เป†. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ—เบตเบกเบ‡เบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบซเบผเบทเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ—เปˆเบฒเบ™เบกเบตเป‚เบญเบเบฒเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบˆเบฐเบŠเปˆเบงเบเบ›เบฐเบขเบฑเบ”เป€เบ‡เบดเบ™เป‚เบ”เบเปƒเบŠเป‰เบŠเบญเบšเปเบง open source เป€เบžเบทเปˆเบญเบ—เบปเบ”เบชเบญเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡ codebase เบ‚เบญเบ‡เบ—เปˆเบฒเบ™. เบญเบฑเบ™เบ—เบตเบชเบญเบ‡, เบกเบฑเบ™เบเปเบฒเบˆเบฑเบ”เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเป€เบˆเบปเป‰เบฒเบˆเป‰เบฒเบ‡เบ—เบตเบก DevSecOps เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบซเบผเบธเบ”เบœเปˆเบญเบ™เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เบ•เบทเปˆเบกเบญเบตเบ.

เป€เบ„เบทเปˆเบญเบ‡เบกเบทเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ—เบตเปˆเบ”เบตเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบชเบฐเป€เบซเบกเบตเป‚เบ”เบเบ„เปเบฒเบ™เบถเบ‡เป€เบ–เบดเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เป€เบเบทเบญเบšเบ—เบธเบเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก, เบเบงเบกเป€เบญเบปเบฒเบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบเบงเป‰เบฒเบ‡เบ‚เบงเบฒเบ‡. เบกเบฑเบ™เบ‡เปˆเบฒเบเบ‚เบถเป‰เบ™เบซเบผเบฒเบเบชเปเบฒเบฅเบฑเบšเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบตเปˆเบˆเบฐเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบเบฑเบšเบฅเบฐเบšเบปเบšเบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เปเบฅเป‰เบงเปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เปเบ•เปˆเบญเบฒเบ”เบˆเบฐเบกเบตเป€เบงเบฅเบฒเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบ—เปˆเบฒเบ™เป€เบฅเบทเบญเบ. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบกเบตเป‚เบญเบเบฒเบ”เบ—เบตเปˆเบˆเบฐ fork เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ•เบปเบ™เปเบฅเบฐเบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบกเบฑเบ™เบเบฑเบšเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™.

เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเปƒเบ™เบเปเบฅเบฐเบ™เบตเบซเบผเบฒเบเบ—เบตเปˆเบชเบธเบ”, เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบงเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบญเบดเบ”เบ—เบดเบžเบปเบ™เบขเปˆเบฒเบ‡เบˆเบดเบ‡เบˆเบฑเบ‡เป‚เบ”เบเบŠเบธเบกเบŠเบปเบ™, เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เป„เบงเปเบฅเบฐเป€เบ–เบดเบ‡เบˆเบธเบ”: เบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบเบฒเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เปเบกเปˆเบ™เบญเบตเบ‡เปƒเบชเปˆเบ„เปเบฒเบ„เบถเบ”เบ„เปเบฒเป€เบซเบฑเบ™เปเบฅเบฐเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบˆเบฒเบเบœเบนเป‰เปƒเบŠเป‰, เปƒเบ™เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบžเบปเบšเบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ” เปเบฅเบฐเบšเบฑเบ™เบซเบฒเบญเบทเปˆเบ™เป†.

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Graudit เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบฅเบฐเบซเบฑเบ”

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ•เปˆเบฒเบ‡เป†เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบฅเบฐเบซเบฑเบ”เบชเบฐเบ–เบดเบ”; เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ‚เบญเบ‡ OWASP เปเบฅเบฐเบžเบฐเบเบฒเบเบฒเบกเบเบงเบกเป€เบญเบปเบฒเบžเบฒเบชเบฒเบซเบผเบฒเบเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.

เปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเปƒเบŠเป‰ Gradit, เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เป€เบชเบฑเป‰เบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเบ—เบตเปˆเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบŠเบญเบเบซเบฒเบˆเบธเบ”เบญเปˆเบญเบ™เปƒเบ™ codebase เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบกเบฑเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบžเบฒเบชเบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เปเบ•เปˆเบŠเบธเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบเบฑเบ‡เบกเบตเบˆเปเบฒเบเบฑเบ”. Graudit เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡ grep, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบ›เปˆเบญเบเบญเบญเบเบกเบฒเป€เบกเบทเปˆเบญเบžเบฒเบเปƒเบ•เป‰เปƒเบšเบญเบฐเบ™เบธเบเบฒเบ” GNU.

เบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบฅเบฐเบซเบฑเบ”เบ„เบปเบ‡เบ—เบตเปˆ - Rough Auditing Tool for Security (RATS), Securitycompass Web Application Analysis Tool (SWAAT), flawfinder เปเบฅเบฐเบญเบทเปˆเบ™เป†. เปเบ•เปˆ Graudit เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบซเบผเบฒเบเปเบฅเบฐเบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™เบซเบ™เป‰เบญเบ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเบกเบตเบšเบฑเบ™เบซเบฒเบ—เบตเปˆ Graudit เบšเปเปˆเบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เป„เบ”เป‰. เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบŠเบญเบเบซเบฒเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบญเบทเปˆเบ™เป„เบ”เป‰เบ—เบตเปˆเบ™เบตเป‰ เปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ™เบตเป‰.

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบชเบฐเป€เบžเบฒเบฐ, เบซเบผเบทเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเป€เบฅเบทเบญเบ, เบซเบผเบทเปƒเบŠเป‰เบกเบฑเบ™เบžเป‰เบญเบกเป†เบเบฑเบ™เปƒเบ™เบ—เบธเบเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ™เบตเป‰เปเบกเปˆเบ™เบšเปˆเบญเบ™เบ—เบตเปˆเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบ‚เบญเบ‡ Graudit เป€เบ‚เบปเป‰เบฒเบกเบฒเบซเบผเบดเป‰เบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒ clone repo เบ—เปเบฒเบญเบดเบ”:

$ git clone https://github.com/wireghoul/graudit

เบ•เบญเบ™เบ™เบตเป‰เปƒเบซเป‰เบชเป‰เบฒเบ‡เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบชเบฑเบ™เบเบฒเบฅเบฑเบเบชเปเบฒเบฅเบฑเบš Graudit เป€เบžเบทเปˆเบญเปƒเบŠเป‰เบกเบฑเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบ„เปเบฒเบชเบฑเปˆเบ‡

$ cd ~/bin && mkdir graudit
$ ln --symbolic ~/graudit/graudit ~/bin/graudit

เบกเบฒเป€เบžเบตเปˆเบกเบ™เบฒเบกเปเบเบ‡เปƒเบชเปˆ .bashrc (เบซเบผเบทเป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบ”เบเปเปˆเบ•เบฒเบกเบ—เบตเปˆเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰):

#------ .bashrc ------
alias graudit="~/bin/graudit"

เบ›เบดเบ”เป€เบ›เบตเบ”เปƒเปเปˆ:

$ source ~/.bashrc # OR
$ exex $SHELL

เบกเบฒเบเบงเบ”เป€เบšเบดเปˆเบ‡เบงเปˆเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบชเบณเป€เบฅเบฑเบ”เบซเบผเบทเบšเปเปˆ:

$ graudit -h

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบซเบฑเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบ—เบตเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ”เบต.

เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก

เบ‚เป‰เบญเบเบˆเบฐเบ–เบทเบเบ—เบปเบ”เบชเบญเบšเบซเบ™เบถเปˆเบ‡เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเบ‚เบญเบ‡เบ‚เป‰เบญเบ. เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ‡เบกเบท, เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบœเปˆเบฒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡เบเบฑเบšเบžเบฒเบชเบฒเบ—เบตเปˆเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบเบ–เบทเบเบ‚เบฝเบ™. เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เป‚เบŸเบ™เป€เบ”เบต ~/gradit/เบฅเบฒเบเป€เบŠเบฑเบ™:

$ graudit -d ~/gradit/signatures/js.db

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ—เบปเบ”เบชเบญเบšเบชเบญเบ‡เป„เบŸเบฅเปŒ js เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ‚เป‰เบญเบ, เปเบฅเบฐ Graudit เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบญเปˆเบญเบ™เปเบญเปƒเบ™เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบ‚เป‰เบญเบเบเบฑเบš console:

เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก

เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก

เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบฅเบญเบ‡เบ—เบปเบ”เบชเบญเบšเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปƒเบ™เปเบšเบšเบ”เบฝเบงเบเบฑเบ™. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบšเบดเปˆเบ‡เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบšเบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™ เบ—เบตเปˆเบ™เบตเป‰.

เบ‚เปเป‰เบ”เบตเปเบฅเบฐเบ‚เปเป‰เป€เบชเบเบ‚เบญเบ‡ Graudit

Graudit เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบžเบฒเบชเบฒเบเบฒเบ™เบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบซเบผเบฒเบ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบกเบฑเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบชเปเบฒเบฅเบฑเบšเบฅเบฐเบ”เบฑเบšเบ„เบงเบฒเบกเบเป‰เบงเบฒเบ‡เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰. เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบขเปˆเบฒเบ‡เบžเบฝเบ‡เบžเปเบเบฑเบš analogues เบ—เบตเปˆเบšเปเปˆเป€เบชเบเบ„เปˆเบฒเบซเบผเบทเบˆเปˆเบฒเบ. เปเบฅเบฐเบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เบซเบผเบฒเบเบ—เบตเปˆเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฑเบ‡เบ”เปเบฒเป€เบ™เบตเบ™เบขเบนเปˆเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™, เปเบฅเบฐเบŠเบธเบกเบŠเบปเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบŠเปˆเบงเบเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เปเบ•เปˆเบเบฑเบ‡เบœเบนเป‰เปƒเบŠเป‰เบญเบทเปˆเบ™เป†เบ—เบตเปˆเบžเบฐเบเบฒเบเบฒเบกเบŠเบญเบเบซเบฒเป€เบ„เบทเปˆเบญเบ‡เบกเบท.

เบ™เบตเป‰โ€‹เปเบกเปˆเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ„เบงเบฒเบกโ€‹เบชเบฐโ€‹เบ”เบงเบโ€‹, เปเบ•เปˆโ€‹เบกเบฒโ€‹เป€เบ–เบดเบ‡โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เบกเบฑเบ™โ€‹เบšเปเปˆโ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบชเบฐโ€‹เป€เบซเบกเบตโ€‹เป„เบ›โ€‹เบ—เบตเปˆโ€‹เปเบ™เปˆโ€‹เบ™เบญเบ™โ€‹เบงเปˆเบฒโ€‹เบšเบฑเบ™โ€‹เบซเบฒโ€‹เปเบกเปˆเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบชเบดเป‰เบ™โ€‹เบ‚เบญเบ‡โ€‹เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เบ—เบตเปˆโ€‹เบซเบ™เป‰เบฒโ€‹เบชเบปเบ‡โ€‹เปƒเบชโ€‹. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเบทเบšเบ•เปเปˆเบ›เบฑเบšเบ›เบธเบ‡ Graudit.

เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเปƒเบ”เบเปเปˆเบ•เบฒเบก, เบกเบฑเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบˆเบฐเป€เบญเบปเบฒเปƒเบˆเปƒเบชเปˆเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบฅเบฐเบซเบฑเบ”เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปƒเบŠเป‰เป€เบ„เบทเปˆเบญเบ‡เบกเบทเป€เบŠเบฑเปˆเบ™เบ™เบตเป‰.

เป€เบฅเบตเปˆเบก...

เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เป€เบšเบดเปˆเบ‡เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเบงเบดเบ—เบตเบ—เบตเปˆเบˆเบฐเบŠเบญเบเบซเบฒเบˆเบธเบ”เบญเปˆเบญเบ™ - static application security testing . เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบฅเบฐเบซเบฑเบ”เบชเบฐเบ–เบดเบ”เปเบกเปˆเบ™เบ‡เปˆเบฒเบ, เปเบ•เปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เป€เบžเบทเปˆเบญเบฎเบฝเบ™เบฎเบนเป‰เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบเปˆเบฝเบงเบเบฑเบšเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡ codebase เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ›เบฐเป€เบžเบ”เบญเบทเปˆเบ™เป†เป€เบ‚เบปเป‰เบฒเปƒเบ™เบงเบปเบ‡เบˆเบญเบ™เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบŠเบญเบšเปเบงเบ‚เบญเบ‡เบ—เปˆเบฒเบ™.

เบเปˆเบฝเบงเบเบฑเบšเบชเบดเบ”เบ—เบดเบ‚เบญเบ‡เบเบฒเบ™เป‚เบ„เบชเบฐเบ™เบฒ

VPS เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰ เปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เปเบœเบ™เบเบฒเบ™เบญเบฑเบ”เบ•เบฒเบžเบฒเบชเบตเบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบ–เบทเบเบฅเบปเบšเบเบงเบ™เบซเบ™เป‰เบญเบเบˆเบฒเบเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ”เบเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบšเปเปˆเบซเบ™เป‰เบฒเบžเปเปƒเบˆ - เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบงเปเบฅเบฐเบกเบตเป€เบงเบฅเบฒเบชเบนเบ‡เบซเบผเบฒเบ!

เบงเบดเบ—เบตเบเบฒเบ™เปƒเบŠเป‰เบ›เบฐเป‚เบซเบเบ”เบ‡เปˆเบฒเบเป†เป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบŠเปˆเบญเบ‡เป‚เบซเบงเปˆเปƒเบ™เบฅเบฐเบซเบฑเบ”เป‚เบ›เบผเปเบเบผเบก

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เบŠเบทเป‰เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡ DDoS, เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ VPS VDS ๐Ÿ”ฅ เบŠเบทเป‰เป€เบงเบฑเบšเป„เบŠเบ—เปŒเป‚เบฎเบ”เบ•เบดเป‰เบ‡เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ–เบทเป„เบ”เป‰เบ”เป‰เบงเบเบเบฒเบ™เบ›เป‰เบญเบ‡เบเบฑเบ™ DDoS, เป€เบŠเบตเบšเป€เบงเบต VPS VDS | ProHoster