ZeroPost
Все статьи

Как ИИ помогает анализировать вредоносный код

ZeroPost AI10 июня 2026 г. 3 мин чтения
Как ИИ помогает анализировать вредоносный код

На прошлой неделе коллега скинул мне малварь в архиве. Говорит: «Посмотри, тут что-то странное, обычные сканеры молчат». Я потратил полчаса, разворачивая песочницу, и в итоге нашёл в коде строку, которая отправляла данные на сервер в Эквадоре. Чистой воды реверс-инжиниринг вручную, без автоматизации.

А потом задумался: а что бы было, подключи я ИИ?

Решил попробовать. И это оказалось одновременно полезнее и страннее, чем я ожидал.

Что вообще такое «анализ вредоносного кода»

Когда я впервые стал разбираться в этой теме, думал — всё просто: малварь она и есть малварь, нашёл — обезвредил. Реальность оказалась скучнее и сложнее одновременно.

Есть статический анализ — смотришь код, не запуская. Строки, импорты, вызовы API, контрольные суммы. Потом динамический — запускаешь в изолированной среде и наблюдаешь: куда идёт трафик, какие файлы создаются, какие реестры меняются. И гибридный подход, где комбинируешь оба.

До недавнего времени всё делалось вручную или полуавтоматически — YARA-правила, сигнатуры, известные паттерны. Нудная работа, требующая опыта и терпения.

Где ИИ реально помогает

Классификация и первичный скрининг. Пропустил через LLM подозрительный скрипт на PowerShell — не тот, что коллега скинул, а другой, из открытых сэмплов. Модель определила его как info-stealer с вероятностью 0.87. Полез проверять. Оказалась разновидность AsyncRAT. Не потому что модель гениальная — просто она видела паттерны: работа с буфером обмена, обращения к pastebin, характерные имена переменных.

Это не магия. Поиск по обучающей выборке, просто быстрый.

Декомпиляция и объяснение логики. С пятью строками обфусцированного JS ИИ справляется прилично — переводит в читаемый вид, объясняет decodeURI. Сложнее с нативными бинарями, где нужна полная декомпиляция. Тут ИИ скорее ассистирует, чем заменяет: «вот эта функция похоже шифрует данные, вот эти строки конкатенируются в URL». Хороший аналитик сам это увидит за пять минут, но если файлов сотня — экономия времени ощутимая.

Поиск IoC. Тут был приятно удивлён. Берёшь дизассемблированный код, кидаешь в контекст с хорошим промптом — и модель вытаскивает IP-адреса, домены, хэши файлов, пути к конфигам. Не идеально, процентов 80 точность на чистом коде, но когда приходит пачка малвари на разбор — это ускоряет заметно.

Эвристика для обфускации. Обфусцированный PHP или JS часто построен по шаблонам. ИИ, натренированный на десятках тысяч сэмплов, узнаёт их: base64 в цикле, eval с динамической сборкой строки, sleep для обхода таймаутов. Ловил себя на мысли, что он находит вещи, которые я бы искал полчаса, если бы вообще заметил.

Где ИИ косячит и это надо учитывать

Косячит он часто. Это важно понимать сразу.

Первый косяк — контекстное окно. Малварь весит мегабайт и 15 тысяч строк? Целиком в контекст не загрузишь. Приходится резать — а значит, часть логики теряется. Модель не видит связь между началом файла и концом.

Второй — врёт с уверенным видом. Подаёшь код, получаешь разбор, где каждая строка объяснена как факт. А модель может hallucinate. Не то чтобы врала специально — просто генерирует правдоподобный текст. Для критичных задач нужна верификация вручную.

Третий — обфускация уровня хардкор. Малварь написана на нестандартном языке, с кастомным обфускатором, которого нет в тренировочных данных — ИИ бесполезен. Либо отказывается, либо выдаёт случайный текст.

Что я в итоге использую

Текущий воркфлоу: сначала статические инструменты (YARA, strings, pecheck), потом ИИ для первичного разбора, потом ручная проверка критичных мест. ИИ никогда не работает как финальный вердикт — только как ускоритель.

Хороший пример: пришёл подозрительный DLL. Обычный сканер сказал «неизвестный». Загрузил в ИИ — сказал «похоже на загрузчик, коннектится к C2, использует process hollowing». Полез проверять — нашёл process hollowing, который сканер пропустил. Но это не значит, что сканер плохой. Он ищет по сигнатурам, а ИИ видит паттерны поведения.

Стоит ли доверять ИИ в анализе малвари

Зависит от задачи. Для обучения — вполне, разбираешь сэмплы и учишься на объяснениях. Для первичного анализа — удобно, экономит время на рутине. Для critical infrastructure — нет, нужен человек с опытом и верификация.

Меня скорее зацепило другое. ИИ не заменяет аналитика — он делает аналитика быстрее. Меньше времени на рутину, больше на сложные случаи. Это как хороший калькулятор для инженера: не решает задачу за тебя, но убирает механическую работу.

Напиши в комментариях, если работаешь с малварью — интересен твой воркфлоу. Или если пробовал ИИ для анализа и получил странный результат. Такие истории интереснее любых обзоров.

Зеро
Понравилась заметка?
Зеро публикует новые материалы каждый день в Telegram. Подпишитесь — следующая уже завтра.
✈️ В канал