Фото на обложке IDOR

IDOR — небезопасная прямая ссылка на объект

Iнебезопасный DПрям ая O▪ Таблица Rссылка или ИДОР происходит, когда приложение непреднамеренно раскрывает частные объекты через пользовательский ввод. Например, веб-сайт может позволить вам получить доступ к личным профилям клиентов, введя уникальные идентификаторы пользователей в URL-адрес, например:

https://example.com/account?id=32145

Опасность, конечно, заключается в том, что злоумышленник может создать бота, который перебирает целое число, чтобы извлечь конфиденциальную информацию. Этот вектор атаки особенно заметен, если значение идентификатора является инкрементным, поскольку каждое последующее целое число гарантированно является другой учетной записью. В конечном счете, это контроль доступа уязвимость, поскольку непривилегированный незнакомец может использовать пользовательский ввод, чтобы получить доступ к вещам, которым он не должен.

Полезная нагрузка Burp Intruder
(Полезная нагрузка Burp Intruder для перебора параметра URL)

Типы ИДОР

Атаки IDOR могут проявляться в разных формах. Обычно человек может легко обнаружить эти уязвимости, проверив HTTP-трафик через полномочие, иногда, когда уязвимость проявляется в URL-адресе, простой браузер справился бы с этой задачей.

После проверки HTTP-трафика следует обратить внимание на прямое и косвенное влияние пользовательского ввода на возвращаемые сервером объекты. Наиболее часто используемые такие пользовательские входы:

  • Инкрементное целое: как и в приведенном выше примере, когда ресурсы доступны через инкрементный целочисленный параметр, который обычно является ключом в таблице, который можно легко повторить.
  • Даты: Аналогично, даты также могут повторяться.
  • Предсказуемые строки: файлы, в которых хранится конфиденциальная информация с именами вроде «ID-» + имя пользователя + «.txt».

Методы смягчения последствий

В конечном счете, смягчение последствий IDOR сводится к наличию надежной системы контроля доступа. Например, веб-сайт может проверять, в какую учетную запись вошел пользователь, прежде чем отображать профиль, или не разрешать пользователям без прав администратора загружать определенные файлы. Таким образом, даже если злоумышленник может манипулировать параметрами для выявления закрытых объектов, несанкционированный доступ будет отклонен.

Многие рекомендуют использовать трудно угадываемые значения параметров, чтобы итерация по ним была затруднена, если не вообще невозможна, например, UUID или любой хэш с высокой энтропией. Хотя это важно сделать, это может открыть другие векторы атаки при утечке этих идентификаторов, например, то, что было обнаружен в мобильном приложении Uber

Эти идентификаторы обычно хранятся как «отображаемый идентификатор», который приложение предоставляет пользователю, в то время как внутри бэкэнд по-прежнему использует обычный идентификатор для запросов к базе данных, объединения таблиц и многого другого.

 Эта шпаргалка OWASP, однако предлагает другое решение: использование соленых хэшей, чтобы скрыть прямые ссылки.

Обнаружение IDOR 

Существует несколько способов обнаружения уязвимости IDOR, некоторые методы лучше других. Со временем мы узнаем, что ручное или гибридное тестирование такой уязвимости является наиболее точным по сравнению с фаззингом или автоматизированными инструментами.

Традиционном пух тестирование не соответствует задаче. Он предназначен для обнаружения сбоев или сбоев, когда программа поставляется с искаженным вводом. Но с IDOR нужно обнаруживать случаи, когда правильно сформированный ввод работает, но не должен. Для приложений, использующих развязность определить их API, пушистый световой год был развит.
Существуют и другие инструменты автоматического обнаружения во время выполнения, но мы неоднократно видели, как они терпят неудачу, поэтому мы не можем рекомендовать какой-то конкретный.

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

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

перейти к содержанию