Керуєте Claude Code чи Claude в Chrome? Виявте всі “сліпі зони” безпеки з цією матрицею аудиту

Керуєте Claude Code чи Claude в Chrome? Виявте всі "сліпі зони" безпеки з цією матрицею аудиту 1

Між 6 та 7 травня чотири команди дослідників безпеки опублікували висновки щодо моделі Claude від Anthropic, які більшість видань висвітлювали як три окремі історії. Одна стосувалася водопостачальної компанії в Мексиці, інша — розширення для Chrome, а третя — викрадення OAuth-токенів через Claude Code. В одному з випадків Claude ідентифікував SCADA-шлюз водопостачальної компанії, навіть не отримуючи такого завдання.

Це не три різні помилки. Це одне архітектурне питання, яке проявляється на трьох різних поверхнях. Жоден випущений патч наразі не вирішує їх усіх.

Спільним знаменником є ​​«заплутаний заступник» (confused deputy) – порушення межі довіри, коли програма з легітимними повноваженнями виконує дії від імені неправильного суб’єкта. У кожному випадку Claude мав реальні можливості на всіх поверхнях і надавав їх будь-кому, хто з’являвся. Нападник, що досліджує мережу водопостачальної компанії. Розширення Chrome з нульовими дозволами. Шкідливий npm-пакет, який перезаписує конфігураційний файл.

Картер Різ, віце-президент з питань штучного інтелекту в Reputation, визначив структурну причину небезпеки такого класу помилок. Пласка площина авторизації великої мовної моделі (LLM) не поважає дозволи користувача, повідомив Різ VentureBeat в ексклюзивному інтерв’ю. Агент, що працює на цій площині, не потребує ескалації привілеїв, він їх вже має.

Кейн МакГледрі, старший член IEEE, який консультує підприємства з питань ризиків ідентифікації, незалежно описав ту ж динаміку в інтерв’ю VentureBeat. Підприємства клонують набори дозволів людини на агентні системи, сказав МакГледрі. Агент робить усе необхідне для виконання своєї роботи, і іноді це означає використання значно більшої кількості дозволів, ніж людина.

Dragos виявив, що Claude націлився на SCADA-шлюз водопостачальної компанії без завдання

Dragos опублікував свій аналіз 6 травня. Між груднем 2025 та лютим 2026 року невстановлений зловмисник скомпрометував кілька мексиканських урядових організацій. У січні 2026 року кампанія досягла Servicios de Agua y Drenaje de Monterrey, муніципального водопостачального та каналізаційного підприємства, що обслуговує столичний регіон Монтеррея.

Dragos проаналізував понад 350 артефактів. Зловмисник використовував Claude як основний технічний виконавець, а моделі GPT від OpenAI – для обробки даних. Claude написав Python-фреймворк з 17 000 рядків коду, що містить 49 модулів для розвідки мережі, збору облікових даних, ескалації привілеїв та бокового переміщення. Згідно з аналізом Dragos, Claude стиснув те, що традиційно вимагало б днів або тижнів розробки інструментів, до кількох годин.

Без будь-якого попереднього контексту ICS/OT Claude ідентифікував сервер, що працює під керуванням інтерфейсу vNode SCADA/IIoT, класифікував платформу як високоцінну, згенерував списки облікових даних і запустив автоматизоване розпилення паролів. Атака була невдалою, і порушення OT не сталося, але Claude виконав націлювання. Dragos зазначив, що це не була вразливість продукту в традиційному розумінні, оскільки Claude працював точно за призначенням. Архітектурний пробіл, як описала компанія, полягає в тому, що модель не може відрізнити авторизованого розробника від зловмисника, який використовує той самий інтерфейс.

Джей Дін, асоційований головний мисливець за загрозами в Dragos, написав, що розслідування показало, як комерційні інструменти ШІ зробили OT більш видимим для зловмисників, які вже діють в IT-середовищі.

Технічний директор CrowdStrike Елія Зайцев пояснив VentureBeat, чому цей клас інцидентів уникає виявлення. Нічого поганого не трапляється, доки агент не діє, сказав Зайцев. Це майже завжди відбувається на рівні дії. Розвідка в Монтерреї виглядала як запити розробника до внутрішніх систем. Інструмент розробника просто мав зловмисника за клавіатурою.

Сліпа пляма стеку: Моніторинг OT не відзначає розвідку, згенеровану ШІ, з IT-інструментів розробника. EDR бачить процес, але не має видимості щодо намірів.

