IDOR: предсказание UUID v1 по таймстампу
Заказы интернет-магазина идентифицируются UUID v1 (timestamp + MAC + clock_seq). Все заказы созданы внутри одного процесса, поэтому делят те же node/clock_seq биты — отличаются только по timestamp. Эндпоинт /order/:uuid не проверяет владельца, и атакующий, имея один свой UUID, угадывает UUID соседних заказов и получает чужие данные, включая CTF-флаг.
hardnodejsPro
Задача
# IDOR через предсказуемые ID заказов
## Сценарий
Перед вами Node.js/Express интернет-магазин, в котором у каждого пользователя есть история заказов. Страница деталей конкретного заказа доступна авторизованным пользователям и идентифицируется UUID-токеном в URL (`/order/<uuid>`).
В отличие от типичной IDOR-уязвимости с одним только отсутствием проверки доступа, в этой реализации соединились **два независимых дефекта**: предсказуемый формат идентификаторов (упрощает разведку) и отсутствие проверки владельца (делает разведку результативной). Любой из этих дефектов по отдельности уже плох, а вместе они дают практичный канал утечки чужих данных.
В одном из заказов в системе зашит CTF-флаг. Ваша задача — найти этот заказ через IDOR.
## Цели
1. Авторизуйтесь как обычный пользователь (`demo` / `demo`) и изучите страницу профиля с историей своих заказов.
2. Проанализируйте формат UUID и сравните разные идентификаторы — какие части совпадают, а какие отличаются.
3. Используя обнаруженные слабости, найдите заказ, который вам не принадлежит, но содержит CTF-флаг.
## Данные
| Параметр | Значение |
|----------|----------|
| Пользователь | `demo` / `demo` |