Авторские курсы Михаила Тарасова

IDOR: как сменить id=1 на id=2 и попасть в чужой аккаунт

IDOR: как сменить id=1 на id=2 и попасть в чужой аккаунт

Одна из самых недооценённых уязвимостей в вебе. Не нужен эксплойт, не нужна социальная инженерия. Нужно просто поменять одну цифру в адресной строке.

IDOR (Insecure Direct Object Reference) — уязвимость контроля доступа, при которой приложение использует пользовательский ввод для прямого обращения к объектам базы данных без проверки прав. Ты вошёл как user_id=1, но сервер отдаёт данные для любого user_id, который ты передашь. Смена одной цифры — и ты читаешь чужие сообщения, заказы, медкарты, банковские данные.

В 2026 году IDOR остаётся одним из самых частых векторов в Bug Bounty: в мессенджере Max белые хакеры нашли свыше 200 уязвимостей, и самым частым вектором оказался именно IDOR — доступ к чужим чатам, файлам и сообщениям через подмену идентификаторов.

🧬 Анатомия уязвимости: почему это работает

Классический сценарий — профиль пользователя по ID:

Сервер получает user_id=1338, делает запрос в базу данных и возвращает данные этого пользователя. Если нет проверки — отдаёт всё. Вот как выглядит уязвимый и защищённый код:

2. Тело POST/PUT-запроса

3. HTTP-заголовки

5. API-эндпоинты

🔍 Методология поиска: Burp Suite как основной инструмент

Burp Suite — твой главный союзник при охоте на IDOR:

Шаг 1: Перехват и маппинг запросов

Регулярное выражение для поиска ID-параметров в Burp:

Шаг 2: Burp Intruder — автоматический перебор

Шаг 3: Autorize — расширение для автоматической проверки

Это обязательное расширение для охоты на IDOR:

Сценарий 2: Вертикальное повышение привилегий (стать админом)

Сценарий 3: Захват аккаунта через IDOR в сбросе пароля

Сценарий 4: IDOR в файлах и документах

🤖 IDOR в API: особый случай

Современные API — золотая жила для IDOR. Разработчики часто защищают веб-интерфейс, забывая про API:

📝 Как написать Bug Bounty репорт по IDOR

IDOR — одна из самых выгодных находок в Bug Bounty. Правильный репорт умножает выплату:

🏆 IDOR на реальных платформах: цена находки

Программа Тип IDOR Выплата
HackerOne (топ) Account takeover via IDOR $10 000 – $50 000
Bugcrowd (средний) IDOR в просмотре данных $500 – $5 000
Standoff365 (Max) Доступ к чужим чатам до 500 000 ₽
Яндекс Bug Bounty IDOR в API 30 000 – 150 000 ₽

 

💣 Итог: IDOR — это не хайтек. Это провал в самом базовом: сервер не спросил «а ты точно имеешь право смотреть это?». Одна проверка прав доступа на бэкенде закрывает уязвимость. Но разработчики забывают об этом снова и снова — именно поэтому IDOR занимает топ Bug Bounty выплат каждый год. Учи искать, учи находить, учи грамотно репортить.

Мои курсы