Многие багхантеры полагаются только на перебор или простые кейсы при поиске IDOR, при этом упускают некоторые нестандартные способы 👇
1️⃣ Утечка UUID на уровне приложения
Есть ли в приложении функционал, где UUID может «засветиться» публично (например, таймлайн, история изменений, активности и т. д.) ?
Можно ли дать кому-то доступ к объекту с этим UUID, а потом забрать? Часто UUID всё ещё остаётся в логах, уведомлениях и т. п.
2️⃣ Получение UUID легитимным способом
Обычно это лучший способ добыть нужный UUID. Пользователи ведь не вводят UUID вручную — они вводят email, имя и т. д.
Если в приложении есть формы, которые принимают публичную инфу (email и т. д.) и возвращают UUID, то это золото.
3️⃣ Наследие старых ID
До UUID часто использовались числовые ID. Иногда в JSON-ответах всё ещё можно увидеть старые поля (
id: 123, uuid: ...).Бывает, что можно подставить старый числовой ID вместо UUID — и это срабатывает.
4️⃣ Утечка через пути
Можно ли каким-то способом вытащить внутренние пути приложения? Иногда помогает слабая политика referrer, открытые metadata-эндпоинты, где можно увидеть роуты и UUID внутри путей.
