Сколько себя помню, всегда сталкивался с тем, что сканер или ручные проверки поднимают минимум проблем или вообще ничего — и это не значит, что сайт или приложение суперпрочны. В большинстве случаев причина банальна, и вот несколько частых причин, почему уязвимости не обнаруживаются:
1. Несовпадение окружения. Сканаешь на тестовом, а уязвимость в продакшене (или наоборот). Код в разных местах может отличаться, и баги могут банально отсутствовать там, где ты копаешь.
2. Неправильно настроенный инструмент. Многие берут автомат и пускают “как есть”, без фильтров и игнорирования, из-за чего сканер либо не проверяет нужные пути, либо не может дозапустить специфичные тесты.
3. Скрипты, защиты и WAF. Часто встречал, что защитные модули ложатся на любые подозрительные запросы и блокируют всю сессию, не давая “достучаться” до реальной уязвимости.
4. Перекрытие багов. Иногда баг вроде есть, но его уже прикрыли патчем или он стал просто шумом без реального эксплоита (например, устаревший JS-библиотека без видимого векторы).
5. Логика и кастомизация. Большинство автоматов ищут известные эксплойты, но если приложение сильно кастомизировано — многие классические проверки никуда не годятся.
Чтобы понять, в чем конкретно затык, советую: сравнить версии кода (prod и test), залогировать весь трафик с разными инструментами, пробовать ручные обходы с разными заголовками/параметрами и не терять терпения на стандартных парсерах без дозагрузки кастомных скриптов.
Кто еще сталкивался с тем, что уязвимости “не работают” или вообще не всплывают? В чем была загвоздка у вас?