По OWASP кратко и без воды — что реально важно проверить
Кто только начал шариться в веб-уязвимостях, наверняка натыкается на OWASP Top 10 и думает «а с чего вообще начать?». Вот коротко, как я для себя разбил эту шляпу.
1. Injection — самые простые и частые проблемы, например SQL-инъекции. Проверь, не передаёшь ли сырые данные в запрос без фильтрации. Быстрый способ — попробовать типичные спецсимволы и видеть, как отреагирует сервер.
2. Broken Authentication — часто связана с слабыми паролями и сессиями. Следи, чтобы не было открытых сессий или легкой подделки токенов.
3. Sensitive Data Exposure — банально, но иногда забывают шифровать важное или оставляют открытым доступ к конфиденциальке.
4. XML External Entities (XXE) — нечасто, но если парсишь XML, тут надо быть внимательнее.
5. Broken Access Control — ситуация, когда можно получить права того, кто не должен. Очень многое зависит от логики приложения.
6. Security Misconfiguration — например, открытые директории, слабо настроенный сервер или заброшенные debug-режимы.
7. Cross-Site Scripting (XSS) — классика жанра, выводишь пользовательский ввод без обработки — бац, скрипт в браузере.
8. Insecure Deserialization — хардкор, но если приложение сереализует объекты, можно словить глюк.
9. Using Components with Known Vulnerabilities — актуально для CMS и сторонних библиотек, которые никто не обновляет.
10. Insufficient Logging & Monitoring — с этого шага большинство и начинается — без логов сложно понять, что стряслось.