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