Plugin4Shell: однакова вразливість у всіх програмних агентах

Plugin4Shell: однакова вразливість у всіх програмних агентах 3

Дослідники безпеки зі стартапу Air Security виявили критичну вразливість, яка вражає всі чотири провідні ШІ-агенти для програмування: Claude Code, Codex, Gemini CLI та GitHub Copilot. Атака, названа Plugin4Shell, дозволяє зловмисникам виконувати довільний код на машині розробника без будь-якої взаємодії з користувачем — і, за словами експертів, є першою у своєму роді атакою на ланцюжок постачання екосистеми агентів.

Plugin4Shell: однакова вразливість у всіх програмних агентах 4

Атака не на модель, а на маркетплейс

На відміну від попередніх досліджень безпеки, які здебільшого зосереджувалися на самій моделі чи агенті, Plugin4Shell б’є по довіреним маркетплейсам, де розповсюджуються плагіни для популярних інструментів розробки на базі штучного інтелекту, пише The Register. Саме тому потенційний масштаб ураження настільки великий — такі атаки здатні зачепити мільйони користувачів і пристроїв. За даними Microsoft, Copilot використовують майже 90% компаній зі списку Fortune 500 — і Microsoft виявилася одним із двох вендорів, які досі не випустили патч.

Дослідники Air — Ор Нево, Дор Гранат і Нів Гофман — виявили вразливість ще в травні 2026 року, підготували робочі proof-of-concept експлойти проти всіх чотирьох агентів і повідомили про проблему всім чотирьом вендорам.

Як можна обійти захист SHA-пінінгу

Щоб убезпечити користувачів від атак на ланцюжок постачання, розробники агентів впровадили механізм прив’язки плагінів до незмінного хеша коміту (SHA-пінінг): якщо публічний репозиторій виявляється скомпрометованим, агент має й надалі використовувати перевірений код із тим самим хешем, зафіксованим під час первинної прив’язки, і не завантажувати новий шкідливий код автоматично.

Проблема, яку виявили в Air, полягає в тому, що всі чотири агенти перевіряють, чи витягнуто саме потрібний закріплений коміт, — але не перевіряють, чи справді код, що опинився в системі після цієї перевірки, відповідає тому, що було закріплено спочатку. Зловмисник, який контролює репозиторій плагіна, може підмінити код на шкідливий так, що формально механізм прив’язки до хеша виглядає непорушеним.

«Разом весь ланцюжок доведено від початку до кінця: захоплення репозиторіїв відбувається масово, а Plugin4Shell перемагає механізм, спеціально створений, щоб їх стримувати», — написали дослідники Air, посилаючись на власні попередні дослідження SkillJacking і RepoJacking, у яких вони демонстрували подібні техніки захоплення.

Два сценарії атаки

  • Підміна після перевірки. Атакуючий завантажує на довірений маркетплейс цілком безневинний плагін, той проходить модерацію, а вже після цього його вміст підмінюється на шкідливий код.
  • Захоплення легітимного репозиторію. Зловмисник отримує контроль над репозиторієм справжнього автора плагіна й розповсюджує шкідливу версію на всіх агентів, у яких цей плагін уже встановлений.

Оскільки за замовчуванням і Claude Code, і Codex мають увімкненим автоматичне оновлення плагінів, експлуатація вразливості в цих агентах не вимагає жодних дій від користувача — досить просто мати встановлений плагін із довіреного маркетплейсу, який пройшов перевірку й був закріплений (pinned) саме так, як і передбачає модель безпеки.

Реакція вендорів

Anthropic виправила вразливість у Claude Code версії 2.1.179, OpenAI — у Codex версії 0.146.0. Google відмовилася випускати патч для Gemini CLI, підтримку якого компанія припиняє на користь Antigravity — за словами Google, новий інструмент захищений від атак такого типу.

Представники GitHub заявили, що сервіс не дозволяє користувачам створювати назви гілок чи тегів, схожі на хеші комітів, — це має унеможливити експлуатацію проблеми на власній платформі GitHub. Утім, в Air наголосили, що цього недостатньо, оскільки маркетплейси плагінів можуть розміщуватися і на інших платформах, зокрема Bitbucket, — а це означає, що Microsoft Copilot залишається вразливим, адже підтримує підключення маркетплейсів і з таких джерел.

Про проблему в Copilot Air також повідомила Microsoft ще у червні, однак, за словами дослідників, через великий обсяг звернень про вразливості відповіді від компанії так і не отримала. Redmond також не відповіла на запит The Register щодо коментаря.

Що робити користувачам

Дослідники підкреслюють: оскільки перевірка виконується всередині самого агента, а не на боці маркетплейсу, жоден маркетплейс не може самостійно гарантувати захист від Plugin4Shell. Єдиний повноцінний спосіб закрити вразливість — оновлення на боці вендора; там, де патч уже вийшов, оновлення агента є єдиним повним засобом захисту.

No votes yet.
Please wait...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *