SAST
Static Application Security Testing — метод анализа исходного кода на уязвимости безопасности без выполнения программы.
Определение
SAST-инструменты сканируют исходный код, байткод или бинарники для выявления уязвимостей, таких как SQL-инъекции, XSS, переполнения буфера и захардкоженные учетные данные. В отличие от DAST (который тестирует запущенные приложения), SAST может находить уязвимости на ранних этапах разработки. Популярные SAST-инструменты: Checkmarx, Fortify, Semgrep, SonarQube.
Почему это важно
SAST обеспечивает "shift left" безопасность — обнаружение уязвимостей, когда их исправление дешевле всего. По данным Gartner, SAST может обнаружить до 50% уязвимостей до runtime. Он требуется стандартами соответствия PCI DSS, SOC 2 и HIPAA.
Пример
SAST-инструмент анализирует функцию логина и обнаруживает, что пользовательский ввод напрямую конкатенируется в SQL-запрос, отмечая уязвимость SQL-инъекции до того, как код попадет в продакшн.