Что является иллюзией защиты при IDOR

Недавно, как и обычно в свободное время, я хантил на бб и в новом для себя сервисе буквально за 5 минут нашёл IDOR. И именно эта история подтолкнула меня написать данный пост.

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

━━━━━━━━━━ Где появляются сомнения ━━━━━━━━━━

В качестве идентификатора использовался UUIDv4. То есть не какой-то id=12345, не последовательный номер, не короткий токен, а длинный идентификатор формата: • XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

UUIDv4 даёт огромное пространство значений (2 в степени 122). Если он генерируется корректно, без предсказуемости и без влияния со стороны пользователя, то прямой брутфорс такого идентификатора со скростью в 1 квадриллион запросов в секунду занял бы 168 трлн лет (нашей вселеной всего 13,8 млрд лет).

И вот именно здесь рождается одна из самых опасных философий в безопасности: ➤ если идентификатор очень сложно угадать, значит объект защищён

━━━━━━━━━━ Почему я считаю это всё равно уязвимостью ━━━━━━━━━━

IDOR это не про “легко или сложно перебрать”. Это про отсутствие проверки доступа к объекту.

━━━━━━━━━━ Откуда вообще брать такие идентификаторы ━━━━━━━━━━

На практике чужой UUID далеко не всегда нужно перебирать. Можно получить косвенно: • пользователь сам где-то его раскрыл • идентификатор утекает в другом ответе API • он светится в логике frontend • приходит в уведомлениях • попадает в комментарии, чаты, вложения, экспорт • или вообще находится через другой менее заметный баг

То есть сам по себе “неперебираемый” идентификатор часто становится постором на стене прекрывающую дырку в отсутсвии авторизации.

━━━━━━━━━━ Итог ━━━━━━━━━━

UUID может скрывать объект, но не должен заменять проверку доступа к нему. Именно в этом и заключается главная иллюзия защиты при IDOR для меня.

#AppSec #IDOR #BOLA #BugBounty #Pentest #WebSecurity #APISecurity #BrokenAccessControl #BAC #CyberSecurity

Что является иллюзией защиты при IDOR | Сетка — социальная сеть от hh.ru