Найзручніша кнопка в Claude Code від Anthropic — «Так, і більше не питай» — тихо перетворилася на машину для витоку облікових даних, згідно з новим дослідженням фірми безпеки додатків Apiiro. Коли розробники схвалюють команду, яка містить секрет, Клод Код зберігає цю точну команду, включаючи секрет, у локальний файл налаштувань, який часто потрапляє в загальнодоступні сховища GitHub. Сканування Apiiro виявило 2539 справжніх секретів, які зберігаються в 1994 загальнодоступних сховищах: паролі баз даних, ключі хмарного API, токени та кореневі логіни SSH, розповсюджені в 63 організаціях, більшість з яких компанії, що займаються програмним забезпеченням. Одна постраждала компанія підтвердила дослідникам, що відкритий ключ був активним. Це другий інцидент із порушенням конфіденційності Claude Code цього місяця після [розкриття електронної пошти користувачів веб-сайтам] (https://aibuzzwire.news/en/article/claude-code-leaked-user-emails-user-agent-header-spam-wave) через заголовки User-Agent — і цей інцидент стосується виробничої інфраструктури, а не лише контактних даних. Ми уважно стежимо за безпекою агентів кодування штучного інтелекту в нашому [висвітленні інструментів штучного інтелекту] (https://aibuzzwire.news).

Як правило дозволу стає витоком

Цей механізм є побічним ефектом системи дозволів Клода Коду, яка запитує схвалення перед виконанням команд оболонки — часто кілька разів за сеанс. Попросіть агента налагодити з’єднання з базою даних або викликати внутрішній API, і команда, яку він пропонує, містить усі облікові дані, які вимагає це завдання, оскільки воно не може працювати без них.

Виберіть «Так, і більше не запитуйте», і Клод Код виконає команду та запише правило дозволу до `.claude/settings.local.json` у папці проекту. Правило не є абстракцією: це сам повний командний рядок, пароль, введений у вигляді звичайного тексту, і все інше.

Файл призначений для того, щоб залишатися на машині розробника, і Клод Код справді намагається захистити його — додавши його до глобального списку git ігнорування розробника. Це охоплює звичайний випадок, але не граничні випадки: папка, яка пізніше стане репозиторієм, клон на іншій машині, де глобальне ігнорування не існує, або файл, який хтось зафіксував до того, як було додано запис про ігнорування. Важливо те, що правило ніколи не потрапляє у власний `.gitignore` сховища, тому жодний захист не переміщається з проектом.

Проблема ускладнюється тим, що Клод Код часто фіксує сам файл. У 539 із 1105 сховищ, де Apiiro відстежив справжню таємницю, комміт, співавтором якого є Клод, змінив файл налаштувань — коміти, які називають моделі в діапазоні від Sonnet 4.5 до Opus 5.5. Apiiro зазначає, що ця поведінка належить Клоду Коду, а не моделі: фірма відтворила її як з Opus 5.5, так і з Fable 5.1.

Масштаб експозиції

Apiiro нарахував 104 185 публічних копій `.claude/settings.local.json` на GitHub. З них 1122 містять принаймні одну реальну таємницю. Дослідники знайшли ще 1160 секретів, які ховаються в історії git сховища, у спільних файлах `settings.json`, які команди навмисно фіксують, і в збережених стенограмах чату агентів, які перевіряються в репозиторіях.

Приклади документів Apiiro читаються як контрольний список найгірших практик. Постачальник бази даних надав власний хмарний ключ API на рівні адміністратора — із доступом для керування та безстроковим — разом зі своїм хостом кластера. B2B-стартап злив робочий пароль Azure Postgres. Агентство програмного забезпечення викрило маркер доступу до виробництва Square. ІТ-фірма, що розробляє програму для ведення медичних записів, злила пароль власника цієї бази даних. Проекти з відкритим вихідним кодом склалися не краще: один із понад 1000 зірочок опублікував ключ API у форматі OpenAI, інший — маркер npm.

Контекст безпеки погіршує відкриття. Зловмисне програмне забезпечення, що викрадає облікові дані, вже масово охоплює машини розробників — Apiiro вказує на хробака Shai-Hulud npm, який запускав сканер TruffleHog над файлами жертв. Той самий сканер позначив би 643 із 1122 витоку файлів, знайдених Apiiro. Ще більше занепокоєння викликає залишок: кожен п’ятий з витоку файлів не позначений ані TruffleHog, ані gitleaks, зазвичай тому, що секретом є пароль, введений у команді, а не ключ у розпізнаваному форматі маркера. Іншими словами, секретні сканери структурно сліпі до цього класу витоків.

Що мають робити постраждалі команди

Рекомендації Apiiro щодо відновлення починаються з визначення радіусу вибуху. Знайдіть у своїй організації GitHub `.claude/settings.local.json` і `.claude/settings.json` — кожне звернення — це файл, який будь-хто може прочитати прямо зараз. Перевірте історію git кожного сховища для файлу, навіть якщо його було видалено, тому що кожен розгалуження та клон зберігає все, що містить історія. Потім перевірте локальні копії на кожній машині розробника: кожен запис у списку дозволених — це команда, схвалена кимось, із тим, що в ній було введено.

Порядок фірми має значення: по-перше чергування, потім прибирання. Видалення файлу зі сховища нічого не впливає на облікові дані, які вже були загальнодоступними, а історія git зберігає розкриті секрети на невизначений термін.

Зразок, а не одноразовий

Для Anthropic знахідка з’явилася через тиждень після того, як Клод Код був спійманий на витоку адрес електронної пошти користувачів на кожен веб-сайт, який він відвідав через заголовки User-Agent — помилку виправлено шляхом відправки модифікації конфіденційності, яку критики назвали пластиром. Ці два інциденти мають спільну першопричину: агент, який обробляє потужний контекст — облікові дані, контактні дані, внутрішні імена хостів — і приймає рішення за умовчанням щодо того, куди цей контекст переміщається.

Урок узагальнює за межами Клода Коду. Оскільки кодувальні агенти стають стандартним обладнанням, файли, які вони пишуть, щоб упорядкувати себе, стають новим, несканованим куточком ланцюга постачання програмного забезпечення. Цифри Apiiro свідчать про те, що вже є витік у масштабі, який більшість організацій не почали вимірювати.

Будьте попереду ШІ

Інструменти штучного інтелекту постачаються швидше, ніж можуть встигати їхні перевірки безпеки. Слідкуйте за всіма подіями в нашому висвітленні новин AI.

Читати більше новин AI →