Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
Рейтинг: 37.6% · 5 голосов
Войдите, чтобы голосовать
Голосовать «За» и «Против» могут только авторизованные пользователи. Войдите в свой аккаунт — или зарегистрируйтесь, это займёт минуту.
Нет аккаунта? Зарегистрироваться
Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
Дебажил вчера интеграцию с ЮKassa, агент по ходу дела сделал cat .env и поехал дальше. То есть прод ключ кассы, токен телеграм бота и DSN от боевого постгреса теперь лежат в истории сессии и улетели в API. Никакого злого умысла, ему просто надо было посмотреть имя переменной.
Добавил в settings.json deny на Read для .env и .env.*, так он через пять минут сделал grep YOOKASSA .env и так же все увидел, потому что это уже Bash а не Read.
Понимаю что вероятность что эти ключи кто-то реально использует около нуля, но осадочек. Плюс у нас в договоре с одним заказчиком прямо написано что креды не должны покидать контур. Как вы это решаете? Реально все секреты из файлов выносить?
Добавил в settings.json deny на Read для .env и .env.*, так он через пять минут сделал grep YOOKASSA .env и так же все увидел, потому что это уже Bash а не Read.
Понимаю что вероятность что эти ключи кто-то реально использует около нуля, но осадочек. Плюс у нас в договоре с одним заказчиком прямо написано что креды не должны покидать контур. Как вы это решаете? Реально все секреты из файлов выносить?
✔ Лучший ответ сформирован автоматически — chrisy
Решается слоями, одного deny мало. 1. deny в permissions на Read(.env*) плюс PreToolUse хук, который режет любую bash команду где встречается .env. Да, хук обходится, но 95 процентов случайных чтений ловит. 2. Секретов в файлах нет вообще. direnv + 1password cli, в .env лежат только op:// ссылки, реальные значения подтягиваются в момент запуска приложения. Агент видит ссылки, толку от них ноль. 3…
Re: Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
✔ Лучший ответ — сформирован автоматически
Решается слоями, одного deny мало.
1. deny в permissions на Read(.env*) плюс PreToolUse хук, который режет любую bash команду где встречается .env. Да, хук обходится, но 95 процентов случайных чтений ловит.
2. Секретов в файлах нет вообще. direnv + 1password cli, в .env лежат только op:// ссылки, реальные значения подтягиваются в момент запуска приложения. Агент видит ссылки, толку от них ноль.
3. На клиентских проектах с контуром: dev контейнер с дев-ключами, прод кредов на машине разработчика просто не существует.
После того как у меня один раз ключ AWS уехал в контекст, ротировал все за вечер, с тех пор так живу.
1. deny в permissions на Read(.env*) плюс PreToolUse хук, который режет любую bash команду где встречается .env. Да, хук обходится, но 95 процентов случайных чтений ловит.
2. Секретов в файлах нет вообще. direnv + 1password cli, в .env лежат только op:// ссылки, реальные значения подтягиваются в момент запуска приложения. Агент видит ссылки, толку от них ноль.
3. На клиентских проектах с контуром: dev контейнер с дев-ключами, прод кредов на машине разработчика просто не существует.
После того как у меня один раз ключ AWS уехал в контекст, ротировал все за вечер, с тех пор так живу.
Re: Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
Дело не в уперся. У нас заказчик банк из топ-20, в договоре прямым текстом запрещена передача кредов в зарубежные сервисы, и на аудите ИБ спрашивают не что украли, а что покинуло контур. Найдут в логах cat .env при включенном агенте, и это минус контракт плюс неустойка. Для пет-проекта пофигизм ок, для b2b нет.sabaza писал(а):твой токен телеграм бота никому в анфропике не уперся
Re: Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
вообще если DSN боевого постгреса лежит в .env на рабочем ноуте, проблема не в клоде. прод секреты живут в vault и в секретнице деплоя, на ноуте им делать нечего. агент тут просто подсветил бардак, скажи ему спасибо
- grumpylurker
- Сообщения: 63
- Зарегистрирован: 15 май 2026, 01:41
Re: Claude Code спокойно читает .env и весь файл улетает в API. Кто как ограждает секреты
Подтверждаю что обходится, причем агент это делает даже без злого умысла. У меня чтение .env было закрыто, так он написал однострочник на питоне с os.environ и распечатал все переменные процесса, формально ни одного запрещенного паттерна в команде. Так что соглашусь с твоим же пунктом 3: единственная рабочая граница это окружение, в котором секретов физически нет. Все остальное театр. Полезный, но театр.chrisy писал(а):хук обходится, но 95 процентов случайных чтений ловит
Поделиться темой:
✈ Telegram
VK
- Похожие темы
-
-
- Секреты прода лежат в гите с 2021 года, как продать руководству наведение порядка
6 ответов · 7 просмотров
-
- Claude Code снес стейджинг базу пока я ходил за кофе. Как вы вообще ограждаете агента?
6 ответов · 6 просмотров
-
-
-
- Weekly лимит на Max 20x улетает к среде, плюс посредник поднял комиссию. Как живёте вообще
6 ответов · 4 просмотров
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей