Ручной анализ исходного кода – это проверка кода на наличие уязвимостей и проблем, связанных с бизнес-логикой, которую выполняет квалифицированный специалист. Выполнять анализа кода вручную можно «в лоб», просматривая весь код от начала и до конца, или придерживаться определенного подхода — например, определив сначала поверхность атаки.
Поверхность атаки программного обеспечения (ПО) — совокупность интерфейсов и реализующих их модулей ПО, посредством прямого или косвенного использования которых могут реализовываться угрозы безопасному функционированию ПО. Для определения поверхности атаки обычно используются статические анализаторы исходного кода.
Однако обнаружить уязвимости можно с помощью ручного статического анализа. В статье рассмотрим, какие есть основные этапы обнаружения уязвимостей при ручном статическом анализе, на что обязательно стоит обратить внимание.