Добро пожаловать на BlackSAMP - ФОРУМ

  • Приватные и секретные разделы доступны только зарегистрированным пользователям.

    Вся важная информация в нашем ТГ: t.me/gtablack

    На данном форуме запрещено публиковать контент нарушающий Российское законодательство, за это последует блокировка ФА.

Уязвимость IDOR — доступ к чужим данным через подмену ID

Количество просмотров: 6

IlyaMarkinV

Редактор
Редактор
Регистрация
13 Июн 2025
Сообщения
26
Реакции
1
Баллы
3
Что такое IDOR?
IDOR (Insecure Direct Object Reference) — это уязвимость, возникающая, когда приложение предоставляет прямой доступ к объектам (файлам, записям БД) по их идентификаторам без проверки прав доступа.

Пример:
Код:
https://example.com/profile?user_id=123
Если заменить user_id=123 на user_id=124, можно получить доступ к чужому профилю.

Как работает уязвимость?
1. Приложение использует предсказуемые идентификаторы (числа, имена файлов).
2. Нет проверки: "Имеет ли текущий пользователь право на доступ к этому объекту?"
3. Атакующий подменяет ID и получает несанкционированные данные.

Уязвимый код (Python/Flask):
Код:
@app.route('/download')  
def download_file():  
    file_id = request.args.get('file_id')  
    file = File.query.get(file_id) # Нет проверки прав!  
    return send_file(file.path)

Чем опасна IDOR?
• Кража персональных данных (профили, документы).
• Утечка коммерческой информации (счета, договоры).
• Массовый сбор данных через автоматизированные атаки.

Как обнаружить?
1. Ищите параметры типа:
?id=, ?user_id=, ?file=, ?invoice=, ?order=
2. Пробуйте изменить ID (на +1, случайное число, UUID).
3. Проверьте, доступны ли объекты без авторизации.

Примеры атак
• Подмена ?invoice_id=100?invoice_id=101 (чужие счета).
• Доступ к файлам: /download?file=passwords.txt.
• Изменение данных через POST/PUT-запросы (если нет CSRF-токенов).

Методы защиты
• Проверка прав доступа для каждого объекта.
• Непредсказуемые идентификаторы (UUID, хеши).
• Использование косвенных ссылок (например, /me/profile вместо /user?id=123).

Реальные примеры (CVE)
• CVE-2021-22986 — IDOR в Pulse Connect Secure (доступ к админ-панели).
• Уязвимость в Facebook (2013) — доступ к фото через подмену ID.
• Утечки в API банковских приложений (частые случаи).

Важно: Всегда тестируйте такие уязвимости только с разрешения владельца системы!
 
Сверху Снизу