
shannon v2.5.0
Shannon — это автономный ИИ-пентестер белого ящика для веб-приложений и API. Он анализирует ваш исходный код, выявляет векторы атак и запускает реальные эксплойты, чтобы доказать наличие уязвимостей до того, как они попадут в продакшн.
[!NOTE] Shannon 2.0 официально здесь
Shannon - ИИ-пентестер от Keygraph
Shannon — это автономный ИИ-пентестер для веб-приложений и API.
Он анализирует ваш исходный код, выявляет пути атак и выполняет реальные эксплойты, чтобы доказать наличие уязвимостей до того, как они попадут в продакшн.
Этот репозиторий — Shannon Open Source: полноценный агент, запускаемый локально из вашей командной строки.
[!TIP] ИИ-агенты и LLM: начните с llms.txt — краткой карты этого репозитория, или используйте llms-full.txt, где README и документация объединены в один файл.
Оглавление
- Что такое Shannon?
- Shannon в действии
- Быстрый старт
- Ключевые возможности
- Редакции
- Архитектура
- Документация
- Безопасность, область применения и ограничения
- Лицензия
- О компании Keygraph
- Сообщество и поддержка
Что такое Shannon?
Shannon — это автономный ИИ-пентестер, разработанный компанией Keygraph. Он выполняет проверку безопасности веб-приложений и API, лежащих в их основе, сочетая анализ исходного кода с реальной эксплуатацией уязвимостей.
Shannon анализирует исходный код вашего веб-приложения, чтобы выявить потенциальные векторы атак, а затем с помощью автоматизации браузера и инструментов командной строки выполняет реальные эксплойты против запущенного приложения и его API. В итоговый отчёт включаются только уязвимости с рабочим proof-of-concept.
Shannon — это агент. Данный репозиторий — Shannon Open Source, автономный пентестер, который вы запускаете самостоятельно. Тот же Shannon используется и в платформе Keygraph — коммерческом продукте Keygraph для пентестинга. О том, чем они отличаются, см. Редакции.
Почему существует Shannon
Благодаря таким инструментам, как Claude Code и Cursor, ваша команда выпускает код без остановки. А ваш пентест? Он проводится раз в год. Это создаёт огромный пробел в безопасности. В остальные 364 дня вы можете, сами того не зная, поставлять уязвимости в продакшн.
Shannon закрывает этот пробел, предоставляя автоматизированный пентест по требованию, который можно запускать для каждой сборки или релиза.
Shannon в действии
Примеры отчётов о пентесте приложений с намеренно внесёнными уязвимостями, подготовленные Shannon Open Source:
| Цель | Сводка | Отчёт |
|---|---|---|
| OWASP Juice Shop | 20+ уязвимостей, включая обход аутентификации, SQL-инъекции, IDOR и SSRF. | Посмотреть отчёт |
| c{api}tal API | Примерно 15 критических находок и находок высокой степени серьёзности в API, включая внедрение команд, обход аутентификации и mass assignment. | Посмотреть отчёт |
| OWASP crAPI | 15+ критических находок и находок высокой степени серьёзности в областях JWT, инъекций, SSRF и авторизации API. | Посмотреть отчёт |
Быстрый старт
Предварительные требования
- Docker: требуется для контейнера-воркера.
- Node.js 18+: требуется для рекомендуемого рабочего процесса с
npx. - Учётные данные ИИ-провайдера: Anthropic, OpenAI, xAI или AWS Bedrock — либо любой другой провайдер. Рекомендуются модели Claude. Рекомендуемые идентификаторы моделей для каждого провайдера, а также шлюзы и пользовательские базовые URL — в разделе ИИ-провайдеры.
- Защитные меры кибербезопасности, согласованные с провайдером: Anthropic и OpenAI применяют к нагрузкам в сфере кибербезопасности защитные механизмы реального времени, которые могут прервать сканирование на середине выполнения. Перед первым запуском выполните их руководства для легитимных специалистов по безопасности — см. ИИ-провайдеры.
Запуск Shannon
[!WARNING] Shannon активно выполняет эксплойты. Запускайте его только против приложений и сред, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение. Не запускайте Shannon против производственных систем.
# Configure credentials with the interactive wizard.
npx @keygraph/shannon setup
# Run a pentest against a source-available target.
npx @keygraph/shannon start -u https://your-app.com -r /path/to/your-repo
Shannon скачивает образ воркера из Docker Hub, запускает необходимую локальную инфраструктуру, монтирует целевой репозиторий в режиме «только для чтения» внутри эфемерного контейнера-воркера и записывает результаты в локальное рабочее пространство.
О сборке из исходников, сканировании с аутентификацией, настройке для конкретных провайдеров и особенностях платформ см. Документацию.
[!TIP] Предпочитаете подписку вместо API-кредитов?
- OpenAI Codex: последняя версия Shannon поддерживает подписки ChatGPT Plus и Pro. Чтобы начать, следуйте руководству по настройке подписки OpenAI Codex.
- Claude Code: последняя версия Shannon не поддерживает подписки Claude Code. Чтобы использовать версию
1.9.0— финальный релиз, созданный на базе Claude Agent SDK, — следуйте руководству по настройке подписки Claude Code.
Ключевые возможности
- Отчёты с доказательством через эксплуатацию: Shannon сообщает о подтверждённых находках с воспроизводимыми шагами proof-of-concept, а не о предположительных предупреждениях.
- Планирование атак в режиме white-box: Shannon использует анализ исходного кода, чтобы направлять динамическое тестирование и сосредотачиваться на реалистичных путях атак.
- Автономное выполнение: Shannon запускает разведку, анализ уязвимостей, эксплуатацию и формирование отчёта одной командой.
- Тестирование с аутентификацией: файлы конфигурации могут описывать сценарии входа, тестовые учётные данные, TOTP, вход по электронной почте, области фокуса и правила взаимодействия.
- Покрытие по методологии OWASP: Shannon нацелен на эксплуатируемые проблемы Injection, XSS, SSRF, Broken Authentication и Broken Authorization.
- Возобновляемые рабочие пространства: Shannon может возобновлять прерванные запуски без повторного выполнения завершённых агентов.
Редакции
Shannon поставляется в двух вариантах: Shannon Open Source — пентестер, который вы запускаете самостоятельно, и платформа Keygraph — коммерческий продукт для пентестинга, который запускает Shannon непрерывно и замыкает вокруг него полный жизненный цикл AppSec.
Shannon Open Source (этот репозиторий) — автономный пентестер: CLI-агент для white-box-тестирования веб-приложений и API, которыми вы владеете или которые уполномочены тестировать, с доказательством через эксплуатацию. Он читает ваш исходный код, планирует атаки, выполняет реальные эксплойты и сообщает только о том, что может доказать. Он работает по требованию и в этом направлении самодостаточен. Вы указываете ему цель — он проводит пентест и формирует отчёт.
Платформа Keygraph — это корпоративный продукт непрерывного пентестинга на базе Shannon. В платформе Keygraph улучшенная сборка Shannon работает непрерывно в укреплённой, оркестрированной среде, использующей полный стек анализа кода Keygraph. Вокруг этого движка платформа замыкает весь жизненный цикл уязвимости — от анализа до подтверждённого исправления:
- Анализ: SAST на основе Code Property Graph, SCA с проверкой достижимости, секреты, IaC и сканирование контейнеров. Это полноценные средства детектирования сами по себе, а также контекст, который повышает точность атак Shannon.
- Доказательство: автономные пентесты в режимах black-box и white-box с учётом исходного кода превращают кандидатные находки в подтверждённые эксплуатируемые уязвимости, а не в предположительные оповещения.
- Управление: одна каноническая запись на каждую уязвимость в каждом репозитории, дедупликация по всем источникам, назначение ответственных, статусы, отслеживание SLA, дашборды и двунаправленная синхронизация с Jira.
- Исправление и проверка: патчи создаются автоматически и перед передачей повторно тестируются на исправленном коде; они попадают в ваш существующий процесс ревью, а не применяются автоматически.
- Развёртывание: self-hosted и air-gapped среды, строгая модель доступа BYOK (bring-your-own-key) и управляемые заказчиком схемы LLM-шлюзов, чтобы исходный код, результаты и трафик к моделям оставались внутри вашего периметра.
Shannon — это движок доказательства в центре платформы Keygraph. Shannon Open Source даёт вам этот движок для самостоятельного запуска. Платформа Keygraph окружает Shannon непрерывным анализом, управлением находками, исправлением, проверкой и корпоративным развёртыванием.
| Этап жизненного цикла AppSec | Shannon Open Source | Платформа Keygraph |
|---|---|---|
| Анализ | Простое пропускание исходного кода через LLM для планирования атак | Реальный разбор кодовой базы, а также Code Property Graph, SAST, SCA с проверкой достижимости, секреты, IaC и контейнеры |
| Пентест и доказательство | Только white-box, доказательство через эксплуатацию | Расширенный white-box, а также режимы black-box и grey-box, работающие непрерывно |
| Управление находками | Локальный отчёт в формате Markdown | Каноническая система находок: дедупликация по источникам, ответственные, SLA, дашборды, синхронизация с Jira и профессиональные PDF-отчёты уровня пентеста |
| Исправление и проверка | Исправление вручную по отчёту, затем повторный полный скан для проверки | Автоматическое исправление: открывается PR с исправлением, проверка точечным повторным тестом без перезапуска полного сканирования |
| Развёртывание и эксплуатация | Локальный CLI и Docker-воркер | Self-hosted, air-gapped, BYOK, непрерывная работа, корпоративные интеграции |
| Лицензия и поддержка | AGPL-3.0, сообщество | Коммерческая, с поддержкой |
Узнайте больше на сайте Keygraph, прочитайте технический обзор платформы Keygraph, начните бесплатную пробную версию или запишитесь на демонстрацию либо напишите на [email protected].
Архитектура
Shannon использует мультиагентный рабочий процесс, который сочетает анализ исходного кода с эксплуатацией в реальном времени:
┌──────────────────────┐
│ Pre-Reconnaissance │
│ (source code scan) │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ Reconnaissance │
│ (attack surface │
│ mapping) │
└──────────┬───────────┘
│
▼
┌──────────┴───────────┐
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Vuln │ │ Vuln │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
▼ ▼ ▼
┌───────────┐ ┌───────────┐ ┌───────────┐
│ Exploit │ │ Exploit │ │ ... │
│(Injection)│ │ (XSS) │ │ │
└─────┬─────┘ └─────┬─────┘ └─────┬─────┘
│ │ │
└──────┬───────┴─────────────┘
│
▼
┌──────────────────────┐
│ Reporting │
└──────────────────────┘
На высоком уровне:
- Предварительная разведка выявляет в репозитории фреймворки, точки входа, потоки данных и вероятные поверхности атак.
- Разведка исследует запущенное приложение и соотносит поведение во время выполнения с контекстом на уровне кода.
- Анализ уязвимостей запускает специализированных агентов для Injection, XSS, SSRF, Authentication и Authorization.
- Эксплуатация выполняет реальные атаки proof-of-concept и отбрасывает гипотезы, которые невозможно доказать.
- Формирование отчёта собирает подтверждённые находки, доказательства и рекомендации по устранению в итоговый отчёт в формате Markdown.
Каждое сканирование выполняется в эфемерном Docker-контейнере с изолированным рабочим пространством и оркестрацией при каждом вызове.
Документация
Для операционных деталей используйте эти руководства:
| Руководство | Для чего используется |
|---|---|
| Сборка из исходников и команды CLI | Клонирование, сборка, часто используемые команды, пути вывода файлов и локальная разработка. |
| Конфигурация | Тестирование с аутентификацией, сценарии входа, правила взаимодействия и фильтры отчётов. |
| ИИ-провайдеры | Выбор модели, поддерживаемые провайдеры (Anthropic, OpenAI, xAI, AWS Bedrock и любой другой провайдер, поддерживаемый Pi) и пользовательские шлюзы. |
| Платформы и сеть | Windows/WSL2, Linux, macOS, сеть Docker, локальные приложения и пользовательские hostname. |
| Рабочие пространства и возобновление | Именование рабочих пространств, возобновление прерванных сканирований и хранение рабочих пространств. |
| Безопасность и ограничения | Требования к авторизованному использованию, правила работы вне продакшна, изменяющие состояние эффекты, стоимость и особенности моделей. |
| Покрытие и дорожная карта | Текущее покрытие уязвимостей и запланированные работы. |
| Платформа Keygraph | Платформа непрерывного агентного пентестинга: анализ кода, тестирование black-box и white-box, управление находками, исправление, проверка и корпоративное развёртывание. |
Безопасность, область применения и ограничения
Shannon — это не пассивный сканер. Его агенты эксплуатации могут создавать пользователей, отправлять формы, изменять состояние приложения, инициировать исходящие запросы и иным образом воздействовать на целевую систему. Используйте песочницы, стейджинг-среды или локальные среды разработки с одноразовыми данными.
Вы несёте ответственность за законное и этичное использование Shannon. Не направляйте Shannon на системы, репозитории или приложения, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.
Важные ограничения:
- Shannon Open Source сосредоточен на активно эксплуатируемых проблемах, таких как Injection, XSS, SSRF, Broken Authentication и Broken Authorization. Более широкое покрытие статическим анализом, включая уязвимые зависимости и небезопасные конфигурации, обеспечивается через платформу Keygraph.
- Находки по-прежнему требуют проверки человеком. Отчёты, созданные LLM, могут содержать слабо обоснованные или некорректные детали.
- Shannon официально поддерживается с моделями Claude. Меньшие, альтернативные или проксируемые модели, отличные от Claude, могут работать неполно или нестабильно.
- Полный запуск может занять примерно 1–1.5 часа и может повлечь расходы на LLM API в зависимости от тарифов модели и сложности приложения.
- Не сканируйте непроверенные или враждебные кодовые базы. Инструменты на основе ИИ, читающие исходный код, могут быть подвержены промпт-инъекциям.
Прежде чем запускать Shannon в новой среде, прочитайте полное руководство Безопасность и ограничения.
Лицензия
Shannon Open Source распространяется под лицензией GNU Affero General Public License v3.0.
Коммерческое и корпоративное лицензирование доступно для организаций, которым нужны иные условия лицензии, коммерческая поддержка, частное распространение, использование в рамках управляемого сервиса или более широкие возможности развёртывания, включая платформу Keygraph.
По вопросам коммерческого лицензирования обращайтесь: [email protected].
О компании Keygraph
Keygraph — компания, стоящая за Shannon. Она также создаёт платформу Keygraph — коммерческий продукт для агентного пентестинга, который замыкает полный жизненный цикл AppSec и использует улучшенную сборку Shannon в качестве движка пентестинга.
Сообщество и поддержка
Офисные часы сообщества доступны для практической помощи по багам, развёртыванию и вопросам конфигурации.
- США/ЕС: четверг, 10:00 AM PT
- Азия: четверг, 2:00 PM IST
- Забронировать слот
Присоединяйтесь к Discord, чтобы задавать вопросы, делиться отзывами и общаться с другими пользователями Shannon.
В настоящее время Keygraph не принимает внешних вкладов в код. Приветствуются issues с отчётами об ошибках и запросами функций:
Оставайтесь на связи:
Создано компанией Keygraph