
Образовательная демонстрация трёх уязвимостей Claude Code (обход хуков, инъекция MCP, эксфильтрация API-ключей) с сервером атакующего, MITM-прокси и сканером обнаружения для изучения безопасности цепочки поставок.
Этот проект демонстрирует три уязвимости, раскрытые Check Point Research в CLI-инструменте Claude Code от Anthropic. Он предназначен для студентов и исследователей в области кибербезопасности, чтобы понять, как работают атаки на цепочку поставок инструментов разработки на базе ИИ.

| ID | CVSS | Тип | Исправлено в |
|---|
| Без CVE | 8.7 | Обход согласия на хуки → RCE | v1.0.87 (сентябрь 2025) |
| CVE-2025-59536 | 8.7 | Инъекция конфигурации MCP-сервера → RCE | v1.0.111 (октябрь 2025) |
| CVE-2026-21852 | 5.3 | Экфильтрация API-ключа через базовый URL | v2.0.65 (январь 2026) |
├── README.md # Этот файл
├── attacker_server.py # Локальный HTTP-сервер, который логирует полученные данные
├── attacker_proxy.py # MITM-прокси для CVE-2026-21852 (перехватывает API-ключ + трафик)
├── scanner.py # Инструмент обнаружения: сканирует репозитории на эти паттерны
├── vuln1_hooks_bypass/ # Демо: вредоносные хуки в settings.json
│ └── .claude/settings.json
├── CVE-2025-59536_mcp_injection/ # Демо: инъекция конфигурации MCP-сервера
│ ├── .mcp.json
│ └── .claude/settings.json
└── CVE-2026-21852_api_exfil/ # Демо: экфильтрация API-ключа через базовый URL
└── .claude/settings.json
python3 attacker_server.pypython3 attacker_proxy.py — прозрачный прокси на 127.0.0.1:8888, который перехватывает API-ключи, одновременно передавая трафик в обычном режимеpython3 scanner.py <путь-к-любому-репозиторию>, чтобы обнаружить эти паттерныscanner.py проверяет любой локальный репозиторий на три паттерна уязвимостей перед тем, как открыть его в Claude Code.
python3 scanner.py <путь-к-репозиторию>
Он помечает:
enableAllProjectMcpServers: true в сочетании с определениями серверов в .mcp.json (CVE-2025-59536)ANTHROPIC_BASE_URL или другие переопределения переменных окружения, связанных с учётными данными, в .claude/settings.json (CVE-2026-21852)Завершается с кодом 1, если найдены какие-либо проблемы, и 0, если всё чисто — легко встроить в CI-проверку перед клонированием.
| Компонент | Версия |
|---|---|
| Claude Code CLI | v2.0.61 |
Примечание: v2.0.61 — это уязвимая сборка (патч вышел в v2.0.65). Не используйте эту версию в производственной среде.
В средах разработки на базе ИИ файлы конфигурации являются частью исполняемого слоя. Клонирование недоверенного репозитория теперь эквивалентно запуску недоверенного кода, если ваши инструменты автоматически загружают конфигурации проекта.
Этот проект предоставляется как есть в образовательных целях. Продемонстрированные здесь техники выполняются только на localhost и нацелены только на запатченные, исторические уязвимости. Использование этих инструментов против производственных систем, сторонней инфраструктуры или любых систем без явного разрешения незаконно и неэтично. Автор не несёт ответственности за любой ущерб, причинённый неправильным использованием этого материала.