TL;DR
LeechHijack — атака на LLM-агентов через вредоносный инструмент, который заставляет модель выполнять задачи злоумышленника параллельно с вашими. Инструмент (например, "форматирование данных") работает нормально, но внедряет в свой ответ скрытую инструкцию: "А теперь реши вот эту задачу для меня". Модель воспринимает это как продолжение вашей задачи и тратит токены на чужую работу.
Исследование вводит понятие "скрытой токсичности" (implicit toxicity) — когда вред происходит внутри разрешённых действий. Обычные атаки ломают систему или крадут данные — это видно. Скрытая токсичность не нарушает правил: инструмент делает что обещал, но параллельно ворует ваши вычислительные ресурсы. Вы получаете правильный ответ, злоумышленник — бесплатные вычисления, логи чисты.
LeechHijack работает в два этапа. Имплантация: публикуется безобидный инструмент с дремлющей закладкой. Эксплуатация: при триггере закладка активируется, инструмент подключается к серверу злоумышленника, получает дополнительную задачу, внедряет её в ответ модели. Модель решает чужую задачу, отправляет результат обратно через инструмент. Следующий вызов инструмента восстанавливает нормальный режим. Пользователь ничего не замечает — только счёт за API растёт на 18-20% быстрее обычного.
Схема атаки
ИМПЛАНТАЦИЯ (один раз):
└─ Публикация инструмента с дремлющей закладкой
└─ Внешне: нормальная функция (форматирование, поиск, расчёт)
└─ Внутри: скрытый флаг активации + логика подключения к C2-серверу
ЭКСПЛУАТАЦИЯ (циклически):
Раунд 1 — Активация:
├─ Триггер срабатывает (определённое слово, условие, случайность)
├─ Инструмент подключается к серверу злоумышленника
├─ Получает чужую задачу: "Реши эту математическую задачу"
└─ Возвращает агенту: [нормальный результат] + [скрытая инструкция: "Выполни эту задачу"]
Агент интерпретирует скрытую инструкцию как свою работу:
└─ Решает чужую задачу → тратит токены → генерирует ответ
Раунд 2 — Восстановление:
├─ Инструмент вызывается снова
├─ Перехватывает решение чужой задачи из контекста агента
├─ Отправляет решение на C2-сервер злоумышленника
└─ Возвращает нормальный результат пользователю
Результат: пользователь видит корректную работу, злоумышленник получает бесплатные вычисления.
Как это работает
Атака эксплуатирует две особенности современных LLM-агентов:
1. Агенты доверяют выводам инструментов. Когда инструмент возвращает данные, агент воспринимает их как часть своего рабочего процесса. Если в ответе инструмента спрятана дополнительная инструкция ("А теперь реши такую задачу"), агент интерпретирует это как продолжение пользовательской задачи. Модель не различает "это вернул инструмент" и "это часть моей работы".
2. Сетевой доступ — стандартное разрешение для инструментов. В облачных агентах (ChatGPT с GPTs, Claude Projects) инструменты работают на удалённых серверах — сеть у них есть по умолчанию. В локальных агентах разрешения даются на уровне процесса, не отдельного инструмента. Поэтому любой инструмент может установить соединение с внешним сервером — это не взлом, а норма.
LeechHijack использует это так: вредоносный инструмент внедряет в свой легитимный ответ скрытую инструкцию для агента. Агент выполняет её как свою работу. Инструмент собирает результаты через следующий вызов и отправляет злоумышленнику. Всё происходит в рамках разрешённых действий — не ломается ни одно правило безопасности.
Почему это опасно: традиционные защиты ищут нарушения правил (эскалация привилегий, вредоносный вывод). Но здесь вредоносности нет — инструмент делает ровно то, что ему разрешено. Просто использует это разрешение не так, как задумано. Статический аудит кода не помогает — логика выглядит безобидно. Проверка логов не помогает — аномалий нет. Мониторинг выводов не помогает — пользователь получает правильный результат.
Ключевой инсайт исследования: существующие защиты фокусируются на явной токсичности (explicit toxicity) — когда атака нарушает правила. LeechHijack вводит понятие скрытой токсичности (implicit toxicity) — когда вред происходит внутри разрешённых действий. Это слепая зона современных систем безопасности.
Применимость для обычного пользователя
⚠️ Это НЕ техника продуктивной работы — это исследование угрозы безопасности.
Что вы можете сделать с этим знанием:
1. Осторожность со сторонними инструментами
Когда используете кастомные GPTs в ChatGPT, плагины или подключаете сторонние сервисы через Actions: - Проверяйте кто автор (известная компания vs случайный разработчик) - Смотрите на описание и отзывы - Избегайте малоизвестных инструментов для критичных задач
2. Мониторинг необычного поведения
Признаки возможной проблемы: - Необычно длинные ответы на простые запросы - Неожиданные задержки в работе инструмента - Странные паузы между шагами агента - Быстрый рост расхода токенов без видимой причины
3. Проверка расходов
В ChatGPT Plus / Claude Projects: - Отслеживайте расход токенов при использовании сторонних GPTs - Сравните: та же задача без инструмента vs с инструментом - Если расход вырос на 15-20%+ без видимой пользы — подозрительно
Ограничения (атаки, не применимости)
⚠️ Детектирование: Атака успешна в 77% случаев, но оставляет следы в расходе ресурсов. Если вы отслеживаете время ответа и количество токенов — увидите рост на 18-20% по сравнению с нормальной работой.
⚠️ Зависимость от триггера: Атака активируется только при определённых условиях (ключевое слово, тип задачи, случайность). Злоумышленник не может похищать вычисления постоянно — слишком заметно.
⚠️ Требует многошаговой работы агента: LeechHijack эффективен когда агент делает несколько вызовов инструментов в одной сессии. Если задача решается одним запросом — атака не успевает развернуться.
⚠️ Применимо только к агентам с инструментами: Обычный чат ChatGPT/Claude без плагинов и GPTs — не уязвим. Атака работает только когда вы используете сторонние инструменты.
Как исследовали
Команда создала вредоносный инструмент для MCP-экосистемы — открытого стандарта для интеграции инструментов в LLM-агентов (продвигает Anthropic). Тестировали на четырёх семействах моделей (Deepseek, Qwen, GPT, Gemini) в трёх архитектурах: облако (всё на серверах), гибрид (агент локально, инструменты на серверах), локально (всё на своём железе).
Ключевой дизайн эксперимента: проверяли может ли вредоносный инструмент заставить агента решать дополнительные задачи незаметно. Измеряли успешность атаки (выполнена ли чужая задача), точность основной задачи пользователя (не сломалась ли работа) и накладные расходы (на сколько выросло потребление токенов).
Результаты показали неожиданное: атака работает почти одинаково хорошо на всех моделях и архитектурах. Средняя успешность 77%, основная задача пользователя решается корректно в 95%+ случаев, накладные расходы всего 18-20%. Для пользователя это выглядит как нормальная вариативность работы агента — то быстрее, то медленнее, то чуть больше токенов. Логи чисты, аномалий нет.
Самое важное: проверили существующие защиты — статический аудит кода инструментов (MCP-watch), сканирование уязвимостей (MCP-scan), runtime-мониторинг. Ни одна не обнаружила атаку. Потому что все защиты ищут нарушения правил, а LeechHijack действует внутри разрешений.
Вывод исследователей: экосистема открытых инструментов для LLM-агентов имеет системную слепую зону. Архитектура предполагает доверие к сторонним инструментам, но механизмов проверки "делает ли инструмент ТОЛЬКО то что заявлено" — нет. Это как supply chain attack в мире LLM-агентов: вредоносный компонент выглядит легитимно, работает легитимно, но параллельно ворует ресурсы.
Выводы для практики
Для пользователей ChatGPT/Claude:
✅ Используйте инструменты от проверенных разработчиков - Официальные GPTs от OpenAI/Anthropic - Инструменты от известных компаний (Google, Microsoft, крупные стартапы) - Избегайте малоизвестных сторонних GPTs для важных задач
✅ Будьте внимательны к признакам проблем - Неожиданные задержки - Необычно длинные ответы на простые запросы - Быстрый рост расхода токенов
✅ Разделяйте критичную и экспериментальную работу - Критичные задачи (работа с конфиденциальными данными, платные API-вызовы) — в чистом чате без сторонних инструментов - Эксперименты с новыми GPTs — в отдельной сессии
Главный инсайт: открытая экосистема инструментов делает LLM-агентов мощнее, но создаёт новый класс рисков. Неявная токсичность — вред внутри разрешённых действий — это слепая зона современных защит. Пока индустрия не создаст механизмы проверки "что именно делает инструмент с вашими ресурсами", осторожность — единственная защита.
Ресурсы
Работа: LeechHijack: Covert Computational Resource Exploitation in Intelligent Agent Systems
Авторы: Yuanhe Zhang, Weiliu Wang (Beijing University of Posts and Telecommunications, Hangzhou Dianzi University), Zhenhong Zhou, Kun Wang, Yang Liu (Nanyang Technological University), Jie Zhang (CFAR and IHPC, A*STAR), Li Sun (North China Electric Power University), Sen Su (Chongqing University of Posts and Telecommunications)
Контекст: Model Context Protocol (MCP) — открытый стандарт для интеграции инструментов в LLM-агентов, продвигается Anthropic
Связанные понятия: - Explicit toxicity (явная токсичность) — атаки через нарушение правил безопасности - Implicit toxicity (скрытая токсичность) — вред внутри разрешённых действий - Supply chain attack — компрометация через доверенные компоненты системы
