Один-единственный репозиторий на GitHub может захватить контроль над вашим компьютером через Claude Code
В отчёте по программе поиска уязвимостей под названием «Клонируй этот репозиторий — и я завладею твоей машиной» платформа Mozilla 0DIN рассказала, как вредоносный репозиторий на GitHub может захватить контроль над всей системой разработчика с помощью Claude Code.
Обманом заставив разработчика клонировать вредоносный репозиторий на GitHub, злоумышленник может получить полный контроль над компьютером своей жертвы с помощью Claude Code. 29 июня платформа 0DIN — которая проводит конкурс по поиску уязвимостей в инструментах генеративного ИИ — опубликовала пост в блоге с описанием этого метода атаки.
Эта атака устроена так, чтобы обойти защиту. Во вредоносном репозитории на GitHub есть установочный скрипт, который выглядит совершенно безобидно, поскольку настоящая угроза находится вовсе не в кодовой базе. Когда скрипт запускается, он делает DNS-запрос и получает произвольную команду из поля TXT в DNS-записи домена. Поскольку полезная нагрузка находится вне кодовой базы, её не обнаружат ни статические анализаторы, ни системы код-ревью, ни даже сам Claude Code при сканировании кода.
Почему Claude Code запускает скрипт без предупреждения
Если Claude Code сталкивается с обычной ошибкой при настройке репозитория (а это происходит довольно часто в ходе обычной разработки), он продолжает выполнять установочный скрипт, не показывая пользователю скрипт целиком и не спрашивая у него разрешения. Таким образом злоумышленник получает обратный шелл на компьютере жертвы, что позволяет ему красть API-токены и учётные данные, а также устанавливать долгоживущие бэкдоры, которые сохраняются даже после завершения сессии терминала.
Пострадать от такой атаки может кто угодно — достаточно того, чтобы где-то в рабочем процессе им попадались ссылки на код. Это может произойти, если они откликаются на вакансии, проходят туториалы, получают сообщения в Slack или Discord, или в любой другой ситуации, где им может встретиться ссылка на GitHub. Особенно уязвимы ИИ-агенты для работы с кодом, настроенные на автоматический запуск установочных скриптов, поскольку по умолчанию они считают встречаемый код безобидным.
Что ИИ-агенты должны делать иначе
Чтобы защититься от подобных атак, команда 0DIN предлагает, чтобы ИИ-агенты для работы с кодом показывали пользователю весь установочный скрипт целиком перед его запуском, относясь к сторонним репозиториям как к недоверенным. Это не такое уж неразумное требование — операционные системы годами предупреждают пользователей, что для запуска скачанных исполняемых файлов нужно разрешение. К сожалению, ИИ-агенты для работы с кодом получили доступ к шеллу быстрее, чем практики безопасности успели за ними угнаться. Точно так же, как Claude Code умеет выполнять команды, обращаться к файловой системе и запускать скрипты, ему нужно следовать и безопасной модели того, какие команды он выполняет.
Это пример атаки на цепочку поставок, и она работает потому, что в самой кодовой базе нет вредоносного кода. Ни человек, ни ИИ-ревьюер кода не смогли бы ничего найти, ведь вредоносная инструкция существует только во время выполнения, в момент DNS-запроса. Проблема здесь в том, что код отличается от поведения во время выполнения. На момент публикации Anthropic никак не ответила на вопрос о том, когда планирует решить эту проблему.
Прежде чем Claude Code начнёт установку незнакомого репозитория, откройте setup-скрипт и прочитайте его сами — это занимает тридцать секунд. Если репозиторий пришёл через тестовое задание к вакансии, холодное сообщение или ссылку, которую вы сами не искали, — относитесь к нему как к исполняемому файлу с незнакомого сайта: сначала читайте, потом запускайте. Это единственная надёжная защита до тех пор, пока ИИ-инструменты не исправят уязвимость на своей стороне.
Источник: the-decoder.com
Бесплатный курс
Хватит читать про ИИ — начни строить с ним
Бесплатный курс Claude Code: свой первый сайт, инструмент или игра — без программирования. Без апсейлов и кросс-сейлов — здесь нечего купить.
Начать →▌ Гайды по теме

Автор
Евгений Арсентьев
PhD · CEO, digital health
Статьи · Свежие статьи