Новое Распределяем каналы MAX по категориям и территориям. Читать новость
3 топовых приёма для пентестинга — видео, канал «ZeroDay | Кибербезопасность» ▶ видео

3 топовых приёма для пентестинга



👋 Приветствую в мире цифровой безопасности!

Собрал ещё три приёма для проверки веб-приложений. На первый взгляд мелочи, но иногда именно в них прячутся интересные уязвимости.

⏺Mass Assignment - сервер может принимать поля, которых вообще нет в интерфейсе. Например, обычный запрос на изменение профиля:

PATCH /api/profile HTTP/1.1
Content-Type: application/json

{“name”:”Alex”,”email”:”alex@example.com”}


А что, если добавить isAdmin?

{“name”:”Alex”,”isAdmin”:true}

Если бэкенд без разбора сохраняет переданные поля, пользователь может изменить то, к чему у него не должно быть доступа.

⏺HTTP Method Override - некоторые серверы позволяют переопределять метод запроса через заголовок:

POST /api/users/42 HTTP/1.1
Host: example.com
X-HTTP-Method-Override: DELETE


Прокси видит POST, а приложение может обработать его как DELETE. Если проверки безопасности учитывают только исходный метод, появляется шанс обойти ограничения.

⏺JSON Type Confusion - попробуйте вместо ожидаемой строки передать массив:

{“userId”:”42”}

Заменяем на:

{“userId”:[“42”]}

Если API, промежуточный сервис и бэкенд по-разному работают с типами данных, могут возникнуть ошибки в проверках доступа и сравнении значений. Особенно стоит присмотреться к API, где запрос проходит через несколько компонентов. Главное, проверять не только ответ сервера, но и то, изменилось ли поведение приложения.

🤖Бесплатный ChatGPT
Просмотры: 220
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти