Типичные ляпы с уязвимостями и как не растеряться при проверке
Накидаю с чем реально сталкиваюсь, когда смотрю на веб-проекты и их защиту. Самые частые косяки — это сначала доверять только автоматическим сканерам. Да, они помогают, но никогда не показывают всей картины. Прогон по топовым тулзам — это хорошо, но без понимания где и что проверять вручную толку мало.
Часто не умеют правильно настроить уровни доступа к конфигурационным файлам — проще говоря, папки и файлы с важной инфой вываливаются вместе с сайтом. Плюс забывают про update CMS и плагинов — коптеры вырубаются, но многие до сих пор работают на старом софте.
Еще момент — отсутствие валидации вводимых данных. Простейшее: не фильтруют параметры GET и POST, убеждают, что готовый фреймворк покроет все, а сами нюансов не понимают. В результате инъекции где угодно — от SQL до XSS.
Немаловажно проверить, насколько хорошо спасают заголовки безопасности (Content Security Policy, HSTS и подобное). Часто они либо не настроены, либо прям совсем забыты.
Если коротко — не стоит слепо гоняться за полной автоматикой и забывать простые правила защиты: обновляй, проверяй права доступа, валидируй ввод и не забывай про заголовки безопасности. У кого похожий опыт? Какие еще базовые ошибки встретились?
Вот это прямо в точку! Помню времена, когда сканеры были чуть ли не панацеей, а вручную никто особо не проверял — результат был плачевный. Сейчас, конечно, все должно быть комплексно: и сканеры, и ручная проверка, и обновления. Без базовой гигиены безопасности любой автоматизм бесполезен.
Сильно согласен с тем, что без ручной проверки сканеры — это только первый шаг. Часто заметишь, что даже при обновленном софте и включённых заголовках проблемы остаются из-за неправильных прав доступа или забытой валидации. Главное — не лениться и хотя бы пару раз пройтись руками по коду, чтобы понять, что автоинструменты не все дыры пронзают.