Исследователи обнаружили кампанию с трояном ChocoPoC, который распространяют через фейковые PoC-репозитории на GitHub под свежие CVE. Один только пакет skytext, связанный с этой схемой, загрузили примерно 2400 раз, в основном на Linux. Для русскоязычных команд это неприятный, но полезный сигнал: теперь опасно не только запускать чужой exploit-код, но и доверять его зависимостям, даже если сам PoC выглядит чистым.
О находке сообщает The Hacker News со ссылкой на совместное исследование YesWeHack и Sekoia, опубликованное 1 июля 2026 года. По их данным, злоумышленники сделали ставку на самую предсказуемую привычку рынка: как только выходит громкая уязвимость, исследователи, пентестеры и red team-команды бегут искать готовые PoC, чтобы быстро проверить гипотезы, воспроизвести баг или собрать детект. В этот момент и подсовывают репозиторий, который внешне похож на обычный Python-проект для эксплуатации CVE.
Схема устроена аккуратнее, чем типичный malware dropper из «смотри, вот exploit.py». Видимый код PoC не вызывает подозрений, а вредоносная часть прячется в цепочке зависимостей. Пользователь клонирует репозиторий, запускает pip install по requirements, подтягивает пакет frint, а тот тянет второй пакет, skytext. Уже внутри skytext лежит небольшой скомпилированный модуль: gradient.so для Linux или gradient.pyd для Windows. Он не шумит заранее и не срабатывает в лобовой песочнице. Модуль сначала проверяет, загружен ли рядом настоящий PoC-файл вроде EXPLOIT_POC.py, и только после этого распаковывает полезную нагрузку и скачивает сам троян. Иными словами, если аналитик прогоняет зависимость отдельно, без полного окружения приманки, заражение может просто не проявиться.
После запуска ChocoPoC работает уже не как одноразовый стилер, а как полноценный RAT. По данным исследователей, он вытаскивает сохраненные пароли, cookies, autofill и историю из Chrome, Brave, Edge и Firefox. Вдобавок собирает текстовые файлы, заметки, локальные базы данных, историю shell-команд, сетевые настройки и список запущенных процессов. Оператор может выполнять shell-команды, запускать произвольный Python-код, выгружать целые директории и даже замедлять активность малвари, чтобы меньше светиться. Управление замаскировано под обычный легитимный трафик: команды читаются из датасета на Mapbox, адрес разрешается через DNS-over-HTTPS, а поверх этого используется domain fronting, так что соединение выглядит как стандартные запросы к API картографического сервиса. Для крупных выгрузок фигурирует отдельный сервер с IP 91.132.163.78.
Кампания бьет не по случайным пользователям, а по людям, у которых на рабочих машинах лежит особенно ценный набор данных: доступы к клиентским стендам, приватные отчеты, черновики по еще нераскрытым багам, SSH-ключи, облачные креды и артефакты активных проектов. YesWeHack и Sekoia нашли как минимум семь поддельных репозиториев, привязанных к заметным уязвимостям: FortiWeb path traversal (CVE-2025-64446), React2Shell (CVE-2025-55182), MongoBleed (CVE-2025-14847), обход аутентификации в PAN-OS (CVE-2026-0257), command injection в Ivanti Sentry (CVE-2026-10520), обход аутентификации в Check Point VPN (CVE-2026-50751) и RCE в Joomla SP Page Builder (CVE-2026-48908). Сами загрузки не доказывают заражение, но пики совпадали по времени с публикацией резонансных CVE, а это уже слишком аккуратное совпадение.
Отдельно неприятно, что речь, похоже, не о разовой импровизации. Исследователи связали текущую волну с более ранней активностью конца 2025 года, когда использовались пакеты slogsec и logcrypt.cryptography с почти тем же кодом. Sekoia с высокой уверенностью считает, что за обеими сериями стоит один оператор: совпадают маркеры управления и инфраструктурные приемы. При этом конкретную группировку пока не назвали. В коде встречаются команды на испанском, а сам имплант содержит мелкие ошибки, из-за чего авторы исследования осторожно предполагают ручную разработку, а не конвейерную генерацию. Это, кстати, неплохое напоминание для тех, кто до сих пор ищет «почерк AI» как универсальный детектор вредоноса: реальная угроза часто выглядит куда более буднично.
Для рынка это продолжение уже знакомого тренда, только с более удачной упаковкой. Раньше исследователей уже ловили на фейковых PoC: в кампании MUT-1244 через такие приманки крали SSH-ключи и облачные учетные данные у red team-специалистов, Lazarus годами маскировался под коллег по цеху и подсовывал вредоносные проекты, а в 2025 году Trend Micro описывала похожие истории вокруг поддельных эксплойтов под CVE-2024-49113 и трояна WebRAT. Разница с ChocoPoC в том, что теперь компрометация прячется в зависимостях, а не в основном файле, который обычно открывают первым. Для разработчиков, AppSec-команд и владельцев внутренних тулчей это уже вопрос не только личной гигиены, но и вторичной supply chain-угрозы: если скомпрометировать исследователя, дальше вредоносный код может доехать до шаблонов, сигнатур и фреймворков, которым доверяют тысячи других специалистов.
Практический вывод довольно жесткий: любые фейковые PoC-репозитории и просто свежие PoC из неизвестных аккаунтов теперь надо считать враждебными по умолчанию, пока не проверена вся цепочка зависимостей, история мейнтейнеров и инфраструктура пакетов. В случае с ChocoPoC одной изоляции в тестовой VM мало, потому что вредонос активируется только рядом с реальным PoC-сценарием. Если в среде уже встречались frint, skytext, slogsec или logcrypt.cryptography, разумный минимум после проверки очевиден: ротация учетных данных и пересборка хоста. Самый неудобный вопрос для отрасли другой: когда охотники за уязвимостями сами становятся целями supply chain-атак, кому тогда доверять в первые часы после выхода очередного громкого CVE?