7 ноября на NSK CTF School 2026 сыграли 52 команды. Школьникам предложили 25 тасков в восьми категориях — от криптографии и анализа файлов до веб-уязвимостей и реверса. Всё это объединила история «Лаборатории X»: участники разбирались в её прошлом, восстанавливали записи суперкомпьютера ALICE и искали флаги. В старшем зачёте Новосибирской области победителя и второе место разделили восемь баллов.
Ревизия лаборатории
По легенде турнира, «Лаборатория X» скрывалась за дверью, которой нет на чертежах. Трое постоянных сотрудников проводили эксперименты, а суперкомпьютер ALICE наблюдала за происходящим. Её правило — смотреть и не вмешиваться. Участникам предстояло разобраться в накопленном архиве: журналах, записях камер, протоколах и списках допусков.
Эта история продолжалась в условиях тасков. Восстановленная панель доступа хранила сведения о старой смене, архивные записи — следы инцидента, а служебные установки — данные о периоде, которого не было в журнале ALICE. Команды получали отдельные фрагменты истории вместе с техническими заданиями.
Турнир прошёл онлайн в формате Jeopardy. В программу вошли network, crypto, forensic, misc, osint, pwn, reverse и web. Команды соревновались в четырёх зачётах: 22 — среди учащихся 10–11 классов Новосибирской области, 13 — среди учащихся 7–9 классов области, семь — в зачёте СФО и десять — в гостевом.
Репозиторий соревнования — https://github.com/acisoru/NSKCTF-2026-v2
Тематическое оформление было даже у системных сообщений
Кнопка, утка и три босса
В анонсе организаторы приглашали игроков без опыта и обещали задания, в которых поможет внимательность. Одним из вводных тасков стал DON’T PRESS в категории web. На экране была кнопка, нажать которую мешали несколько ограничений. Сначала она была отключена, затем убегала от курсора, а после требовала тысячу нажатий с паузами.
Авторское решение показывало, что все эти препятствия находились на стороне браузера. Отключённую кнопку можно было включить через инструменты разработчика, убегающую — нажать с клавиатуры, а счётчик — изменить в cookie. Таск знакомил с тем, почему серверу нельзя доверять данным, которые присылает пользователь.
В «Маршруте утки» из категории misc участники восстанавливали движение по последовательности команд за 2191 сутки. Утка поворачивала, шла вперёд, наступала в лужи и вытирала лапы о коврик. Следы оставались только от мокрых лап — нужно было увидеть, что она натоптала.
Другой misc, «Ревизия: карантин», предлагал собрать отряд, найти снаряжение и пройти рейдовых боссов. Вне безопасных зон разрешался PvP. По условию, первые два босса выдавали персональные допуски, а последний открывал архив с флагом участникам отряда, нанёсшего финальный удар.
Именно этот таск запомнился Марку revpwn из Cyb3rp4w5. На вопрос о любимом задании он ответил коротко: «Пострелялся, поубивал».
На другом конце шкалы сложности была Orchestra в категории reverse. Участникам выдавали повреждённую партитуру: партии баса и фортепиано сохранились, а середину скрипичной нужно было восстановить. За нотами скрывались команды виртуальной машины. Бас выбирал область памяти, фортепиано задавало разрешения, скрипка — вычисления. Чтобы закончить протокол, требовалось разобраться в работе программы и восстановить недостающие ноты.
«А мы лишь курировали»
Cyb3rp4w5 начала игру с криптографии. По словам Марка, первый таск команда решила с помощью GPT и быстро включилась в соревнование. Дальше участники распределяли работу между ИИ-агентами.
«Писали небольшие скиллы под агентов, далее делили по командам агентов и отправляли всё это дело по чатам», — рассказал Марк.
Для криптографии, например, брали четырёх агентов, готовили инструкции, передавали условия через MCP и запускали решение. Свою роль в этом процессе он описал так: «Поделили агенты, а мы лишь курировали».
По его словам, работе мешали лимиты и ошибки ToS. После ошибок команда создавала новые чаты, а при исчерпании лимитов использовала новые аккаунты.
Отдельные задания Марк решал вручную. Он привёл пример таска, который назвал «Забытая таблица»: извлёк хеш из архива, подобрал пароль по словарю с помощью John the Ripper и получил флаг.
Восемь баллов между первым и вторым местом
По ходу игры Cyb3rp4w5 пришлось догонять лидера.
«Изначально видели большой отрыв от первого места, пришлось чуть запотеть, чтоб вернуться в строй».
По словам Марка, уверенность в победе появилась после решения OSINT-таска, у которого до этого не было ни одного решения. Команда продолжила работать: хотела добрать ещё один таск и увеличить преимущество примерно до тысячи баллов.
В итоговой таблице разрыв оказался значительно меньше. Cyb3rp4w5 набрала 17 085 баллов, Flag Bearers — 17 077. Третье место в старшем зачёте Новосибирской области заняла A1 H4ck с 16 175 баллами.
В зачёте 7–9 классов области победила [LIT]pwn4food — у команды тоже 17 077 баллов. В зачёте СФО первой стала Ligu, в гостевом — l0st byt3s.
| Зачёт | Первое место | Второе место | Третье место |
|---|---|---|---|
| НСО, 10–11 классы | Cyb3rp4w5 — 17 085 | Flag Bearers — 17 077 | A1 H4ck — 16 175 |
| НСО, 7–9 классы | [LIT]pwn4food — 17 077 | Джентельмены — 7 202 | NAVI — 6 293 |
| СФО | Ligu — 14 089 | Шарокататели — 4 232 | fr34kk1d5 — 1 886 |
| Гостевой | l0st byt3s — 10 170 | TechnoH4ck — 9 253 | KernelSense — 5 437 |



