Файл конфигурации, предназначенный для хранения локальных разрешений команд в Claude Code от Anthropic, раскрывает тысячи ключей API, учетных данных баз данных и других секретов, согласно данным GitGuardian.
Фирма по безопасности кода выявила 31 088 уникальных секретов в файлах «.claude/settings.local.json» Claude Code в 23 276 публичных репозиториях GitHub. Из них 5343 все еще были действительны на момент обнаружения GitGuardian. Раскрытые учетные данные включают строки подключения к базам данных, токены облачных провайдеров, пароли SSH, ключи Google API и учетные данные сервисов AU.
«Ежемесячные утечки в settings.local.json достигли пика в 12 535 случаев в апреле 2026 года, затем снизились до 959 к октябрю, и мы пока не знаем, что изменилось», — сказал исследователь GitGuardian Гийом Валадон в сообщении в блоге.
Помимо репозиториев исходного кода, утечка затронула секреты, встроенные в общедоступные образы Docker Hub. Проблема, объяснил Валадон, заключается в том, как Claude Code обрабатывает разрешения команд.
Разрешения команд превращаются в хранилище учетных данных
Claude Code запрашивает у разработчиков разрешение перед выполнением определенных команд оболочки. Когда разработчик выбирает опцию «Да, и больше не спрашивать», инструмент сохраняет правило разрешения в .claude/settings.local.json, файле конфигурации уровня проекта.
Загвоздка в том, что сохраненное правило содержит фактическую строку команды, включая любые встроенные в нее учетные данные.
Например, разработчик, просящий Claude Code взаимодействовать с API, может одобрить команду curl, содержащую ключ API в ее HTTP-заголовке. Затем Claude Code сохраняет всю эту команду как одобренное правило, оставляя учетные данные в файле конфигурации.
Хотя Claude Code автоматически добавляет файл в локальные настройки игнорирования Git, эта защита не обязательно переносится на другие машины или репозитории, сказал Валадон. Разработчики могут случайно закоммитить файл, особенно при работе с разными клонами или если файл уже отслеживается.
GitGuardian обнаружил, что 67% случаев в settings.local.json, для которых удалось установить действительность, были рабочими учетными данными. Идентификаторы баз данных составили самую большую категорию действительных секретов — 2280 уникальных учетных данных, за ними следуют токены облачных провайдеров и токены ИИ.
Также было отмечено, что обычные сканеры секретов могут пропустить значительную часть утечки. Пароли, встроенные в аргументы командной строки и присвоения переменных окружения, часто не имеют узнаваемых форматов, которые ищут правила обнаружения, специфичные для провайдеров.
Утекшие учетные данные на Docker Hub
GitGuardian также изучил общедоступные образы Docker Hub и обнаружил 613 уникальных секретов в файлах настроек Claude Code, 99 из которых были действительны на момент обнаружения.
Учетные данные появились в 543 репозиториях образов и 7625 тегах. По словам Валадона, проблема возникает, когда разработчики используют инструкцию Docker «COPY..» для копирования всей рабочей директории проекта в образ.
В отличие от Git, Docker не автоматически учитывает файл .gitignore репозитория. Следовательно, файл конфигурации Claude Code, исключенный из системы контроля версий, все равно может быть скопирован в образ контейнера, если разработчики явно не исключат его через .dockerignore.
Один действительный Cloudflare токен API появился в 559 тегах образов, а пароль базы данных — в 643 тегах в семи репозиториях образов.
Удаление проблемного файла из репозитория GitHub не помогает учетным данным, уже распространенным через опубликованные образы. Разработчики должны заменить скомпрометированные учетные данные, удалить конфиденциальные файлы конфигурации из контекстов сборки Git и Docker и проверить ранее опубликованные образы на наличие оставшихся секретов.
GitGuardian рекомендует рассматривать файлы конфигурации ИИ-помощников по кодингу как потенциальные носители секретов, сканировать их наряду с обычными файлами окружения и использовать переменные окружения вместо жесткого кодирования учетных данных в командах.
Anthropic не сразу ответил на запрос CSO о комментарии. GitGuardian сообщил, что руководитель Claude Code в Anthropic Борис Черни признал проблему, заявив, что компания изучает ее и рассматривает дополнительные меры защиты, включая встроенное сканирование секретов и автоматический режим.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Shweta Sharma




