С помощью Claude Code на GitHub опубликовали тысячи паролей и ключей доступа — часть утечек пропускают даже сканеры безопасности
Источник изображения: сгенерировано Muse
ИИ-агент Claude Code оказался связан с публикацией тысяч конфиденциальных данных разработчиков на GitHub. Компания Apiiro, работающая в сфере безопасности приложений, выявила 2539 действующих секретов в 1994 открытых репозиториях. Среди них были пароли баз данных, API-токены, SSH-учётные данные с правами root и облачные ключи администратора. В 539 из 1105 репозиториев, где обнаружили настоящие секреты, Claude участвовал в создании коммита — записи об изменениях в коде, — содержащего файл с конфиденциальной информацией.
Проблема связана с тем, как Claude Code сохраняет разрешения на выполнение команд. Если разработчик выбирает пункт «Yes, and don’t ask again» («Да, и больше не спрашивать»), агент целиком записывает одобренную команду в файл настроек внутри папки проекта. Вместе с ней туда попадают и содержащиеся в команде пароли или токены доступа. Такой механизм позволяет повторно выполнять операции без дополнительных запросов, но создаёт риск публикации учётных данных вместе с исходным кодом.
Масштаб проблемы оказался значительным: Apiiro обнаружила 104 185 публичных копий таких файлов в 103 617 репозиториях GitHub. В 1994 репозиториях содержались настоящие секреты. Большинство затронутых проектов принадлежали отдельным разработчикам, однако среди пострадавших оказались и 63 организации, включая стартапы, компании-разработчики и крупных поставщиков программного обеспечения. В отчёте упоминаются административный облачный ключ поставщика баз данных, пароль производственной базы Azure PostgreSQL, рабочий токен Square и пароль владельца базы медицинских записей.
Claude Code пытается предотвратить подобные утечки: при создании файла агент автоматически добавляет его в глобальный .gitignore разработчика. В этом списке указаны файлы, которые Git — система контроля версий — не должен включать в коммиты. Однако защита работает не во всех случаях. Она не охватывает репозитории, созданные позднее внутри существующей папки, копии проекта на других компьютерах и файлы, которые разработчик уже успел добавить в репозиторий. Кроме того, глобальное правило не записывается в .gitignore самого проекта и не передаётся другим участникам разработки.
Ещё одна сложность состоит в том, что популярные сканеры, такие как Gitleaks и TruffleHog, могут не распознать эти секреты. Обычно они ищут ключи по характерным признакам: известным префиксам сервисов и длинным случайным последовательностям символов. Однако пароль после PGPASSWORD=, переданный через sshpass -p или указанный после mysql -p, может выглядеть для сканера как обычный текст. Таким же образом незамеченными могут остаться токены в заголовках авторизации команд curl. Поэтому даже включённые средства проверки репозитория не гарантируют выявления утечки.
Проблема затрагивает не только настройки Claude Code. Apiiro обнаружила конфиденциальную информацию в истории переписки с ИИ-агентами, файлах памяти, заметках для передачи задач и развёртывания приложений, а также в настройках автоматического одобрения команд VS Code Copilot. Подобные файлы исследователи находили и в репозиториях Hugging Face и GitLab. Они предупреждают, что такие данные могут оказаться не только на GitHub, но и в опубликованных пакетах, Docker-образах и архивах проектов.
Руководитель разработки Claude Code Борис Черни подтвердил, что Anthropic изучает способы предотвращения таких утечек. По его словам, файл настроек не предназначен для публикации в системе контроля версий, а выявленные случаи связаны с тем, что разработчики вручную создавали его и добавляли в репозитории. Черни также рекомендовал использовать более безопасный режим Auto вместо ручного управления списками разрешённых и запрещённых команд и включать сканирование секретов на GitHub независимо от выбранного ИИ-агента.
Apiiro советует удалить все правила, содержащие секреты в открытом виде, и немедленно сменить каждый скомпрометированный пароль или ключ. Удаления файла недостаточно: его содержимое может оставаться в истории Git, версиях и локальных копиях репозитория. Разработчикам рекомендуют не указывать учётные данные непосредственно в командах, а использовать переменные окружения для доступа к секретам, хранящимся в специализированных менеджерах. Папки claude, cursor, gemini и specstory, как и файлы памяти ИИ-агентов, следует считать потенциальными источниками конфиденциальной информации — наравне с .env.
Источник: iXBT
Индия планирует разработать собственный GPU за два года и снизить зависимость от зарубежных чипов
Anthropic показала, как ИИ самостоятельно создаёт научные модели
Глава Nvidia признался в романе с возможной китайской шпионкой
До 80 часов автономной работы: Bloody представила три беспроводные игровые гарнитуры
Новогодняя ёлка? Нет, Lily58 с подсветкой и кастомным прозрачным корпусом
Apple сделает Siri ИИ-агентом
Акции Nvidia упали на 5% на фоне шпионского скандала вокруг Дженсена Хуанга
Anthropic потратит 3,4 млрд долларов на генераторы для дата-центров