
Сканер безопасности для ИИ-агентов, серверов MCP и навыков агентов.
Обнаруживайте и сканируйте компоненты агентов на вашем компьютере на предмет промпт-инъекций
и уязвимостей (включая агентов, MCP-серверы и навыки).
Примечание: вывод CLI является экспериментальным и может изменяться
Agent Scan v0.5.x (планируется к удалению)
Сырой вывод этого CLI — включая коды проблем, имена полей, метки серьёзности и структуру ответа — является экспериментальным и может изменяться без предварительного уведомления между релизами. Мы не рекомендуем создавать производственные рабочие процессы, зависящие от конкретных полей вывода CLI или кодов проблем.
Agent Scan v0.6 и более поздние версии
Сырой вывод этого CLI — включая названия индикаторов риска, оценки, имена полей и структуру ответа — является экспериментальным и может изменяться без предварительного уведомления между релизами. Мы не рекомендуем создавать производственные рабочие процессы, зависящие от конкретных полей вывода CLI или названий рисков.
Если вы корпоративный заказчик, использующий Snyk для управления рисками безопасности агентов в масштабе, вывод CLI может не отражать то, что отправляется и отображается в платформе Evo. Базовая интеграция, обнаружение и оценка рисков, лежащие в основе корпоративных развёртываний, стабильны и поддерживаются — любые изменения будут доводиться до сведения в соответствии со стандартными практиками продукта Snyk. Обратитесь к вашей команде по работе с клиентами за рекомендациями по развёртыванию.
НОВОЕ Прочтите наш технический отчёт о новых угрозах экосистемы навыков агентов, опубликованный вместе с Agent Scan 0.4, который добавляет поддержку сканирования навыков агентов.
[!WARNING] Agent Scan v0.5.x использует формат вывода с кодами проблем. Эта ветка CLI планируется к удалению.
Agent Scan помогает обнаружить все установленные компоненты агентов (харнессы, MCP-серверы и навыки) и сканирует их на предмет распространённых угроз, таких как промпт-инъекции, обработка чувствительных данных или вредоносные нагрузки, скрытые в естественном языке. Пропустите анализ навыков, используя --no-skills.
⚠️ ВАЖНО: Сканирование MCP-конфигураций приведёт к выполнению команд, определённых в них.
Когда Agent Scan сканирует файл конфигурации MCP, он запускает stdio MCP-серверы, выполняя команды и аргументы, указанные в конфигурации. Это необходимо для получения описаний инструментов и выполнения анализа безопасности.
Рекомендации:
- Запускайте сканирование в изолированной среде (контейнер Docker, виртуальная машина или одноразовое окружение) при оценке недоверенных или сторонних MCP-конфигураций
- Внимательно просматривайте запрос на согласие во время интерактивного сканирования — в нём показаны точная команда и аргументы, которые будут выполнены для каждого сервера
- Используйте
--dangerously-run-mcp-serversтолько в доверенных средах, где вы проверили все команды MCP-серверовПо умолчанию Agent Scan требует явного согласия пользователя (y/n) перед запуском каждого stdio MCP-сервера при интерактивных запусках. Это даёт вам контроль над тем, что выполняется в вашей системе.
Выберите один из двух способов запуска Agent Scan:
uvx, следуя инструкциям ниже.Перед использованием любого из вариантов:
uvxУбедитесь, что uv установлен в вашей системе. Выберите инструкции для вашей версии CLI.
В примерах зафиксирована версия v0.5.17 как конкретный релиз v0.5.x:```bash
uvx [email protected] ~/.vscode/mcp.json
uvx [email protected] ~/path/to/my/SKILL.md
uvx [email protected] ~/.claude/skills
> [!WARNING]
> v0.5.x использует вывод кодов проблем и API анализа `2025-09-02`. Эта линейка CLI планируется к удалению.
#### Agent Scan v0.6 и выше```bash
# Scan the whole machine
uvx snyk-agent-scan@latest
# Scan a specific MCP configuration
uvx snyk-agent-scan@latest ~/.vscode/mcp.json
# Scan a single agent skill
uvx snyk-agent-scan@latest ~/path/to/my/SKILL.md
# Scan all Claude skills
uvx snyk-agent-scan@latest ~/.claude/skills
v0.6 и более поздние версии используют вывод на основе рисков и API анализа 2026-07-10.
Обе версии сканируют MCP-серверы, инструменты, промпты, ресурсы и навыки, а также автоматически обнаруживают поддерживаемые конфигурации агентов, такие как Claude Code/Desktop, Cursor, Gemini CLI и Windsurf.
Скачайте бинарный файл для вашей операционной системы и архитектуры со страницы последнего релиза GitHub. На странице релиза также доступны SBOM (sbom-<version>.json), файлы контрольных сумм и архивы исходного кода, созданные GitHub. См. раздел Проверка автономных бинарных файлов, чтобы проверить загруженный файл.
Для вывода на основе рисков в v0.6 см. изображение v0.6 в верхней части этого README.
Agent Scan автоматически обнаруживает агентов и их возможности (MCP-серверы или навыки), если существуют пути их установки. В таблице ниже показано, в каких операционных системах сканируется каждый агент.
--no-skillsМатрица выше показывает, в каких операционных системах сканируется каждый агент. Эта матрица разбивает обнаружение по области конфигурации и типу компонента (навыки и MCP-серверы), в совокупности по операционным системам. Под «серверами» понимаются MCP-серверы.
Четыре области:
managed-mcp.json, файлы в /etc, /Library/Application Support или ProgramData).Легенда: ✓ обнаруживается · ✗ агент поддерживает это, но Agent Scan пока не сканирует · N/A у агента нет такого компонента в этой области.
† OpenClaw не поддерживает перечисление открытых проектов: его навыки уровня проекта/рабочей области находятся только в фиксированном каталоге ~/.openclaw/workspace/skills
‡ Amp хранит навыки уровня проекта/рабочей области в .agents/skills (и в совместимом пути .claude/skills); на данный момент обнаруживаются только навыки пользовательского уровня в ~/.config/agents/skills, поэтому навыки уровня проекта поддерживаются, но пока не сканируются.
Мы используем GPG-подпись файла контрольных сумм релиза, чтобы гарантировать целостность и подлинность распространяемых файлов.
Загрузите файлы релиза:
Загрузите бинарный файл для вашей платформы (например, agent-scan-<version>-<os>-<arch>) и подписанный файл контрольных сумм (sha256sums.txt.asc) со страницы GitHub Releases в один и тот же каталог.
Проверьте GPG-подпись файла контрольных сумм: Загрузите открытый GPG-ключ в тот же каталог, затем выполните: ```bash gpg --import snyk-code-signing-public.pgp gpg --verify sha256sums.txt.asc
Найдите в выводе строку gpg: Good signature from "Snyk Limited <[email protected]>".
coreutils):
grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | sha256sum -c -
shasum):
grep agent-scan-<version>-<os>-<arch> sha256sums.txt.asc | shasum -a 256 -c -
agent-scan-<version>-<os>-<arch>: OK.Agent Scan — это инструмент сканирования безопасности, который сканирует и проверяет цепочку поставок агентных компонентов на вашей машине. Он ищет распространённые уязвимости безопасности, такие как промпт-инъекции, отравление инструментов, токсичные потоки или уязвимости в навыках агентов.
Agent Scan выдаёт оценённые индикаторы риска для таких угроз, как промпт-инъекции, доступ к ненадёжным или приватным данным, разрушительные возможности и вредоносные навыки агентов.
Agent Scan работает в двух основных режимах, которые можно использовать совместно или по отдельности:
Режим сканирования: Команда CLI snyk-agent-scan сканирует текущую машину на наличие агентов и агентных компонентов, таких как навыки и MCP-серверы. По завершении она выведет полный отчёт для просмотра пользователем.
Фоновый режим (MDM). Agent Scan сканирует машину через регулярные интервалы в фоновом режиме и передаёт результаты в экземпляр Snyk Evo. Это может использоваться командами безопасности для мониторинга цепочки поставок агентов в масштабах компании в централизованном месте. Чтобы настроить это, пожалуйста, свяжитесь с нами.
Agent Scan просматривает файлы конфигурации локальных агентов, чтобы находить агентов, навыки и MCP-серверы. Для MCP он подключается к серверам и получает описания инструментов.
⚠️ Примечание по безопасности: Сканирование конфигурации MCP выполняет команды, определённые в ней. Всегда проверяйте, что будет выполнено, перед подтверждением.
По умолчанию Agent Scan запрашивает согласие пользователя перед запуском каждого stdio MCP-сервера во время интерактивных запусков. Этот процесс согласования:
user_declined (они никогда не запускаются)Рекомендации:
Для неинтерактивных сред (например, CI/CD-пайплайнов) необходимо использовать флаг --dangerously-run-mcp-servers, чтобы обойти запрос согласия и запустить все серверы автоматически. Используйте этот флаг только в доверенных средах, где все команды MCP-серверов проверены.
Agent Scan проверяет обнаруженные компоненты с помощью локальных проверок и API Agent Scan. Он отправляет информацию о компонентах, необходимую для анализа, включая сведения о приложении агента, конфигурации и сигнатуры MCP-серверов, имена и описания инструментов, а также содержимое навыков. Секреты в значениях конфигурации и тексте маскируются перед передачей.
Используя Agent Scan, вы соглашаетесь с условиями использования Agent Scan от Snyk.
Agent Scan не хранит и не регистрирует никаких данных об использовании, то есть содержимое и результаты ваших вызовов инструментов MCP.
Полный справочник флагов находится в docs/cli-reference.md. Большинство команд и флагов общие для v0.5.x и v0.6 и более поздних версий.
snyk-agent-scan scan [CONFIG_FILE...] Scan MCP servers and skills (default) snyk-agent-scan inspect [CONFIG_FILE...] Inspect components without analysis snyk-agent-scan help Display help
### Параметры, общие для обеих линеек версий
Эти параметры существуют как в v0.5.x, так и в v0.6 и более поздних версиях. Их применимость к командам подробно описана в полном справочнике CLI.```text
--storage-file FILE Path to store scan state (default: ~/.mcp-scan)
--analysis-url URL Analysis endpoint; the default API version depends on the CLI version
--verification-H HEADER Additional analysis request header (repeatable)
--mcp-oauth-tokens-path PATH OAuth tokens for protected remote MCP servers
--verbose Enable detailed logging
--print-errors Show error details and tracebacks
--print-full-descriptions Show full entity descriptions without truncation
--json Emit JSON; the response schema depends on the CLI version
--skip-ssl-verify Disable TLS certificate verification
--skills / --no-skills Include skills (default) or skip them
--scan-all-users Scan all readable user home directories
--ci Exit non-zero when findings or operational failures remain
--server-timeout SECONDS MCP connection timeout (default: 10)
--suppress-mcpserver-io BOOL Suppress stdio MCP server stderr
--dangerously-run-mcp-servers Skip consent and start configured stdio MCP servers
--control-server URL Upload destination (repeatable)
--control-server-H HEADER Header for the current control-server block
--control-identifier ID Identifier for the current control-server block
--no-bootstrap Accepted compatibility no-op; does not change behavior
--checks-per-server NUM Accepted compatibility no-op; does not change behavior
[!WARNING] v0.5.x планируется объявить устаревшим. В примерах закреплена версия v0.5.17 как конкретный выпуск v0.5.x.```text --analysis-url URL Defaults to the 2025-09-02 analysis API --ignore-issues-codes CODES Comma-separated E/W security finding codes and X failure codes to ignore in CI
v0.5.x выдает находки с кодами проблем и JSON `ScanPathResult` с привязкой к путям. См. [справочник CLI v0.5.x](https://github.com/snyk/agent-scan/blob/HEAD/docs/cli-reference.md#agent-scan-v05x) и [справочник кодов проблем](https://github.com/snyk/agent-scan/blob/HEAD/docs/issue-codes.md).
### Agent Scan v0.6 и более поздние версии```text
--analysis-url URL Defaults to the 2026-07-10 analysis API
--ignore-risks NAMES Comma-separated risk names to omit from output and CI evaluation
--ignore-failure-codes CODES Comma-separated X codes to omit from CI evaluation
--show-full-discovery List every MCP entity and skill file instead of compact scan summaries
v0.6 и более поздние версии генерируют оценённые индикаторы риска и JSON scan_path_responses. Вывод сканирования в удобочитаемом формате по умолчанию компактен; --show-full-discovery расширяет его, не изменяя JSON или вывод inspect. См. справку по CLI для v0.6 и более поздних версий, справку по рискам и справку по кодам ошибок.
snyk-agent-scan
snyk-agent-scan ~/custom/config.json snyk-agent-scan ~/path/to/my/SKILL.md
snyk-agent-scan inspect
snyk-agent-scan --ci --dangerously-run-mcp-servers
## Демонстрация
Этот репозиторий содержит уязвимый MCP-сервер, который демонстрирует результаты проверок безопасности Model Context Protocol, о которых сообщает Agent Scan.
Как продемонстрировать результаты проверок безопасности MCP?
1. Клонируйте этот репозиторий
2. Создайте файл конфигурации `mcp.json` в корневом каталоге клонированного git-репозитория со следующим содержимым:```jsonc
{
"mcpServers": {
"Demo MCP Server": {
"type": "stdio",
"command": "uv",
"args": ["run", "mcp", "run", "demoserver/server.py"],
},
},
}
Запустите соответствующую версию:
uvx --python 3.13 [email protected] scan mcp.jsonuvx --python 3.13 snyk-agent-scan@latest scan mcp.jsonПримечание: если вы разместите путь к файлу конфигурации mcp.json в другом месте, измените путь args в конфигурации MCP-сервера, чтобы он отражал путь к MCP-серверу (demoserver/server.py), а также команду uvx, которая запускает Agent Scan с правильным путём к mcp.json.
В настоящее время Agent Scan не принимает внешние контрибуции.
Мы приветствуем предложения, отчёты об ошибках и запросы на новые функции в виде GitHub issues.
Чтобы запустить Agent Scan из исходного кода, выполните следующие шаги:```bash uv run pip install -e . uv run -m src.agent_scan.cli
## Включение результатов Agent Scan в ваш собственный проект / реестр
Если вы хотите включить результаты Agent Scan в свой проект или реестр, пожалуйста, [свяжитесь с нами](https://evo.ai.snyk.io/#contact-us). Для этого существуют специальные API. Использование стандартного API Agent Scan для крупномасштабного сканирования считается злоупотреблением и приведёт к блокировке вашей учётной записи.
## Документация
- [Индекс документации](https://github.com/snyk/agent-scan/blob/HEAD/docs/README.md) — Версионированная документация для обеих линеек CLI.
- [Справочник по CLI](https://github.com/snyk/agent-scan/blob/HEAD/docs/cli-reference.md) — команды, флаги, опции и переменные окружения для v0.5.x и v0.6 и более поздних версий.
- [Сканирование](https://github.com/snyk/agent-scan/blob/HEAD/docs/scanning.md) — поведение и примеры сканирования для v0.5.x и v0.6 и более поздних версий.
- [Вывод JSON](https://github.com/snyk/agent-scan/blob/HEAD/docs/json-output.md) — вывод с путями в качестве ключей в v0.5.x и схема ответа v0.6.
- [Коды проблем](https://github.com/snyk/agent-scan/blob/HEAD/docs/issue-codes.md) — справочник результатов проверки безопасности `E*` и `W*` для v0.5.x.
- [Справочник по рискам](https://github.com/snyk/agent-scan/blob/HEAD/docs/risks.md) — индикаторы рисков безопасности, оценки и поля доказательств для v0.6.
- [Коды сбоев](https://github.com/snyk/agent-scan/blob/HEAD/docs/failure-codes.md) — сбои при обнаружении, проверке и анализе в v0.6.
## Дополнительное чтение
- [Знакомство с MCP-Scan](https://invariantlabs.ai/blog/introducing-mcp-scan)
- [Атаки отравления инструментов уведомлений безопасности MCP](https://invariantlabs.ai/blog/mcp-security-notification-tool-poisoning-attacks)
- [Эксплуатация WhatsApp MCP](https://invariantlabs.ai/blog/whatsapp-mcp-exploited)
- [Инъекция промптов в MCP](https://simonwillison.net/2025/Apr/9/mcp-prompt-injection/)
- [Анализ токсичных потоков](https://invariantlabs.ai/blog/toxic-flow-analysis)
- [Отчёт о навыках](https://github.com/snyk/agent-scan/blob/HEAD/.github/reports/skills-report.pdf)
## Журнал изменений
См. [CHANGELOG.md](https://github.com/snyk/agent-scan/blob/HEAD/CHANGELOG.md).
| Агент | macOS MCP | macOS Навыки | Linux MCP | Linux Навыки | Windows MCP | Windows Навыки |
|---|
| Windsurf | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cursor | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| VS Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Claude Desktop | ✓ | ✗ | — | — | ✓ | ✗ |
| Claude Code | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini CLI | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenClaw | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Amp | ✗ | ✓ | ✗ | ✓ | ✗ | ✓ |
| Kiro | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Antigravity | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ | — | — |
| Amazon Q | ✓ | ✗ | ✓ | ✗ | ✓ (WSL) | ✗ |
| Агент | Системные навыки | Системные серверы | Пользовательские навыки | Пользовательские серверы | Проект / рабочая область навыки | Проект / рабочая область серверы | Расширение / плагин навыки | Расширение / плагин серверы |
|---|
| Windsurf | ✓ | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Cursor | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| VS Code | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Claude Desktop | N/A | N/A | ✗ | ✓ | N/A | N/A | N/A | ✗ |
| Claude Code | ✗ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Gemini CLI | N/A | ✗ | ✓ | ✓ | ✗ | ✗ | ✗ | ✗ |
| OpenClaw | N/A | N/A | ✓ | ✗ | ✓ † | N/A | ✗ | ✗ |
| Amp | N/A | ✗ | ✓ | ✗ | ✗ ‡ | ✗ | ✗ | ✗ |
| Kiro | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| OpenCode | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | N/A | N/A |
| Antigravity | N/A | N/A | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Codex | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Amazon Q | N/A | N/A | N/A | ✓ | N/A | ✗ | N/A | N/A |