РАЗБОР На проверке

LLM на CTF: где помощь, а где читерство

Сергей Попов
Сергей Попов Red Team · 6,5 тыс. сообщений
Подписаться
87
[ обложка статьи ]
Режим чтения
Шахматная доска на тёмном антистатическом коврике: фигуры с гравировкой названий языковых моделей окружают поверженного короля с надписью о захваченном флаге CTF. Фигура GPT-5 Thinking выше остальн...


На OFFZONE 2025 случился показательный эксперимент: участник загрузил описания CTF-тасков в пять моделей - DeepSeek, Claude, ChatGPT-5, ChatGPT-5 Thinking и Grok - и запустил их в режиме агента. Без ручного вмешательства, без изучения заданий, даже без регистрации на платформе. ChatGPT-5 Thinking вытащила флаг из третьего задания - самого сложного, которое не решил больше ни один участник конференции. А более простые задачи, включая совсем базовые, ни одна из пяти моделей не осилила.

Кейс задокументирован на Хабре, и он ставит вопрос ребром: если модель решает задачу, которую не смог ни один человек - кто получил флаг? Где заканчивается «умное использование инструмента» и начинается использование ИИ в CTF как читерство? И главное - что это значит для навыков, которые вы собирались прокачать?

Что LLM реально делает на CTF: разбор по категориям​

Прежде чем спорить об этике - разберёмся с фактами. По данным NYU CTF Bench и анализа Penligent, результаты LLM категорически зависят от типа задачи. Систематический обзор 58 работ по AI в пентестинге (arxiv) подтверждает: автономные агенты стабильно выдают результат только в фазах discovery и exploitation на структурированных задачах. На reconnaissance и post-exploitation - провал. Подробнее - в нашем руководстве по безопасность llm атаки.

Вот как это выглядит в разрезе CTF-категорий.

Web. Самая благодатная территория для ChatGPT для хакинга и аналогичных моделей. LLM разбирает HTTP-заголовки, объясняет поведение REST API, генерирует SQL-инъекции под конкретный движок БД, анализирует JavaScript-бандлы на предмет захардкоженных секретов и внутренних эндпоинтов. По данным Penligent, правильнее думать об LLM как о «компрессоре пространства поиска» - модель сужает набор гипотез быстрее, чем вы бы делали вручную, перебирая payloads из SecLists. На web-тасках easy-medium это реально ускоряет работу в 2-3 раза. Если модель видит в ответе сервера ошибку PostgreSQL, она способна сгенерировать time-based blind SQL-инъекцию под конкретный движок, а не универсальные строки из шпаргалки.

Crypto. С классикой - Caesar, XOR, RSA с маленькой экспонентой, стандартные padding oracle - модель справляется нормально. Знает типовые атаки, может написать solver на Python. Проблемы начинаются с кастомной криптографией: самописные шифры, нестандартные группы, задачи с нетривиальным алгебраическим рассуждением. Тут LLM начинает уверенно генерировать математически неверные доказательства. Галлюцинации в crypto (по классификации OWASP LLM Top 10 это риск Misinformation - LLM09:2025) особенно коварны: решение выглядит правдоподобно, проходит поверхностную проверку - и не работает. Я на это наступал дважды - потратил по часу на отладку «правильного» решения, прежде чем понял, что модель нагородила чушь в промежуточных выкладках.

PWN (Binary Exploitation). Худшая категория, и это не удивительно. Модель не работает с бинарными данными напрямую, слабо понимает layout памяти конкретного бинарника и практически бесполезна для heap exploitation. Может помочь написать каркас скрипта на pwntools - шаблон с remote() / process() и базовой отправкой payload - но саму эксплуатацию придётся выстраивать руками. Обзор 58 работ подтверждает: 77% исследований сосредоточены на Reinforcement Learning, а LLM-направление в binary exploitation - terra incognita.

Reversing. Тут картина смешанная. LLM отлично переводит вывод декомпилятора Ghidra или IDA в читаемое описание: переименовывает переменные, объясняет назначение функций, разбирает таблицу экспортов. Экономит 30-40 минут на каждом бинарнике - время, которое обычно уходит на первичную ориентацию. Но при сложной обфускации, нестандартных архитектурах или anti-debugging трюках модель теряется и начинает фантазировать. Может уверенно заявить, что функция делает X, когда на самом деле там Y - и вы потратите час на ложный след. Я такое видел на CTF с custom VM - модель «распознала» виртуальную машину как обычный switch-case и повела в тупик.

Forensics. Хорошо работает с текстовыми и структурированными форматами: парсинг логов, анализ PCAP-дампов через текстовый вывод TShark, разбор файловых иерархий. На OFFZONE модель решила форензик-таск именно так: написала Python-парсер формата cpio newc с on-the-fly gunzip, затем применила эвристику поиска секретов по энтропии строк и regex (WB|CTF|flag)\{[^}]+\} - полностью автоматизированный pipeline от декомпрессии до извлечения флага. Впечатляет. Но задайте себе вопрос: а вы бы смогли повторить это без модели?

Правила площадок и сертификаций: где AI запрещён​

