Уязвимость в песочнице Claude Code позволяет злоумышленникам обходить защиту и похищать данные

Claude

В инструменте разработки на базе искусственного интеллекта Claude Code от компании Anthropic обнаружена критическая уязвимость, которая ставит под угрозу данные пользователей. Проблема затрагивает механизм изоляции под названием "песочница" (безопасная среда для выполнения кода), который предназначен для блокировки несанкционированного доступа к внешним ресурсам. Выяснилось, что злоумышленник может обойти эти ограничения и незаметно выгрузить конфиденциальную информацию.

Уязвимость CVE-2025-66479

Эту уязвимость выявил исследователь безопасности Аонан Гуань. Примечательно, что это уже второй случай полного обхода песочницы за последние полгода. Данный факт вызывает серьёзные вопросы о надёжности встроенных средств защиты в платформе, которая активно используется для написания и анализа кода.

Проблема затрагивает версии Claude Code с 2.0.24 по 2.1.89, то есть около ста тридцати сборок, выпускавшихся в течение нескольких месяцев. В основе уязвимости лежит техника, использующая протокол SOCKS5 (протокол для передачи трафика через прокси-сервер, поддерживающий различные виды аутентификации). А именно - инъекция нулевого байта в имя хоста. Эта техника позволяет вредоносному коду, запущенному внутри песочницы, обращаться к заблокированным внешним узлам.

В штатной конфигурации безопасности администраторы задают списки разрешённых доменов - так называемые "белые списки". Например, правило может разрешать доступ только к ресурсам вида *.google.com. Однако из-за уязвимости атакующий может сформировать запрос к адресу, который выглядит следующим образом: attacker.com\x00.google.com. Нулевой байт (\x00) - это специальный символ, обозначающий конец строки во многих языках программирования и системных функциях.

Суть атаки кроется в так называемой проблеме "несоответствия парсера". Дело в том, что два компонента системы интерпретируют один и тот же адрес по-разному. Фильтр песочницы, работающий на языке JavaScript, проверяет имя хоста с помощью метода endsWith. То есть он просто ищет в конце адреса подстроку ".google.com" и, находя её, считает запрос разрешённым. В то же время операционная система, используя системную библиотеку для разрешения имён (libc getaddrinfo), обрезает строку на нулевом байте. Для неё запрос выглядит как attacker.com. Возникает разрыв: песочница пропускает трафик, полагая, что он идёт в разрешённую зону, а на самом деле соединение устанавливается с сервером злоумышленника. Это и позволяет совершать несанкционированные исходящие подключения.

Успешная эксплуатация уязвимости даёт возможность злоумышленнику обойти контроль исходящего трафика и выгрузить любые данные, доступные внутри песочницы. В зоне риска находятся ключи доступа к API (программные интерфейсы для интеграции с другими сервисами) и токены аутентификации. Кроме того, под угрозой оказываются переменные окружения, конфигурационные файлы, исходный код и внутренние данные проектов. Особую опасность представляет возможность получения доступа к облачным метаданным и внутренним сервисам компании.

Риск значительно возрастает, если комбинировать эту уязвимость с атаками типа "инъекция подсказок" (prompt injection). Например, вредоносная инструкция, спрятанная в комментарии к коду на GitHub или в файле документации, может обмануть ИИ-агент Claude Code и заставить его выполнить код злоумышленника. После этого обход песочницы позволяет незаметно похищать данные через SOCKS5-соединения. Такой трафик сложнее отследить стандартными средствами мониторинга, которые обычно ориентированы на обычные HTTP-запросы.

Стоит отметить, что это не первая серьёзная проблема, связанная с песочницей Claude Code. Ранее, в истории с уязвимостью CVE-2025-66479, выяснилось, что пустой список разрешённых доменов (allowedDomains: []) трактовался системой не как "запретить всё", а как "разрешить всё". Обе ошибки приводили к полному обходу изоляции.

Компания Anthropic устранила проблему с инъекцией нулевого байта в версии 2.1.90, выпущенной первого апреля 2026 года. Исправление вводит более строгую проверку имён хостов, которая отбрасывает некорректные данные, включая нулевые байты и недопустимые DNS-символы. Однако, как отмечают эксперты, публичного уведомления о проблеме безопасности, назначения идентификатора CVE (общепринятый номер уязвимости) или упоминания в журнале изменений к выпуску не было. Пользователи оставались в неведении о риске, если только они самостоятельно не анализировали код или не следили за независимыми исследованиями. Такая непрозрачность вызывает особую тревогу, учитывая продолжительность существования уязвимости и её серьёзность.

Специалистам по безопасности рекомендуется немедленно обновить Claude Code до версии 2.1.90 или более новой. Кроме того, необходимо провести аудит журналов исходящих сетевых подключений на предмет подозрительной активности, связанной с SOCKS5-трафиком. Важно также сменить учётные данные, которые могли оказаться скомпрометированы. Главный же вывод из этой истории заключается в том, что нельзя полагаться исключительно на встроенные механизмы изоляции прикладного уровня. Повторяющиеся сбои песочницы Claude Code указывают на системную проблему в безопасности инструментов на базе искусственного интеллекта. Встроенные средства защиты, особенно те, что отвечают за сетевые границы, должны дополняться внешними механизмами контроля, которые остаются работоспособными даже в случае компрометации самого приложения. По мере того как AI-инструменты для разработки всё глубже интегрируются в чувствительные рабочие процессы, обеспечение прозрачности и надёжности практик безопасности становится критически важным для предотвращения подобных инцидентов в будущем.

Ссылки

Комментарии: 0