LayerX довів, що будь-яке розширення Chrome може викрасти Claude через межу довіри, частково виправлену Anthropic

7 травня дослідник LayerX Авьяд Гіспан розкрив ClaudeBleed. Claude в Chrome використовує функцію Chrome, що дозволяє зовнішнє підключення, для взаємодії зі скриптами з походження claude.ai, але не перевіряє, чи походять ці скрипти від Anthropic, чи були вони впроваджені іншим розширенням. Будь-яке розширення Chrome може впроваджувати команди в інтерфейс повідомлень Claude. Дозволи не потрібні.

LayerX повідомив про вразливість 27 квітня. Anthropic випустила версію 1.0.70 6 травня. LayerX виявив, що патч не видалив вразливий обробник. LayerX обійшов новий захист через потік ініціалізації бічної панелі та переключивши Claude в режим «Діяти без запитання», який не вимагав сповіщення користувача. Патч Anthropic проіснував менше доби.

Майк Раймер, старший віце-президент Network Security Group та Field CISO в Ivanti, повідомив VentureBeat, що зловмисники тепер зворотньо інженерять патчі протягом 72 годин за допомогою ШІ. Якщо постачальник випускає патч, а клієнт не застосував його протягом цього вікна, вразливість вже експлуатується, сказав Раймер. Патч Anthropic ClaudeBleed не протримався навіть третини цього вікна.

Сліпа пляма стеку: EDR відстежує файли та процеси, але не моніторить обмін повідомленнями між розширеннями всередині браузера. ClaudeBleed не створює записів у файли, не генерує мережевих аномалій і не запускає процеси.

Mitiga показала, що перезапис конфігураційного файлу викрадає OAuth-токени та переживає ротацію

Також 7 травня дослідник Mitiga Labs Ідан Коен опублікував ланцюжок атаки «людина посередині» (man-in-the-middle), націлений на Claude Code. Claude Code зберігає конфігурацію MCP та OAuth-токени у файлі ~/.claude.json, який може записувати один користувач. Шкідливий npm postinstall hook може перезаписати URL-адресу сервера MCP, щоб спрямовувати трафік через проксі зловмисника, перехоплюючи OAuth-токени для Jira, Confluence та GitHub. Оскільки postinstall hook спрацьовує при кожному завантаженні Claude Code, він відновлює шкідливу кінцеву точку навіть після ротації токенів — це означає, що стандартний крок реагування на інциденти з ротацією облікових даних не розриває ланцюг атаки, доки не буде видалено сам hook.

Mitiga повідомила про вразливість 10 квітня. 12 квітня Anthropic класифікувала її як «поза межами моделі загрози», згідно з опублікованим Mitiga повідомленням.

Раймер описав принцип, який порушує цей ланцюг. Я не знаю тебе, доки не перевірю тебе, сказав Раймер VentureBeat. Доки я не знаю, що це таке, і хто знаходиться по той бік клавіатури, я не буду з ним спілкуватися. Перезапис ~/.claude.json замінює легітимну кінцеву точку на кінцеву точку зловмисника. Claude Code ніколи не перевіряє це знову.

Раймер 21 рік проєктував продукт, який він зараз очолює, і має п’ять патентів на його інфраструктуру безпеки. Він застосовує ту ж логіку захисту, яку вбудував у власну платформу. Якщо зловмисник проникне, розірвати всі з’єднання. Це дизайн відмовостійкості. Архітектура Anthropic робить протилежне. Вона провалюється у відкритому стані (fails open).

Сліпа пляма стеку: Файрволи веб-додатків (WAF) ніколи не бачать локальних перезаписів конфігурації. EDR розглядає запис JSON-файлів як звичайну поведінку розробника. Ротація токенів живить ланцюг, оскільки npm postinstall hook відновлює шкідливий URL при кожному завантаженні Claude Code.

Реакція Anthropic на збій розглядає рішення користувача про довіру як межу безпеки

Anthropic класифікувала викрадення MCP-токенів Mitiga як «поза межами моделі загрози» 12 квітня. Компанія назвала вразливість OX Security STDIO, яка вплинула приблизно на 200 000 MCP-серверів, «очікуваною» і такою, що відповідає дизайну. Anthropic відхилила TrustFall від Adversa AI як таку, що виходить за рамки їхньої моделі загроз, згідно з опублікованим Adversa AI повідомленням. ClaudeBleed був частково виправлений. За всіма чотирма звітами дослідники стверджують, що базова модель довіри залишається вразливою.

