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

Небезопасная прямая ссылка на объект (англ. Insecure direct object reference, IDOR) — это разновидность уязвимости контроля доступа в области цифровой безопасности[1].

Такая уязвимость возникает, когда веб-приложение или программный интерфейс приложения (API) использует идентификатор для прямого доступа к объекту во внутренней базе данных, но не осуществляет проверку наличия разрешений или аутентификации. Например, если запрос на сайт содержит уникальный идентификатор, который легко перебирается (например, https://example.com/document/1234), это позволяет злоумышленнику получить несанкционированный доступ ко всем записям.

Атака типа обхода каталогов (directory traversal) считается частным случаем небезопасной прямой ссылки на объект[2].

Данная уязвимость считается настолько значимой, что в течение многих лет входила в Топ-10 наиболее опасных уязвимостей по версии проекта OWASP (англ. Open Web Application Security Project)[3].

Для борьбы с этой проблемой возможно заменить последовательные идентификаторы на «тёмные ключи» (англ. Dark Keys) с помощью ряда техник[4].

Примеры

В ноябре 2020 года компания Silent Breach обнаружила уязвимость IDOR на сайте Министерства обороны США и уведомила об этом через Программу раскрытия уязвимостей министерства. Ошибка была исправлена путём добавления механизма пользовательских сессий в систему учётных записей, что потребовало обязательной аутентификации на сайте[5].

Сообщалось, что социальная сеть Parler использовала последовательные идентификаторы сообщений, что позволило в январе 2021 года осуществить массовое извлечение (скрапинг) тербайт данных из этой службы. Однако исследователь, ответственный за данный проект, заявил, что это утверждение является неточным[6].

Примечания

  1. Insecure direct object references (IDOR) | Web Security Academy. portswigger.net. Дата обращения: 12 января 2021.
  2. Karande, Chetan Securing Node Applications - 4. Insecure Direct Object References (англ.). www.oreilly.com. Дата обращения: 12 января 2021.
  3. Solomon, Howard Common development error likely led to huge Parler data theft, says expert | IT World Canada News (амер. англ.). www.itworldcanada.com (12 января 2021). Дата обращения: 12 января 2021.
  4. Contieri, Maximiliano Refactoring 028 - Replace Consecutive IDs with Dark Keys. Clean Code Cookbook (17 мая 2025). Дата обращения: 17 мая 2025.
  5. Cimpanu, Catalin Bug hunter wins 'Researcher of the Month' award for DOD account takeover bug (англ.). ZDNet. Дата обращения: 12 января 2021.
  6. Greenberg, Andy An Absurdly Basic Bug Let Anyone Grab All of Parler's Data (12 января 2021). Дата обращения: 12 января 2021. Архивировано 12 января 2021 года.

Категории