👁🗨Hello world~
OWASP ASVS: Что именно проверять в приложении
• В посте про OWASP я уже упоминал ASVS, сегодня поговорим подробнее и посмотрим, как использовать его на практике.
• ASVS (Application Security Verification Standard) это стандарт с требованиями к безопасности приложений, который помогает разработчикам понять, какие механизмы защиты нужны, а тестировщикам определить, что именно проверять.
• Для примера возьмём выход из аккаунта, после нажатия кнопки сайт показывает страницу входа и удаляет сессионную cookie из браузера, но это ещё не означает, что сессия перестала работать на сервере.
• ASVS требует исключать дальнейшее использование завершённой сессии, иначе тот, кто ранее получил её идентификатор, сможет продолжить обращаться к аккаунту даже после выхода владельца.
• Для проверки используем Burp Suite:
• Войдём в тестовый аккаунт через браузер Burp и откроем профиль, затем во вкладке HTTP history найдём запрос, который возвращает личные данные пользователя.
• Отправим его в Repeater через Send to Repeater, нажмём Send и посмотрим ответ сервера, в нём должны быть данные нашего аккаунта, а не просто HTML-страница, которую может открыть любой посетитель.
• Для проверки сделаем копию запроса и удалим из неё сессионную cookie, без неё сервер не должен возвращать эти данные, иначе мы выбрали неподходящий запрос или обнаружили отдельную проблему с доступом.
• Теперь выйдем из аккаунта в браузере, дождёмся завершения выхода и сразу повторим исходный запрос в Repeater с прежним значением cookie, убедившись, что Burp не заменил его автоматически.
• Если сервер продолжает отдавать закрытые данные, старая сессия всё ещё позволяет получить доступ, хотя пользователь уже вышел из аккаунта.
• При этом сам по себе ответ 200 OK ничего не доказывает, внутри может быть обычная страница входа, поэтому важно проверить именно содержимое ответа.
• В результатах сохраним требование ASVS, запросы и ответы до и после выхода, чтобы разработчик мог воспроизвести проблему, а мы проверить её после исправления.
• Так можно работать и с другими требованиями стандарта, выбираем нужный механизм, определяем ожидаемое поведение и проверяем, совпадает ли оно с реальным.
• Одна успешная проверка не делает всё приложение безопасным, но даёт конкретный результат. Удачи!
#OWASP #ВебБезопасность
• Поддержать автора монеткой: @v_meshke
Post #735
453

- ❤ 6
- ❤🔥 3