Shannon: AI инструмент за пентест по метода на бялата кутия с 41.4K Stars

🤖 Shannon: AI инструмент за пентест по метода на бялата кутия с 41.4K Stars, No PoC No Report
Shannonе автономно работещ AI инструмент за пенетрационно тестване по метода на бялата кутия, насочен към уеб приложения и API:
- 41.4K звезди в GitHub: един от най-популярните проекти с отворен код в областта на сигурността
- No PoC No Report: без PoC не се докладва, нула фалшиви положителни резултата
- 96.15% на бенчмарка XBOW: успеваемост при експлоатацията, която превъзхожда търговските инструменти
- $50 на тест: цена за едно тестване, докладът е готов за 1-1.5 часа
- Тестване по метода на бялата кутия: необходим е достъп до изходния код — анализ на кода плюс динамични атаки
Това еслоят за динамична проверка в инструментариума за сигурност, който запълва празнината, оставаща след традиционния пенетрационен тест.
🔍 Защо съществува Shannon?
Проблемът с празнината в сигурността
Екипът ви използва AI инструменти за програмиране иразгръща код всеки ден, но пенетрационният тест се правиведнъж годишно— през останалите364 дни възниква празнина в сигурносттакой я запълва?
- Традиционните скенери: съобщават за куп „възможни“ уязвимости, които инженерите по сигурността проверяват една по една
- Ръчният пенетрационен тест: отнема седмици и струва десетки хиляди долари
- Празнината в сигурността: през тези 364 дни най-вероятно разгръщате уязвимости в продукционна среда
Отговорът на Shannon
Отговорът на Shannon е: единнапълно автономен пентест агент, който може да чете изходния код, сам да управлява браузър и да провежда атаки и който не докладва нищо, ако не успее да проникне.
⚠️ Не е скенер: No Exploit, No Report
Първата стъпка към разбирането на Shannon
Първата стъпка към разбирането на Shannon е да се изясни какво тяне е:
- Не е DAST: не е инструмент за динамично тестване на сигурността на приложенията
- Не е SAST: не е инструмент за статично тестване на сигурността на приложенията
- Не е съпоставяне по шаблони: не търси известни опасни шаблони
Традиционните инструменти по същество сасъпоставяне по шаблони— сканират кода или HTTP отговорите за известни опасни шаблони и извеждат списък с „предполагаеми уязвимости“.
Основен принцип на дизайна на Shannon
Основният принцип на дизайна на Shannon, изразен с едно изречение:“POC or it didn’t happen”(без PoC сякаш нищо не се е случило):
| Характеристика | Описание |
|---|---|
| Провежда реални атаки | чрез автоматизация на браузъра инжектира SQL, конструира XSS полезни товари, изпраща SSRF заявки |
| Докладва само при успешна експлоатация | в крайния доклад попадат само успешно експлоатираните уязвимости |
| Приложен PoC, готов за копиране | всяка констатирана находка е придружена от PoC код, който може да се копира и постави директно |
| Фалшивите положителни резултати не влизат в доклада | уязвимостите, които не подлежат на експлоатация, се маркират като „фалшива тревога“ или „потенциални“ и не влизат в доклада |
Това означава, че всяка находка, която екипът по сигурност получава,е проверена и възпроизводима.
Тест с OWASP Juice Shop
В предоставения от разработчикаOWASP Juice Shopдоклад от тестването Shannon откринад 20 уязвимости:
- SQL инжекция със заобикаляне на оторизацията(Критична)
- Извличане на данни чрез UNION инжекция(Критична)
- SSRF(Висока)
- XSS(Висока)
- Различни заобикаляния на оторизацията(Висока)
Заслужава да се отбележи, че при други два тестови обекта XSS детекцията на Shannon даденула фалшиви положителни резултата— тя правилно разпозна, че тези приложения имат стабилна защита срещу XSS, и не докладва погрешни констатации.
🔬 Архитектура с петстепенен конвейер
Петстепенен конвейер + паралелни агенти
Техническата архитектура на Shannon се описва с две ключови думи:петстепенен конвейерипаралелни множество агенти:
| Етап | Име | Описание |
|---|---|---|
| Етап 1 | Pre-Recon | Външно сканиране + анализ на изходния код (Nmap, Subfinder, WhatWeb) |
| Етап 2 | Recon | Свързва статичния и динамичния анализ, валидира крайните точки, картира потоците за оторизация |
| Етап 3 | Vulnerability Analysis | 5 паралелни агента, всеки отговаря за отделна категория уязвимости |
| Етап 4 | Exploitation | 5 паралелни агента, които провеждат реални атаки |
| Етап 5 | Reporting | Генерира изпълнителен доклад на ниво пенетрационен тест |
Базов двигател за изводи
Shannon е изградена върхуAnthropic Claude Agent SDKи използва трислойна конфигурация на моделите:
- Claude Haiku 4.5: обобщаване
- Claude Sonnet 4.6: анализ на сигурността
- Claude Opus 4.6: дълбоко разсъждение
📊 5 паралелни агента за категории уязвимости
5 независими анализиращи агента
Shannon стартира едновременно5 независими анализиращи агента, като всеки отговаря за отделна категория уязвимости:
| Агент | Метод | Покрити уязвимости |
|---|---|---|
| Injection | Проследяване на замърсяването Source→Sink | SQL инжекция, инжекция на команди, файлова, шаблонна и при десериализация |
| XSS | Проследяване на замърсяването Sink→Source | Междусайтово скриптиране в контекста на HTML рендирането |
| SSRF | Проследяване на замърсяването Sink→Source | HTTP клиенти, сурови сокети, компоненти за отваряне на URL |
| Auth | Проверка на защитните механизми | Липсващи контроли за сигурност (ограничаване на скоростта, управление на сесиите) |
| Authz | Проверка на защитните механизми | Липсващи проверки за оторизация (хоризонтални/вертикални/контекстуални) |
5-те агентаработят едновременнои не се блокират взаимно. Веднага щом даден анализиращ агент приключи, съответният агент за експлоатация стартира.
Статуси при класификация на уязвимостите
Агентът за експлоатация класифицира всяка находка втри статуса:
- EXPLOITED(експлоатирана): влиза в крайния доклад
- POTENTIAL(потенциална): не влиза в доклада
- FALSE POSITIVE(фалшива тревога): не влиза в доклада
СамоEXPLOITEDвлиза в крайния доклад.
🔥 96.15% на бенчмарка XBOW
Бенчмарк тест XBOW
Shannon постигна набенчмарка XBOWследната успеваемост при експлоатацията —96.15%96.15% (100/104):
| Тип уязвимост | Общо | Успешни | Успеваемост |
|---|---|---|---|
| Broken Authorization | 25 | 25 | 100% |
| SQL Injection | 7 | 7 | 100% |
| Blind SQL Injection | 3 | 3 | 100% |
| SSRF / Misconfiguration | 22 | 21 | 95.45% |
| XSS | 23 | 22 | 95.65% |
| Server-Side Template Injection | 13 | 12 | 92.31% |
| Command Injection | 11 | 10 | 90.91% |
| Общо | 104 | 100 | 96.15% |
Условия на тестването
- Бенчмарк XBOW: 104 приложения с предумишлено вградени уязвимости
- Почистена версия: премахнати са имената на променливите, коментарите и подсказките за пътищата на файловете
- Режим на бялата кутия: Shannon има достъп до изходния код на приложението
Сравнение с търговските инструменти
- Shannon: 96.15% (режим на бялата кутия)
- KinoSec: 92.3% (режим на черната кутия)
- Xfenser AI: 88.5%
- Търговска платформа XBOW: около 85% (черна кутия)
💰 Цена и първи стъпки
Цена
Едно пълно сканиране:
- Време за изпълнение: 1-1.5 часа
- Разходи за API: около $50 USD (при Claude Sonnet 4.6)
- Диапазон: $40-55 в зависимост от цената на модела и сложността на приложението
СравнениеТрадиционен ръчен пенетрационен тест: струва десетки хиляди долари и отнема седмици.
Начини за стартиране
Режим npx(препоръчителен, без инсталация):
# 一次性配置 npx @keygraph/shannon setup # 运行渗透测试 npx @keygraph/shannon start -u https://your-app.com -r /path/to/repo
Локален режим(пълна сборка):
# 克隆仓库 git clone https://github.com/KeygraphHQ/shannon.git cd shannon # 配置 API Key echo "ANTHROPIC_API_KEY=your-key" > .env # 安装和构建 pnpm install && pnpm build # 运行 ./shannon start -u https://your-app.com -r /path/to/repo
Предварителни изисквания
- Docker: среда за изпълнение на контейнери
- Node.js 18+: среда за изпълнение
- Anthropic API Key: препоръчителен
- Достъп до изходния код: необходим за инструмент от типа бяла кутия
🤝 Shannon Lite срещу Shannon Pro
Две версии
| Версия | Лиценз | Предназначение |
|---|---|---|
| Shannon Lite | AGPL-3.0 | Локално тестване на собствените приложения |
| Shannon Pro | Комерсиален | Платформа за AppSec на организационно ниво (SAST + SCA + Pentest) |
Функции на Shannon Pro
Shannon Proе пълнофункционална платформа за сигурност на приложенията:
- Code Property Graph: двигател за статичен анализ
- Тестване на сигурността на бизнес логиката: автоматично откриване на инварианти
- Анализ на достижимостта при SCA: проследяване на достижимостта на CVE
- Откриване на тайни: регулярни изрази + LLM детекция
- Корелация между статичния и динамичния анализ: статичните находки автоматично се подават към динамичния пентест
- CI/CD интеграция: сканиране на GitHub PR
⚠️ Важни указания при употреба
Важни предупреждения
- Абсолютно забранено за използване срещу неоторизирани системи: Shannon провежда реални атаки, неоторизираното сканиране е незаконно
- Не се препоръчва работа в продукционна среда: атаките могат да имат разрушителни последствия
- Хранилището може да съдържа prompt injection срещу AI: това е изрично посочен риск за сигурността от разработчика
- Shannon Lite е инструмент от типа бяла кутия: необходим е достъп до хранилището с изходния код
Риск от халюцинации на LLM
Официален отказ от отговорност: LLM все още могат да халюцинират, необходимо еръчно потвърждаване на легитимността и тежестта на всички находки.
📝 Обобщение
Shannon представя един нововъзникващ модел за инструменти за сигурност:
- No PoC No Report: докладва се само при успешна експлоатация
- 41.4K звезди: един от най-популярните проекти с отворен код в областта на сигурността
- 96.15% на бенчмарка XBOW: успеваемостта при тестовете от типа бяла кутия превъзхожда търговските инструменти
- Петстепенен конвейер: Pre-Recon → Recon → Vuln → Exploit → Report
- 5 паралелни агента: Injection、XSS、SSRF、Auth、Authz
- $50 на тест, 1-1.5 часа: цената е значително по-ниска от тази на ръчния пентест
- Инструмент от типа бяла кутия: необходим е достъп до изходния код
Без PoC не се докладва — Shannon превръща пенетрационния тест в една команда.
GitHub:https://github.com/KeygraphHQ/shannon
Официален сайт:https://keygraph.io