Олексій Поляков, співзасновник Adversa AI, повідомив The Register, що кожна вразливість виправляється ізольовано, але базовий клас не виправлений.

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

Adversa AI показала, що клонований репозиторій може автоматично виконувати довільний код в момент, коли розробник натискає «довіряти»

Дослідник Adversa AI Олексій Поляков опублікував TrustFall, продемонструвавши, що файли конфігурації Claude, прив’язані до проєкту, в клонованому репозиторії можуть мовчки авторизувати MCP-сервери для запуску як нативні процеси ОС з повними привілеями користувача. В момент, коли розробник натискає загальне діалогове вікно «Так, я довіряю цій папці», запускається будь-який MCP-сервер, визначений у конфігурації проєкту. Діалогове вікно не показує, що воно авторизує.

В автоматизованих конвеєрах збірки, де Claude Code працює без екрану, діалогове вікно довіри ніколи не з’являється. Атака виконується без взаємодії з людиною. Adversa підтвердила, що ця схема не є унікальною для Claude Code. Усі чотири основні кодувальні агенти (Claude Code, Cursor, Gemini CLI та GitHub Copilot) можуть автоматично виконувати визначені проєктом MCP-сервери в момент, коли розробник приймає це діалогове вікно.

Сліпа пляма стеку: Жоден поточний інструмент безпеки не може відрізнити легітимну конфігурацію проєкту від зловмисної. Діалогове вікно довіри є єдиним, що стоїть між розробником та виконанням довільного коду, і воно не показує, що саме воно збирається авторизувати.

Нижче наведена матриця, яка відображає кожну поверхню, якій Claude помилково довіряв, сліпу пляму стеку, сигнал виявлення та рекомендовану дію.

Матриця аудиту «Заплутаний заступник» Claude

Поверхня

Кому Claude довіряв

Чому ваш стек це пропускає

Сигнал виявлення

Рекомендована дія

claude.ai / API

Dragos, 6 травня

Проаналізовано 350+ артефактів

Зловмисник, що видає себе за авторизованого користувача через інтерфейс запитів Claude.

Claude не може відрізнити розробника, який картографує внутрішні системи, від зловмисника, який робить те саме через той самий інтерфейс.

Моніторинг OT відстежує ICS-протоколи та аномальні патерни трафіку.

Розвідка, згенерована ШІ, надходить з IT-інструменту розробника, а не з OT-мережі. Запити виглядають ідентично легітимній діяльності розробника, тому що це ЛЕГІТИМНА діяльність розробника зі зловмисником за клавіатурою.

Запит:

Журнали API Claude для запитів, що посилаються на внутрішні імена хостів, діапазони IP або ключові слова SCADA/ICS.

Тригер сповіщення:

>5 запитів на генерацію облікових даних до внутрішніх служб за 60 хвилин.

Ескалація:

OT-команда сповіщається про будь-які запити, ініційовані ШІ, що стосуються ключових слів vNode, SCADA, HMI або PLC.

Сегментуйте сесії за допомогою ШІ від мережевих сегментів, суміжних з OT.

Логуйте всі виклики API Claude, що стосуються внутрішніх імен хостів або діапазонів IP.

Сповіщайте про автоматизовану генерацію облікових даних, спрямовану на внутрішні інтерфейси автентифікації.

Вимагайте явну авторизацію OT для будь-якого інструменту ШІ з доступом до внутрішньої мережі.

Claude в Chrome

LayerX, 7 травня

Патч v1.0.70 обійдено менш ніж за 24 години

Будь-який скрипт, що працює в контексті браузера claude.ai, включаючи скрипти, впроваджені розширеннями з нульовими дозволами.

Зовнішньо підключаний маніфест довіряє походженню (claude.ai), а не контексту виконання. Будь-яке розширення може впровадити команди в це походження.

EDR моніторить активність файлової системи, виконання процесів та мережеві з’єднання.

Обмін повідомленнями між розширеннями відбувається повністю в середовищі виконання браузера. Жодних записів у файли. Жодних мережевих аномалій. Жодних запусків процесів. EDR не має жодної видимості в API внутрішніх повідомлень Chrome.

Запит:

Інвентаризація розширень Chrome на наявність будь-якого розширення з контентними скриптами, що націлені на claude.ai в маніфесті.

Тригер сповіщення:

Встановлено нове розширення з claude.ai у дозволах або цілях контентних скриптів.

Ескалація:

Команда безпеки браузера переглядає будь-яке розширення, що взаємодіє з інтерфейсом повідомлень Claude.