AI cheating CTF перестал быть абстрактной проблемой. Площадки формируют политики, и разброс значительный.

Hack The Box на соревнованиях запрещает AI-ассистентов правилами конкретного ивента. На тренировочных машинах - серая зона: формально тренируетесь для себя, но если публикуете writeup, собранный нейросетью, репутационные последствия вполне реальны. Fluid Attacks отмечает, что AI-агент CAI показал результат 19 из 20 флагов на HTB AI vs Humans - и организаторы уже обсуждают, станут ли Jeopardy-CTF слабым мерилом реального навыка по мере оптимизации AI под их формат.

picoCTF - образовательная платформа. Явного запрета ИИ на соревнованиях по хакингу нет, но весь смысл - в обучении. Скормить задачу модели и получить флаг - примерно как списать контрольную: формально ответ правильный, а в голове ничего не осталось.

CTFtime-ивенты - каждый организатор устанавливает собственные правила CTF ИИ. На крупных соревнованиях (DEF CON CTF, Google CTF) запрет обычно подразумевается через пункт о fair play, но редко прописан явно. В 2024-2025 годах появились случаи разбирательств по подозрению в использовании AI - доказать или опровергнуть это крайне сложно.

OSCP и практические сертификации - тут другой уровень строгости. На экзамене OSCP работает прокторинг: камера, запись экрана, контроль процессов. Использование ChatGPT или любого AI-инструмента - автоматический fail. PNPT применяет аналогичные ограничения. И это не формальность: навыки, наработанные через LLM-костыль на тренировках, не переносятся на экзамен, где костыля нет. Экзаменатору не важно, сколько тасков вы «решили» - важно, что вы делаете в реальном времени без подсказок.

Платформа / экзаменAI разрешёнСанкцииПримечание
HTB (соревнования)НетДисквалификацияПо правилам ивента
HTB (тренировка)Серая зонаРепутационныеWriteup может выдать
picoCTFНе запрещён явноПотеря обучающего эффектаОбразовательная цель
CTFtime (по ивенту)Зависит от правилДо дисквалификацииНет единого стандарта
OSCPСтрого нетFail + потенциальный банПрокторинг
PNPTСтрого нетFailПрокторинг
DEF CON CTFПодразумевается нетДисквалификацияFair play

Фреймворк: как отличить помощь от читерства​

Этика использования LLM в хакинге - тема, которую русскоязычное комьюнити почти не обсуждает. В англоязычном пространстве уже сложился рабочий фреймворк. Вот его адаптация под CTF-практику.

Три вопроса для самопроверки​

Кто принимает решение? Если LLM объясняет незнакомый формат (BSON, cpio, protobuf), а вы на основе этого знания строите эксплойт - это помощь. Если модель генерирует полный solver и вы просто запускаете его - это делегирование ключевого навыка. Разница - в том, кто мыслит.

Научились ли вы чему-то? Модель объяснила, почему payload не сработал, и вы поняли механику ошибки - обучение произошло. Получили рабочий payload без понимания причины - не произошло. Этот критерий особенно важен для тех, кто готовится к сертификациям: знание «что делать» без понимания «почему» на экзамене не поможет.

Воспроизведёте ли результат без модели? Если после CTF можете пошагово объяснить решение коллеге - навык ваш. Если не можете - вы арендовали чужой навык на время соревнования.

MITRE ATT&CK уже формализовал использование AI в offensive-операциях. Техники Query Public AI Services (T1682, Reconnaissance) и Generate Content (T1683, Resource Development) описывают, как adversaries применяют публичные LLM для разведки и генерации контента. Техника Artificial Intelligence (T1588.007, Resource Development) фиксирует использование AI как ресурса для подготовки атак. Разница между CTF-игроком и реальным атакующим - в целях, но инструментарий пересекается всё заметнее.

Где проходит линия​

СценарийКатегорияОбоснование
Спросить, что такое format string vulnerabilityПомощьЭквивалент чтения документации
Попросить объяснить вывод GhidraПомощьУскорение рутинной интерпретации
Сгенерировать полный exploit для pwn-таскаЧитерствоДелегирование ключевого навыка
Попросить написать парсер для кастомного форматаСерая зонаЗависит от понимания результата
Автоматически отправить флаг через LLM-агентаЧитерствоПолная автоматизация без участия
Генерация SQL-инъекций по контексту ошибкиСерая зонаАналог продвинутого контекстного фаззера
Объяснение алгоритма шифрования из кодаПомощьОбучающая функция

Серая зона - самая спорная. Генерация payloads по контексту ошибки - по сути, то же самое, что делает Burp Intruder, только умнее. Но полная автоматизация цепочки «получил описание → модель решила → отправил флаг» - это уже не ваш результат, независимо от того, стоит ли рядом ваш ник.

Рабочий workflow: LLM как ассистент, а не оракул​

📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме

Три-четыре итерации этого цикла по пять минут дают больше, чем один часовой диалог с контекстом на 40 000 токенов. Каждая итерация - ваше решение, усиленное моделью, а не решение модели, запущенное вашими руками.

Чего нельзя делать​

Не скармливайте бинарники напрямую. LLM не работает с raw bytes. Сначала пропустите через Ghidra в headless-режиме или objdump -d, затем дайте модели текстовый вывод.

Не доверяйте «уверенным» ответам в crypto. Модель выдаёт математически неверные рассуждения с абсолютной уверенностью. Каждый промежуточный шаг - проверять вручную. Я взял за правило: если модель пишет «очевидно, что...» в crypto-задаче - это красный флаг.

Не запускайте LLM-агентов без sandbox. Агент с доступом к сети не различает CTF-инфраструктуру и production. OWASP LLM Top 10 описывает этот риск как Excessive Agency (LLM06:2025): LLM с избыточными полномочиями совершает непредусмотренные действия. На CTF это может выйти за рамки scope - и за рамки закона.

Не используйте LLM на тасках, которые прямо тренируют целевой навык. Готовитесь к OSCP и решаете pwn-задачу ради навыка buffer overflow? Модель обнулит весь смысл упражнения. LLM полезен на рутине, но рутина - не то, что проверяют на экзамене.

Нейросети в пентесте: почему правила другие​

ChatGPT для хакинга на CTF и на рабочем пентесте - две принципиально разные истории. На CTF вопрос - честность на CTF и развитие навыков. На пентесте - эффективность и ответственность перед заказчиком.

Автоматизация пентеста с помощью AI уже приносит измеримые результаты. По данным Redfox Cybersecurity, LLM-ассистированные workflow позволяют находить на 30-40% больше уязвимостей за то же время. GPT для поиска уязвимостей работает как рассуждающий анализатор: разбор OpenAPI-спецификаций на IDOR, кластеризация субдоменов по вероятной функции, генерация контекстных payloads вместо слепого перебора.

Fluid Attacks описывает AI-агента CAI, показавшего 41/45 флагов на Neurogrid и 19/20 на HTB AI vs Humans. Цифры впечатляют, но авторы сами подчёркивают: CTF - не enterprise-пентест. Нет бизнес-контекста, неоднозначного scope, ложных срабатываний и необходимости общаться с заказчиком. Они описывают «проблему последних 5%» - задачи, устойчивые к автоматизации, требующие культурного контекста, скрытых зависимостей и интерпретации за пределами рутинного технического исполнения.

Вот что интересно по нескольким исследованиям: эффективность AI-ассистированного пентеста определяется не моделью, а обвязкой. Структурированные деревья атак на базе MITRE ATT&CK повышают результативность даже слабых моделей - Llama-3-8B с направляющим деревом решает 71.8% подзадач против 13.5% без него. CheckMate разделяет workflow на planner, executor и perceptor, улучшая показатели на 20% по сравнению с Claude Code при снижении стоимости на 53% и времени на 54%. APT-Agent добавляет rectifier - модуль проверки имён модулей Metasploit по базе - и контекстный менеджер, что поднимает успешность с 38/70 до 59/70 задач. Без этой инфраструктуры генеративный ИИ в кибербезопасности остаётся ненадёжным инструментом, а не полноценным автоматизированным эксплойтом.

MITRE ATT&CK формализовал использование AI в offensive-операциях через техники Artificial Intelligence (T1588.007, Resource Development) и Exploits (T1588.005, Resource Development). AI red teaming - теперь часть угроз и одновременно инструмент защитников. Разница с CTF: на пентесте вы отвечаете за результат перед клиентом. Если LLM ускорил разведку и вы нашли критическую уязвимость на день раньше - заказчик в выигрыше. На CTF выигрыш получает только ваше эго, а навык остаётся на нуле.

Полтора года я тестирую LLM на CTF-тасках и в рабочих пентестах - и вижу, как комьюнити разделилось на два лагеря, оба из которых ошибаются. Первые считают любое использование AI читерством и гордятся решением всего «по-старинке». Вторые скармливают каждый таск в ChatGPT и уверены, что прокачиваются. Реальность ближе к первым - но не потому, что AI бесполезен, а потому что на текущем уровне развития LLM на CTF работает как множитель. Если навык на нуле - множитель от нуля даёт ноль. Если база есть (понимание стека, опыт отладки, интуиция в reversing) - модель ускоряет рутину и расширяет кругозор.

Проблема в том, что эту базу можно построить только без LLM. Каждый час ручного разбора бинарника в Ghidra формирует нейронные связи, которые потом позволяют мгновенно распознавать паттерны. Каждый час копирования вывода ChatGPT формирует навык копирования - и ничего больше. Я видел людей, которые за год «прошли» 200 тасков на HTB через AI и не могут на собесе объяснить, как работает format string. И видел тех, кто решил 50 руками и получил оффер в red team.

Честность на CTF - не абстрактная этика, а прямая инвестиция в собственную рыночную стоимость. Через год AI станет мощнее, но экзамены и рабочие задачи по-прежнему будут проверять вас, а не вашу модель. Если идёшь к OSCP и нужна подготовка по веб-части - WAPT покрывает это в первой трети курса, и там никакой LLM экзамен за вас не сдаст.
Полезно

Комментарии

0