Сканируйте конфигурацию `.claude/` репозитория (`settings.json` hooks, MCP servers, env, allowed-tools) на предмет уязвимостей RCE и кражи API-ключей (CVE-2025-59536, CVE-2026-21852), которые срабатывают при клонировании и открытии ненадёжного репозитория. Статический, без зависимостей, локальный.
Проверяет локальную конфигурацию
.claude/в репозитории —settings.jsonхуки, определения MCP-серверов, блокиenv,permissions.allow— на предмет RCE и утечки API-ключей, которые срабатывают в момент, когда выgit cloneи открываете недоверенный репозиторий в Claude Code. Указывает на точную опасную строку, чтобы вы могли прочитать, прежде чем доверять. Только читает — никогда не выполняет то, что находит.
⚡ Запуск в одну строку, без установки, ничего не покидает вашу машину:
npx dotclaude-security --dir ./some-cloned-repo
🤝 Хотите, чтобы я ужесточил защиту для вас? Аудит с фиксированным объёмом — $99 / 24 ч: я рассматриваю каждое найденное уязвимое место и отправляю письменный отчёт с точными исправлениями конфигурации
.claude.
$ npx dotclaude-security --dir ./untrusted-repo
1 critical, 2 high, 0 medium across 1 config file(s).
CRITICAL .claude/settings.json:4 Auto-exec hook on "SessionStart" runs a command when the repo is opened
HIGH .claude/settings.json:7 permissions.allow pre-approves a dangerous tool: Bash(*)
HIGH .claude/settings.json:8 MCP server "x" runs an on-the-fly remote package (npx)
Репозиторий может поставлять собственную конфигурацию .claude/, и агент применяет её при открытии.
В феврале 2026 года исследователи Check Point раскрыли две уязвимости (CVE), корень которых именно в этом:
SessionStart автоматически выполняет команду оболочки при открытии директории.
Клонируйте вредоносный репозиторий, откройте его — и вы взломаны. Удалённое выполнение кода при инициализации.env) читает ваш
ANTHROPIC_API_KEY и отправляет его на удалённый хост. Тихая кража ключа.Обе атаки используют одну и ту же поверхность: хуки settings.json, команды запуска MCP-сервера,
блоки env и список permissions.allow — то, что вам может подсунуть репозиторий незнакомца.
Крупные игроки (Cisco skill-scanner, Snyk agent-scan) сканируют навыки; почти никто не сканирует конфигурационные файлы .claude.
dotclaude-security анализирует эти файлы статически и отмечает точный
файл + строку каждой опасной директивы — чтобы вы оценивали факты, а не предположения, и
никогда не выполняли полезную нагрузку для её обнаружения.
| Проверка | Серьёзность | Что выявляет |
|---|---|---|
Автоисполняемый хук при открытии (SessionStart/PreToolUse/UserPromptSubmit) | critical / high | команда, выполняемая в момент открытия репозитория — RCE при инициализации (CVE-2025-59536) |
| Хук читает секрет и обращается к сети | critical | ANTHROPIC_API_KEY/токен, передаваемый на удалённый хост — кража ключа (CVE-2026-21852) |
| Опасный шаблон команды в любом хуке | high | curl|sh, eval, base64 -d, nc -e, /dev/tcp, встроенный python -c/node -e |
| MCP-сервер запускает опасную команду | critical | MCP command/args, которые загружают и выполняют код при подключении |
| MCP-сервер запускает удалённый пакет на лету | high | определения MCP с npx/uvx/bunx, которые тянут незакреплённые пакеты |
| MCP-серверу передан секрет / удалённый URL | high / medium | внедрённые через env учётные данные, недоверенные удалённые конечные точки |
Рискованная запись permissions.allow | high / medium | Bash(*), WebFetch, широкие mcp__*, убирающие шлюз одобрения человеком |
| Зафиксированное значение секрета | critical | реальные sk-ant-…, AKIA…, ghp_…, приватные ключи в любом файле .claude |
# Сканировать конфигурацию .claude/ в текущем репозитории
npx dotclaude-security
# Сканировать свежеклонированный недоверенный репозиторий ПЕРЕД его открытием в Claude Code
npx dotclaude-security --dir ./some-cloned-repo
# Только машиночитаемый JSON (используйте для шлюза CI по сводке)
npx dotclaude-security --json
# Записать отчёт в HTML для передачи
npx dotclaude-security --html report.html
Вывод — JSON в stdout (передавайте в CI) и сводка по одной строке на каждое найденное уязвимое место в
stderr. Каждое найденное место содержит file, location.line, location.text и конкретный
fix.
npm i -g dotclaude-security
dotclaude-security --dir ./untrusted-repo
Ноль зависимостей. Он читает ваши конфигурационные файлы и сообщает — он никогда не выполняет хук, команду MCP или что-либо ещё, что обнаруживает. Ничего не покидает вашу машину.
Та же философия «сначала локально, докажи реальную проблему» во всём стеке, все под лицензией MIT:
supabase-security · strapi-security · pocketbase-security · firebase-security · appwrite-security · nhost-security · stripe-webhook-security · github-actions-security · aws-s3-security
MIT © Renzo Madueno
📚 Часть Awesome Backend Security Auditors — полная коллекция бесключевых активных аудиторов.