Claude Code Security: Полное руководство по правам, командам, bypassPermissions и корпоративной настройке
Введение: почему безопасность Claude Code — отдельная дисциплина
Claude Code — это не плагин к IDE. Это агент, который запускается в терминале разработчика и работает с теми же системными правами, что и он сам. Он читает любые файлы, к которым есть доступ, выполняет bash-команды, вносит изменения сразу в несколько файлов, подключается к внешним сервисам через Model Context Protocol. [1]
Восемь из десяти компаний из списка Fortune 10 используют Claude в production. За последний год было опубликовано два CVE, доказывающих: достаточно просто открыть клонированный репозиторий, чтобы произошла утечка API-ключей или выполнился произвольный код. [2]
Большинство руководств по безопасности рассматривают Claude Code как ещё один IDE-плагин. Это фундаментальная ошибка. Аgentic-инструмент в терминале с bash-доступом — принципиально другая поверхность атаки, требующая отдельного подхода.
Эта статья — попытка разобрать, как устроена система прав изнутри, что реально происходит при включении bypassPermissions, какие инциденты уже произошли, и как настроить Claude Code для команды так, чтобы не жертвовать ни безопасностью, ни производительностью.
Архитектура безопасности: как Claude Code принимает решения
Разделение reasoning и execution
Ключевое архитектурное решение Claude Code: модель не имеет прямого доступа к файловой системе, командной оболочке или сети. Модель генерирует tool_use блоки, которые парсит и исполняет харнесс — отдельный слой инфраструктуры. [27]
Это означает: даже скомпрометированная или adversarially манипулируемая модель не может напрямую обойти sandbox, permission checks или deny-правила, реализованные в харнессе. Единственный интерфейс модели с внешним миром — структурированный tool_use протокол, который харнесс валидирует перед исполнением. По оценке исследователей, лишь около 1,6% кодовой базы Claude Code составляет AI decision logic; оставшиеся 98,4% — операционная инфраструктура. [27]
Иерархия конфигурации (от высшего приоритета к низшему)
- Managed settings — не могут быть переопределены ничем, включая аргументы командной строки.
- Аргументы командной строки — временные переопределения сессии.
- Local project settings (
.claude/settings.local.json). - Project settings (
.claude/settings.json). - User settings (
~/.claude/settings.json). [6]
Ключевое правило: если инструмент запрещён на каком-либо уровне, ни один другой уровень не может его разрешить.
Матрица инструментов и рисков
Claude Code работает с набором встроенных инструментов с разным уровнем риска:
- Read, Glob, Grep — низкий риск, чтение данных.
- Task (запуск субагентов) — низко-средний риск.
- Edit, Write — средний риск, модификация файлов.
- Bash — высокий риск, выполнение команд.
- WebFetch — средний риск, HTTP-запросы.
- MCP-инструменты — переменный риск в зависимости от сервера. [28]
Пять режимов прав: от осторожного до бесшабашного
1. Normal mode (default)
Запрашивает подтверждение перед каждой потенциально опасной операцией: редактирование файлов, запуск команд, сетевые запросы. [6]
Это правильная позиция по умолчанию, но она ведёт к permission fatigue. По внутренним данным Anthropic, пользователи одобряют 93% запросов на подтверждение — то есть большинство из них перестают реально читать, что именно одобряют. [7]
2. Plan mode
Ограничивает Claude Code операциями только для чтения. Никаких модификаций, никаких команд — только анализ. Полезен для ревью кода без риска нежелательных изменений. [18]
3. acceptEdits mode
Автоматически принимает редактирование файлов, не запрашивая подтверждения. Bash-команды и выход за пределы рабочей директории по-прежнему требуют явного разрешения. [1]
4. Auto mode (Research Preview, март 2026)
Принципиально новый подход: вместо ручного подтверждения каждого действия — classifier-модель (Sonnet 4.6) проверяет каждый tool call перед исполнением. Безопасные действия проходят автоматически, рискованные блокируются. [7]
Архитектура двухуровневой защиты:
- Input layer: server-side probe сканирует вывод инструментов (чтение файлов, web fetches, вывод shell) на признаки prompt injection до того, как они попадают в контекст агента.
- Output layer: двухстадийный classifier. Стадия 1 — быстрый single-token фильтр, настроенный на over-blocking (8,5% false positive rate). Стадия 2 — chain-of-thought рассуждение только для тех действий, которые первая стадия пометила как подозрительные (0,4% false positive rate). [7, 9]
Критически важная деталь: classifier работает независимо от рассуждений агента. Он видит только пользовательские сообщения и вызовы инструментов, но не внутренний "chain of thought" модели. Это означает: даже если prompt injection успешно изменил намерения агента, classifier оценивает конкретное действие — не намерение. [10]
Если за сессию накапливается 3 последовательных блокировки или 20 суммарных, auto mode переходит к ручному подтверждению. [28]
Ограничения: требует Claude Code v2.1.83+, план Team или Enterprise, провайдер Anthropic API. На бесплатных и Pro планах недоступен. [11]
5. bypassPermissions mode
Отключает все проверки прав. Claude Code выполняет любой tool call без запроса подтверждения. [18]
Это отдельный разговор — он заслуживает собственного раздела.
bypassPermissions: что это такое и почему это опасно
Что делает флаг
--dangerously-skip-permissions (или --permission-mode bypassPermissions) отключает весь стек защиты разом:
- Blocklist команд (который по умолчанию блокирует
curl,wgetи другие инструменты для загрузки контента из сети). - Ограничение на запись только в рабочую директорию.
- Систему запросов на подтверждение.
- Верификацию доверия к MCP-серверам.
Единственное исключение — rm -rf / и rm -rf ~: они по-прежнему требуют подтверждения как circuit breaker против ошибок модели. [12]
При включении bypass mode все субагенты автоматически наследуют полный автономный доступ. Переопределить это невозможно. [12]
Реальные инциденты
Документированные случаи — не теоретические риски, а произошедшие события:
Инцидент Wolak (октябрь 2025). Разработчик Майк Волак запустил Claude Code для пересборки Makefile-проекта на Ubuntu/WSL2. Claude Code выполнил rm -rf начиная от корня (/). В логах bug report #10077 на GitHub — тысячи сообщений "Permission denied" для /bin, /boot, /etc. Все пользовательские файлы на машине были уничтожены. Важная деталь: Wolak не запускал --dangerously-skip-permissions. Система прав сама по себе не заблокировала деструктивную команду. [12]
Инцидент ~/home (декабрь 2025). Пользователь попросил Claude Code «почистить пакеты» в старом репозитории. Claude сгенерировал: rm -rf tests/ patches/ plan/ ~/. Тот ~/ в конце shell раскрыл как домашнюю директорию пользователя. Файлы рабочего стола, пароли Keychain, данные приложений — всё исчезло. Симон Уиллисон опубликовал об этом в X, пост набрал 197 очков на Hacker News и 156 комментариев. [11, 12]
Инцидент с тильдой (ноябрь 2025). Разработчик JeffreyUrban обнаружил (issue #12637), что Claude в одной из предыдущих сессий случайно создал директорию буквально с именем ~ (тильда). Позже, в другой сессии, Claude выполнил rm -rf в родительской директории. Shell раскрыл так, что включил директорию ~ — и интерпретировал её как путь к домашней директории. [12]
Когда bypassPermissions безопасен
Anthropic явно обозначает единственный сценарий корректного использования: изолированная среда (контейнер, VM, dev container без интернет-доступа), где Claude Code не может нанести долговременный ущерб. Их собственные инженеры, публикуя пример с параллельными агентами в феврале 2026, добавили: "Запускайте это в контейнере, не на реальной машине". [12]
Практическое правило: если среда — production, ноутбук разработчика или любая система с реальными данными, --dangerously-skip-permissions использовать нельзя.
На Linux и macOS Claude Code отказывается запускаться в этом режиме от root или через sudo. [18]
Supply chain атаки через конфигурационные файлы: CVE-2025-59536 и CVE-2026-21852
В феврале 2026 исследователи Check Point Research опубликовали детальный отчёт о двух уязвимостях в Claude Code. [13, 14]
CVE-2025-59536 (CVSS 8.7, исправлено в v1.0.111)
Уязвимость в реализации trust dialog при запуске. Claude Code выполнял код из .claude/settings.json и .mcp.json до того, как пользователь видел диалог подтверждения доверия к директории. [15]
Механизм атаки: при инициализации в директории Claude Code сканировал конфигурационные файлы проекта и выполнял определённые в них hooks для подготовки контекста. При установке enableAllProjectMcpServers: true MCP-серверы инициализировались автоматически. Диалог доверия появлялся уже после выполнения произвольного кода. [16]
Результат: выполнение произвольных shell-команд с правами разработчика при простом открытии клонированного репозитория. [17]
CVE-2026-21852 (CVSS 5.3, исправлено в январе 2026)
Эта уязвимость позволяла перехватить API-ключ Anthropic через переопределение переменной окружения ANTHROPIC_BASE_URL в конфигурационных файлах репозитория. [18]
Скомпрометированный ключ в корпоративной среде означает не только несанкционированный доступ к API, но и доступ к общим ресурсам команды, использующей этот ключ. [14]
Системный вывод
Оба CVE были вызваны одной и той же концептуальной проблемой: конфигурационные файлы рассматривались как пассивные метаданные, хотя де-факто являются частью execution layer. [22]
По словам Check Point: разработчики по своей природе доверяют конфигурационным файлам проекта — они воспринимаются как метаданные, а не исполняемый код, и редко проходят тот же security-скрутиний, что и код приложения при code review. [13]
После исправления Anthropic добавил расширенный диалог предупреждения при открытии проектов с неизвестными Claude Code конфигурациями.
Практическая настройка permissions: от синтаксиса к политике
Базовый синтаксис правил
Правила прав записываются в формате Tool или Tool(specifier). Приоритет оценки: сначала deny, затем ask, затем allow. [23]
Примеры:
{
"permissions": {
"allow": [
"Bash(npm run:*)",
"Bash(git status:*)",
"Bash(git diff:*)"
],
"ask": [
"Bash(git push:*)",
"Bash(docker run:*)"
],
"deny": [
"WebFetch",
"Bash(curl:*)",
"Bash(wget:*)",
"Read(./.env)",
"Read(./.env.*)",
"Read(./secrets/**)",
"Read(**/.ssh/**)"
]
}
}Для блокировки всех вызовов инструмента: просто имя без скобок, например Bash(*) эквивалентно Bash. [6]
Команда /permissions
Вместо ручного редактирования JSON-файлов можно использовать встроенный UI: команда /permissions запускает интерактивный интерфейс управления правами прямо в сессии. [6]
Корпоративная настройка: managed-settings.json
Что такое managed settings и зачем они нужны
managed-settings.json — конфигурационный файл, который не может быть переопределён ни пользовательскими настройками, ни настройками проекта, ни аргументами командной строки. Это единственный способ реализовать организационную политику, которую разработчик не может обойти. [25]
Расположение на разных ОС:
- Windows:
C:\ProgramData\ClaudeCode\managed-settings.json - macOS:
/Library/Application Support/ClaudeCode/managed-settings.json - Linux: как правило,
/etc/claude-code/managed-settings.json[25]
Деплоится через MDM (Mobile Device Management) системы — Jamf, Intune и аналоги.
Ключевые параметры безопасности
disableBypassPermissionsMode: "disable" — самый важный параметр. Без него любой разработчик может запустить --dangerously-skip-permissions и обойти все политики. [22]
allowManagedPermissionRulesOnly: true — запрещает пользователям и проектам добавлять собственные allow-правила. Политика deny применяется без возможности переопределения. [23]
allowManagedHooksOnly: true — только hooks, определённые в managed settings, могут выполняться. Пользователи не могут определять собственные hooks. [24]
allowManagedMcpServersOnly: true — только MCP-серверы из managed settings. Разработчики не могут добавлять собственные серверы. [22]
forceLoginOrgUUID — привязывает Claude Code к аутентификации строго через организационный аккаунт. Разработчики не могут случайно или намеренно использовать персональный Pro/Max аккаунт с корпоративным кодом (что создаёт риск "shadow AI" и попадания кода в consumer training data). [24, 25]
forceRemoteSettingsRefresh: true — Claude Code не запустится, если не удаётся получить managed settings. Fail-closed поведение гарантирует, что контроли применяются всегда. [24]
sandbox.network.allowedDomains — ограничивает исходящие сетевые запросы списком одобренных доменов на уровне sandbox. [24]
Базовый шаблон managed-settings.json для Enterprise
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"permissions": {
"disableBypassPermissionsMode": "disable",
"deny": [
"Bash(curl:*)",
"Bash(wget:*)",
"Bash(sudo:*)",
"Bash(su:*)",
"Bash(ssh:*)",
"Read(**/.env)",
"Read(**/.env.*)",
"Read(**/secrets/**)",
"Read(**/.ssh/**)",
"Read(**/.aws/**)"
],
"ask": ["Bash(git push:*)", "Write(**)"]
},
"allowManagedPermissionRulesOnly": true,
"allowManagedHooksOnly": true,
"allowManagedMcpServersOnly": true,
"forceLoginOrgUUID": "YOUR-ORG-UUID-HERE",
"forceRemoteSettingsRefresh": true,
"cleanupPeriodDays": 14,
"env": {
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}Модульный подход: managed-settings.d/
Для крупных организаций с несколькими командами, которые должны управлять разными фрагментами политики, Claude Code поддерживает директорию managed-settings.d/ с числовыми префиксами для управления порядком слияния: 10-security.json, 20-mcp-policy.json, 30-network.json. Файлы сортируются алфавитно, deep-merge на основной файл: массивы конкатенируются и дедуплицируются, объекты deep-mergeятся, скалярные значения переопределяются. [25]
Уровни безопасности: от baseline до максимального ограничения
Anthropic публикует официальные примеры конфигураций в репозитории github.com/anthropics/claude-code/blob/main/examples/settings/:
settings-lax.json(L1 Baseline) — запрещает--dangerously-skip-permissions, блокирует сторонние маркетплейсы плагинов.settings-bash-sandbox.json(L3 Sandbox) — активирует OS-level sandbox без escape-hatch. [25]
MCP Security: внешние серверы как поверхность атаки
Model Context Protocol позволяет Claude Code подключаться к внешним инструментам: Slack, GitHub, базам данных, внутренним API. Каждое подключение расширяет поверхность атаки. [1]
CVE-2025-59536 наглядно показал: репозиторий с вредоносным .mcp.json может инициализировать внешние сервисы до получения согласия пользователя. Это классическая supply chain атака через конфигурационный файл.
Практические правила работы с MCP в команде:
- Относитесь к каждому MCP-серверу как к программной зависимости: ведите allowlist, ревьюте source code, используйте scoped short-lived credentials для аутентификации. [18]
- Используйте
allowManagedMcpServersOnly: trueв managed settings. - Для серверов, которые обращаются к production-данным, устанавливайте read-only доступ по умолчанию; write доступ — отдельный approval workflow.
- Не используйте серверы из публичных маркетплейсов без предварительного ревью source code. [22]
- Регулярно ревьюте remembered approvals для MCP-инструментов и сбрасывайте их при смене контекста. [27]
Sandbox: OS-level изоляция vs. permission-level контроль
Sandbox и permission system работают на разных уровнях и не являются взаимозаменяемыми. [27]
- Permission system: контролирует, какие инструменты Claude может использовать и к каким файлам или доменам обращаться. Применяется ко всем инструментам.
- Sandbox: OS-level enforcement, ограничивающий, что bash-команды могут делать на уровне файловой системы и сети. Применяется только к Bash и его дочерним процессам. [6]
Команда может быть permission-approved, но всё равно sandbox-изолирована. Или permission-denied — и тогда до sandbox просто не дойдёт. Это два ортогональных слоя защиты.
Технически Claude Code использует bubblewrap на Linux/WSL2 и Seatbelt на macOS. Sandbox блокирует доступ к файловой системе за пределами определённых директорий, предотвращает сетевые запросы к неразрешённым доменам, изолирует process execution от хост-системы. По данным Anthropic, sandbox достигает 84% снижения запросов на подтверждение при сохранении гарантий безопасности. [28]
Однако важное ограничение: исследователи задокументировали случай, когда команды с более чем 50 субкомандами откатываются к одному общему запросу подтверждения вместо per-subcommand deny-rule проверок — из-за производительности. Это структурная проблема, когда несколько уровней защиты разделяют общие performance constraints. [27]
Ключевые ошибки при настройке (и как их избежать)
1. Allowlist вместо denylist — ловушка
Лучшая первая линия защиты: создать строгий allowlist с конкретными командами, которые реально нужны. Denylist — дополнительный барьер поверх, а не замена. Пытаться заблокировать всё опасное через denylist практически невозможно: всегда найдётся непредвиденная комбинация. [29]
Пример allowlist-подхода:
{
"permissions": {
"allow": [
"Bash(npm run:*)",
"Bash(npm test)",
"Bash(git status)",
"Bash(git diff:*)"
],
"ask": ["Bash"],
"deny": ["WebSearch", "WebFetch"]
}
}2. WebDAV на Windows
При запуске Claude Code на Windows рекомендуется не включать WebDAV и не разрешать Claude Code доступ к путям вида \\*, которые могут содержать WebDAV-поддиректории. WebDAV deprecated Microsoft из-за проблем безопасности; его включение может позволить Claude Code инициировать сетевые запросы к удалённым хостам в обход permission system. [1]
3. Запуск от root
Claude Code никогда не должен запускаться от root. Это архитектурное ограничение, а не рекомендация. На Linux/macOS Claude Code нативно блокирует --dangerously-skip-permissions при запуске от root. В managed settings это должно быть дополнительно закреплено политикой. [23]
4. Permission fatigue
Если команда переводит всё в "Allow everything", ценность guardrails теряется полностью. Решение — allowlist только для рутинных низкорисковых действий, всё остальное оставлять на Ask с реальным ревью. Auto mode является более структурированной альтернативой ручному одобрению.
5. Неконтролируемые конфигурационные файлы проекта
После CVE-2025-59536: файлы .claude/settings.json и .mcp.json в репозитории должны проходить те же security проверки, что и исполняемый код. В политике pull request review нужно явно включить ревью этих файлов. [22]
Чек-лист безопасной настройки Claude Code для команды
Базовый уровень (любой план)
- Определить и задокументировать список разрешённых команд (allowlist).
- Добавить в deny:
curl,wget,ssh,sudo, чтение.envи secrets-директорий. - Не использовать
--dangerously-skip-permissionsвне изолированных контейнеров. - Обновиться до версии 1.0.111+ (исправление CVE-2025-59536).
- Добавить
.claude/settings.jsonи.mcp.jsonв scope PR review.
Команды на Team/Enterprise плане
- Задеплоить
managed-settings.jsonчерез MDM. - Установить
disableBypassPermissionsMode: "disable". - Установить
allowManagedPermissionRulesOnly: true. - Установить
allowManagedHooksOnly: true. - Установить
allowManagedMcpServersOnly: true. - Настроить
forceLoginOrgUUIDдля привязки к организационному аккаунту. - Создать allowlist одобренных MCP-серверов.
- Включить sandbox для Bash на уровне managed settings.
- Настроить
sandbox.network.allowedDomainsпод реальные нужды команды. - Настроить OpenTelemetry для audit logging (доступно нативно в managed settings).
- Установить ограничения на бюджет API (per-user и per-team caps в Admin Console).
- Рассмотреть включение auto mode для разработчиков на Team/Enterprise — вместо разрешения
--dangerously-skip-permissions.
Для CI/CD сред
- Запускать Claude Code только в изолированных контейнерах или VM без постоянного хранилища.
- Использовать
--permission-mode bypassPermissionsтолько в контейнерах с доказанной сетевой изоляцией. - Комбинировать
-p,--dangerously-skip-permissions,--output-format stream-jsonдля headless pipeline только при полной изоляции среды.
Плохой PR — не обязательно безопасный PR
Claude Code может добавить зависимость с postinstall-скриптом, изменить конфиг, который влияет на поведение в production, вписать секрет в тестовый файл. Инструмент работает быстро, разработчики принимают большинство предложений без детального ревью — и это не претензия к разработчикам, это следствие approval fatigue.
Конфигурационные файлы, миграции, изменения в CI/CD, служебный код — это именно те зоны, где diff читают хуже всего и где AI-инструменты создают наибольший риск. Рабочий PR не означает безопасный PR.
Это логика, которую реализует HighVibe — слой контроля безопасности AI-кодинга, который анализирует конкретные изменения в PR: новые и обновлённые зависимости, изменения в конфигах, служебный код, CI/CD-файлы. Не длинный security-отчёт перед релизом, а короткий ответ на вопрос: что в этом конкретном изменении блокирует безопасный merge? Это дополнительный слой рядом с permission system Claude Code — они работают на разных уровнях и закрывают разные риски.
Тренды и куда движется экосистема
От статических правил к классификаторам
Auto mode — первый явный сдвиг в сторону delegating approval decisions AI-классификаторам, а не жёстким правилам. Это принципиально другой подход: не "список разрешённого и запрещённого", а "оценка каждого действия в контексте". Anthropic прозрачно публикует данные о false positive/false negative rates и методологию. [7]
Конфигурационные файлы как новый вектор атаки
CVE-2025-59536 — не изолированная проблема Claude Code. Аналогичные паттерны атак задокументированы для других AI coding assistants, использующих MCP-конфигурации. Этот вектор будет расти по мере распространения agentic инструментов. [22]
RBAC на Enterprise (ограниченный scope)
Enterprise планы получили custom roles и groups для контроля доступа к Cowork, Claude Code, web search, memory, code execution, fast-mode моделям. Это значимый шаг вперёд по сравнению с all-or-nothing toggles. Ограничение: RBAC управляет доступом к шести высокоуровневым возможностям, но не контролирует ограничения для Chrome, установку плагинов, доступ к MCP-серверам на уровне разрешений. [18]
Заключение
Claude Code — мощный agentic инструмент с хорошо продуманной архитектурой безопасности. Разделение reasoning и execution, иерархия конфигураций с managed settings, sandbox на уровне ОС, новый auto mode с двухуровневым классификатором — это не маркетинг, а реально работающие механизмы.
Вместе с тем, два CVE с CVSS 8.7 и серия документированных инцидентов с потерей данных показывают: архитектура правильная, но настройка требует внимания. Один неверный параметр, одна опция --dangerously-skip-permissions не в том месте, один непроверенный .mcp.json в клонированном репозитории — и всё это превращается в проблему.
Для команд, которые серьёзно работают с Claude Code:
managed-settings.jsonсdisableBypassPermissionsMode: "disable"— необходимый минимум для Enterprise.- Auto mode вместо
--dangerously-skip-permissionsдля автономных сценариев. - MCP-серверы — как программные зависимости, с ревью и allowlist.
- Файлы
.claude/settings.jsonи.mcp.json— как исполняемый код, в scope security review.
Безопасность AI-кодинга — это не один инструмент и не одна настройка. Это стек решений: permission system, sandbox, managed policy, review процессы, мониторинг изменений в PR.
Источники
[1] Anthropic — "Security" — https://code.claude.com/docs/en/security
[2] TrueFoundry — "Enterprise Security for Claude" — https://www.truefoundry.com/blog/enterprise-security-for-claude
[3] arXiv — "Dive into Claude Code: The Design Space of AI Agent Systems" — https://arxiv.org/html/2604.14228v1
[4] Anthropic — "Configure permissions" — https://code.claude.com/docs/en/permissions
[5] ClaudeInsider — "Permissions & Security" — https://www.claudeinsider.com/docs/configuration/permissions
[6] ClaudeFa.st — "Claude Code Permissions: Safe vs Fast Development Modes" — https://claudefa.st/blog/guide/development/permission-management
[7] Anthropic Engineering — "Claude Code auto mode: a safer way to skip permissions" — https://www.anthropic.com/engineering/claude-code-auto-mode
[8] Anthropic — "Choose a permission mode" — https://code.claude.com/docs/en/permission-modes
[9] Anthropic Engineering — "Claude Code auto mode (full engineering post)" — https://www.anthropic.com/engineering/claude-code-auto-mode
[10] GitHub Gist (sc0tfree) — "Claude Code Auto Mode analysis" — https://gist.github.com/sc0tfree/11c86116df4c2281a976d796f9493cd7
[11] TrueFoundry — "Claude Code --dangerously-skip-permissions" — https://www.truefoundry.com/blog/claude-code-dangerously-skip-permissions
[12] Thomas Wiegold — "Claude Code dangerously-skip-permissions" — https://thomas-wiegold.com/blog/claude-code-dangerously-skip-permissions/
[13] Check Point Research — "RCE and API Token Exfiltration Through Claude Code Project Files" — https://research.checkpoint.com/2026/rce-and-api-token-exfiltration-through-claude-code-project-files-cve-2025-59536/
[14] Check Point Blog — "Check Point Researchers Expose Critical Claude Code Flaws" — https://blog.checkpoint.com/research/check-point-researchers-expose-critical-claude-code-flaws/
[15] SentinelOne — "CVE-2025-59536: Anthropic Claude Code RCE Vulnerability" — https://www.sentinelone.com/vulnerability-database/cve-2025-59536/
[16] Threat Landscape — "Analyzing CVE-2025-59536 & CVE-2026-21852" — https://threatlandscape.io/blog/analyzing-cve-2025-59536-cve-2026-21852-agent-configuration-risks
[17] The Hacker News — "Claude Code Flaws Allow Remote Code Execution and API Key Exfiltration" — https://thehackernews.com/2026/02/claude-code-flaws-allow-remote-code.html
[18] Harmonic Security — "Securing Claude Cowork" — https://www.harmonic.security/resources/securing-claude-cowork-a-security-practitioners-guide
[19] MintMCP — "Claude Code CVE-2025-59536 & CVE-2026-21852: What Enterprise Teams Must Know" — https://www.mintmcp.com/blog/claude-code-cve
[20] Anthropic — "Configure permissions (syntax)" — https://code.claude.com/docs/en/permissions
[21] managed-settings.com — "Claude Code managed-settings.json Ultimate Guide" — https://managed-settings.com/
[22] TrueFoundry — "Claude Code Governance: Building an Enterprise Usage Policy" — https://www.truefoundry.com/blog/claude-code-governance-building-an-enterprise-usage-policy-from-scratch
[23] TrueFoundry — "Enterprise Security for Claude (managed settings)" — https://www.truefoundry.com/blog/enterprise-security-for-claude
[24] PlatformSecurity — "How to Secure Your Claude Enterprise Tenant" — https://platformsecurity.com/blog/how-to-secure-your-claude-enterprise-tenant
[25] CodingNomads — "Claude Code Enterprise Deployment: Policies & Settings" — https://codingnomads.com/claude-code-enterprise-deployment-policies-settings
[26] HowToHarden — "Anthropic Claude Hardening Guide" — https://howtoharden.com/guides/anthropic-claude/
[27] Skywork.ai — "Permission Model in Claude Code" — https://skywork.ai/blog/permission-model-claude-code-vs-code-jetbrains-cli/
[28] MintMCP — "Claude Code Enterprise Security" — https://www.mintmcp.com/blog/claude-code-security
[29] Backslash Security — "Claude Code Security Best Practices" — https://www.backslash.security/blog/claude-code-security-best-practices