Claude Code очень хочет знать ваши пароли (даже если вы прямо запретили ему их смотреть)

В ИИ-помощнике от Anthropic обнаружена уязвимость, связанная с чтением защищенных файлов.

Разработчики, привыкшие доверять автоматике, могут неприятно удивиться новой находке специалистов. ИИ-помощник Anthropic Claude Code игнорирует файлы, которые не должен даже открывать. Речь идёт о служебных файлах с паролями, токенами и ключами доступа, которые обычно разработчики скрывают от посторонних глаз.

В проектах программисты часто хранят секретные данные в файлах .env. По стандартной практике такие файлы исключаются из репозиториев с помощью .gitignore, чтобы они не попадали в общий доступ. В Claude Code реализован похожий механизм с файлом .claudeignore, который, по заявлению самого помощника, должен запрещать ему читать указанные файлы.

Однако на практике это не работает. Как следует из публикации на Pastebin, Claude Code спокойно читает содержимое .env, даже если этот файл прописан в .claudeignore. В тесте создали каталог, добавили туда .env с тестовыми «секретами», указали в .claudeignore строки «.env» и «.env.*», запустили Claude Code версии 2.1.12 через командную строку и попросили модель прочитать файл. Помощник без проблем вывел его содержимое, хотя по логике доступа к нему быть не должно.

Проблема усугубляется тем, что Claude также игнорирует .gitignore. Даже при включённой настройке «Respect .gitignore in file picker», которая должна учитывать правила игнорирования, модель читает .env и выводит данные, сопровождая это предупреждением о том, что файл содержит учётные данные и его не стоит добавлять в систему контроля версий.