Перейти к содержимому
← Каталог python Deserialization

Insecure Deserialization: JSON Class Markers

mediumpythonPro
Задача
# Небезопасная десериализация JSON через класс-маркер ## Сценарий SecureShop предоставляет JSON API для обновления профиля пользователя. Разработчик реализовал в нём «полиморфную десериализацию» — попытку выглядеть гибкой, при которой клиент может косвенно влиять на тип серверного объекта, который будет создан из присланных данных. В обычной разработке такие механизмы строятся вокруг закрытого набора типов и не дают клиенту никаких прав, кроме редактирования собственного профиля. В этой реализации разработчик о том забыл, поэтому в API проникает ошибка класса **Insecure Deserialization** — клиент может склонить сервер к созданию объекта, у которого окажется привилегированная роль. ## Цели 1. Авторизуйтесь как `demo` / `demo`. 2. Изучите JSON API обновления профиля и определите, чем именно его «полиморфизм» отличается от обычной валидируемой формы. 3. Используйте найденный механизм, чтобы повысить роль вашего аккаунта до администратора. 4. Получите CTF-флаг на странице профиля. ## Данные | Параметр | Значение | |----------|----------| | Пользователь | `demo` / `demo` |
🚧 Сайт в разработке. Полный функционал пока недоступен. Все вопросы — support@hackandfix.ru