Школьный финал Кубка CTF 2025: сервис AWS Sigma
Организаторы выложили сервисы школьного финала CTFCUP 2025 — aws_sigma, grob и sonobank — вместе с чекерами, эксплойтами и описаниями. Разберём первый.
Что за сервис
AWS Sigma — сервис бессерверных функций, похожий на AWS Lambda. Пользователь пишет на JavaScript обработчик HTTP-запросов, а сервис выполняет его на сервере. Функции умеют работать с диском и базой данных. Бэкенд — TypeScript и NestJS с MongoDB, среда выполнения — Rust и Boa с PostgreSQL, панель — React.
Уязвимости по описанию авторов
- Чтение произвольных файлов через API файловой системы для функций — так достаётся секрет JWT из /etc/sigma/jwt.secret
- Слабая проверка доступа к базе данных из функций — видны данные других проектов
- NoSQL-инъекция в обработчике GET /api/v1/projects
- NoSQL-инъекция почти в любом обработчике — через подделку JWT
- DoS by design при выполнении функций. Для быстрого закрытия в среде выполнения предусмотрены опции
Что взять в подготовку
Уязвимости сервиса связаны: одна выдаёт секрет, с ним открывается следующая. Поэтому цепочку стоит разбирать целиком, а заплатки проверять так, чтобы сервис по-прежнему проходил чекер.
Важно. По положению X Кубка школьный и СПО зачёты играют 4 декабря с 10:00 до 19:00 по Москве, этап 2.5 — attack-defense. Прошлогодние сервисы удобно разобрать заранее, на учебной игре.
Чек-лист
- ☐ Скачать репозиторий школьного финала 2025
- ☐ Поднять сервис локально через docker-compose
- ☐ Найти уязвимости самим, потом сверить с описанием
- ☐ Прогнать эксплойты из sploits против своих заплаток
- ☐ Проверить, что после заплаток сервис проходит чекер
План подготовки уже составлен
Открыть «План подготовки команды к CTF» →
Источники: репозиторий acisoru/ctfcup2025-school-final (README, services/aws_sigma/README.md); Положение о X Всероссийских соревнованиях «Кубок CTF России» (2026), разд. III п. 4, 5, разд. VI п. 1. Канал не принадлежит организаторам; официальный сайт — ctfcup.ru. Флаг в записи не приводится. Сверено 03.11.2026.