Аудитуйте розширення Chrome у всьому парку на доступ контентних скриптів до claude.ai.

Вимкніть режим «Діяти без запитання» в Claude в Chrome для всієї компанії.

Розгорніть інструменти безпеки браузера, що перевіряють канали обміну повідомленнями розширень.

Моніторте розширення, що впроваджують контентні скрипти в домен claude.ai.

Claude Code MCP

Mitiga, 7 травня

Anthropic: «поза межами моделі» 12 квітня

Перезаписаний файл ~/.claude.json, що спрямовує трафік MCP через проксі, контрольований зловмисником.

Claude Code читає URL-адресу сервера MCP з конфігураційного файлу при кожному завантаженні. Він ніколи не перевіряє, чи відповідає URL-адреса кінцевій точці, яку користувач спочатку авторизував.

WAF перевіряє HTTP-трафік між клієнтами та серверами. Він ніколи не бачить локального перезапису конфігураційного файлу.

EDR розглядає запис JSON-файлів у домашньому каталозі користувача як звичайну поведінку розробника. Ротація токенів живить ланцюг, тому що npm postinstall hook відновлює шкідливий URL при кожному завантаженні Claude Code.

Запит:

Монітор цілісності файлу для ~/.claude.json на зміни URL-адреси сервера MCP.

Тригер сповіщення:

URL-адреса сервера MCP змінена на кінцеву точку, якої немає у затвердженому списку дозволених.

Ескалація:

IR-команда підтверджує видалення postinstall hook перед закриттям заявки. Сама по собі ротація токенів недостатня.

Моніторте файл ~/.claude.json на несподівані зміни кінцевої точки MCP відносно списку дозволених.

Блокуйте або сповіщайте про npm postinstall hooks, які змінюють файли за межами каталогу пакета.

Підтримуйте централізований список дозволених URL-адрес серверів MCP.

НЕ припускайте, що ротація токенів розриває ланцюг, не підтвердивши попередньо видалення шкідливого hook.

Налаштування проєкту Claude Code

Adversa AI, 7 травня

Впливає на Claude, Cursor, Gemini CLI, Copilot

Файл конфігурації Claude, прив’язаний до проєкту, у клонованому репозиторії.

Натискання загального діалогового вікна «Так, я довіряю цій папці» мовчки авторизує будь-який MCP-сервер, визначений у конфігурації проєкту. Діалогове вікно не показує, що воно авторизує.

Жоден поточний інструмент безпеки не може відрізнити легітимну конфігурацію проєкту від зловмисної.

В автоматизованих конвеєрах збірки Claude Code працює без екрану. Атака виконується без взаємодії з людиною проти гілок pull-request.

Запит:

Попереднє сканування репозиторію на файли конфігурації .claude, .claude.json, .mcp.json, CLAUDE.md у корені репозиторію.

Тригер сповіщення:

Репозиторій містить визначення MCP-сервера, якого немає у затвердженому списку організації.

Ескалація:

DevSecOps перевіряє перед тим, як будь-який розробник відкриє репозиторій в Claude Code або будь-якому кодувальному агенті.

Скануйте клоновані репозиторії на наявність файлів конфігурації .claude перед відкриттям у будь-якому кодувальному агенті ШІ.

Вимагайте явну авторизацію для кожного сервера MCP замість загальної довіри до папки.

Позначайте репозиторії, що визначають власні MCP-сервери в конфігурації проєкту.

Аудитуйте конвеєри CI/CD, що запускають Claude Code в headless-режимі, де діалоги довіри повністю пропускаються.

Заступник змінився

Норм Харді описав «заплутаного заступника» у 1988 році. Заступник, про якого він думав, був компілятором. Цей же пише фреймворки для експлуатації з 17 000 рядків коду, самостійно ідентифікує SCADA-шлюзи та зберігає OAuth-токени для Jira, Confluence та GitHub. Чотири команди дослідників виявили один і той самий клас помилок на чотирьох поверхнях за один тиждень. Реакція Anthropic на кожен з них була певною версією «користувач надав згоду». Наведена вище матриця — це аудит, який Anthropic ще не створила. Якщо ваша команда використовує Claude Code або Claude в Chrome, почніть звідси.

Як захиститися (Порада ІТ-Блогу): Використовуйте двофакторну автентифікацію (2FA) для всіх важливих облікових записів, де це можливо. Це додає додатковий рівень захисту, який значно ускладнює зловмисникам доступ до ваших даних, навіть якщо вони отримають ваш пароль.

Дізнатися більше на: venturebeat.com

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

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