Shannon: Опенсорсный ИИ-пентестер на базе Claude Code

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Это Shannon — автономный ИИ-пентестер с открытым исходным кодом, который анализирует код и проводит
00:00:05реальные эксплойты через автоматизацию браузера для поиска любых уязвимостей: от подделки
00:00:11запросов на стороне сервера до межсайтового скриптинга и SQL-инъекций. Он предоставляет детальный
00:00:17и комплексный отчет о безопасности без ложных срабатываний. Но после анонса Claude
00:00:22Code Security и с учетом того, что Shannon построен на Claude SDK (то есть нельзя использовать
00:00:27личную подписку), есть ли смысл изучать то, что может скоро исчезнуть?
00:00:31Подписывайтесь, и давайте во всем разберемся.
00:00:32На одной из прошлых работ мы платили тысячи долларов внешним пентестерам перед
00:00:38крупным релизом только для того, чтобы найти баги, исправить их и снова платить за проверку,
00:00:43теряя уйму времени и, конечно же, денег. Но Shannon создан как раз для решения этой проблемы.
00:00:48Вы можете запускать его сколько угодно раз. Можно даже встроить его в CI/CD конвейер и запускать
00:00:53автоматически. И так как это опенсорс, он бесплатен. Хотя есть и платная версия,
00:00:58о которой мы поговорим позже. Как человек, не являющийся экспертом по ИБ, я лучше прогоню проект
00:01:03через Shannon, чем буду запускать Kali Linux. Давайте посмотрим на Shannon в деле. Он построен
00:01:08на базе Anthropic Agent SDK, поэтому для работы вам понадобится API-ключ Claude. К сожалению,
00:01:13обычная подписка не подойдет. Я установил его на VPS под пользователем без root-прав и
00:01:20собираюсь протестировать на OWASP Juice Shop — приложении, специально созданном с кучей уязвимостей
00:01:25для тестов. Я уже клонировал репозиторий Shannon, он вам тоже понадобится, если захотите
00:01:30запустить его. Чтобы всё заработало, ваш целевой репозиторий должен находиться внутри
00:01:34директории “repos” проекта Shannon. Juice Shop уже там. Пока приложение Juice Shop запущено,
00:01:39я выполню команду, которая подключится к локальному приложению для тестов в браузере
00:01:44и просканирует код в папке repos. Если вы запускаете Shannon впервые,
00:01:50так как он использует Docker Compose, ему сначала придется скачать
00:01:54образы из Docker Hub. Но поскольку я это уже сделал, мы сразу переходим сюда.
00:01:58Мы получаем ссылку на воркфлоу Temporal и можем просмотреть его через веб-интерфейс,
00:02:03где видны все этапы. Или же можно запустить команду для просмотра логов в реальном времени,
00:02:07что я иногда предпочитаю, так как веб-интерфейс не всегда показывает полную информацию.
00:02:12Но стоп, что такое Temporal? Мы же вроде говорили о Shannon. Что ж,
00:02:16пентест Shannon может длиться часами в зависимости от размера проекта, а Temporal
00:02:21гарантирует надежное выполнение сценария. Если ваш компьютер зависнет на середине теста
00:02:26или закончатся облачные кредиты, вы не потеряете прогресс. Temporal
00:02:32запоминает, на чем вы остановились, и перезапускает Shannon с контрольной точки. Напишите
00:02:36в комментариях, если хотите отдельное видео о Temporal, но он также управляет всеми фазами
00:02:42и действиями Shannon. И хотя фаз всего пять, внутри них происходит много интересного.
00:02:47Позвольте показать. Всё начинается с фазы проверки (pre-flight), которая сверяет API-ключи,
00:02:53готовность Docker-контейнеров и наличие репозитория. Затем этап предварительной разведки,
00:03:00который анализирует код, чтобы понять работу приложения: архитектуру, точки входа
00:03:05и паттерны безопасности. Далее идет основная стадия разведки (recon), которая сильно отличается
00:03:12от предыдущей, так как здесь используется Playwright для навигации. Агент будет нажимать кнопки,
00:03:18заполнять формы, отслеживать сетевые запросы, делать скриншоты и изучать куки,
00:03:24фактически составляя карту функций приложения. В четвертой фазе запускаются пять параллельных потоков.
00:03:31Сначала идут уязвимости и эксплойты, связанные с инъекциями, затем — межсайтовый скриптинг,
00:03:38затем аутентификация и подделка запросов на стороне сервера (SSRF). И наконец — авторизация,
00:03:45то есть доступ к конфиденциальным данным или чужой информации. Всё это происходит
00:03:52параллельно на пяти разных агентах для поиска уязвимостей и еще пяти для эксплойтов.
00:03:59И наконец, пятая фаза объединяет результаты последних пяти проверок в комплексный отчет.
00:04:07Кстати об отчете, давайте посмотрим, как идет наш пентест. Спустя почти два с половиной часа
00:04:12процесс завершен. Видно, что всё началось с валидации (pre-flight),
00:04:17перешло к предварительной разведке и основному агенту разведки. А здесь запускаются
00:04:25проверки уязвимостей: инъекции, XSS, авторизация и SSRF.
00:04:31Заметьте, на некоторых этапах линия не сплошная. Это потому, что системе пришлось
00:04:36делать повторные попытки, когда у меня закончились кредиты. Тут стоит цифра 2, а на других
00:04:40повторов не было. Возможно, тест прошел бы быстрее, если бы не эти задержки,
00:04:46но вряд ли меньше чем за два часа. В любом случае, после пяти проверок уязвимостей
00:04:51система переходит к пяти проверкам эксплойтов. Мы видим SSRF,
00:04:56эксплойт авторизации, инъекции и так далее. Как только всё готово,
00:05:02а эксплойт авторизации длился дольше всех, агент отчетов подводит итоги.
00:05:07Конечно, мы могли бы развернуть каждый пункт, чтобы увидеть больше деталей,
00:05:13но я не эксперт в Temporal, и уверен, что в документации гораздо больше информации
00:05:17о работе платформы. Но давайте взглянем на финальный отчет, который создал Shannon.
00:05:22В директории “deliverables” нашего проекта Juice Shop мы видим список
00:05:28всех созданных отчетов. Их гораздо больше, чем я ожидал. Сначала посмотрим на этот —
00:05:33анализ авторизации. Сверху идет сводка, а чуть ниже
00:05:37указано, что обнаружено 11 критических уязвимостей, и перечислены их типы.
00:05:43Например, ни одна из шести точек входа не использовала HTTPS, что логично, так как запуск
00:05:47был локальным. Также отсутствовал надлежащий контроль CUSP.
00:05:52И у точек входа не было ограничений по количеству запросов (rate limits). Всё очень
00:05:56детально. Если прокрутить вниз, можно увидеть конкретные проблемы, места их возникновения
00:06:01и вызвавшие их эндпоинты. Я не буду утомлять вас разбором каждого
00:06:05отчета, давайте перейдем к итоговому резюме — комплексному отчету об оценке безопасности.
00:06:10В нем указаны детали об использованной модели и объеме проекта. А если
00:06:15прокрутить ниже, мы увидим 4 критические уязвимости авторизации, которые были
00:06:21полностью реализованы через эксплойты. Это впечатляет, но посмотрите сюда.
00:06:26Дальше в отчете идет резюме по каждой из них. Вот первая — IDOR (небезопасная прямая ссылка),
00:06:31и ниже показано, как именно злоумышленник может это использовать. Приведена конкретная
00:06:38команда curl с параметрами и типом данных, которые можно извлечь. И такая
00:06:43детализация есть для каждой уязвимости, что показывает, насколько
00:06:48тщательно проводилась оценка. Если вам интересно, я оставлю ссылку на все
00:06:54отчеты в описании. Но два с половиной часа — это долго для сканирования репозитория через
00:06:59Claude Sonnet. Могла бы версия Shannon Pro чем-то помочь? Похоже,
00:07:04что Pro не влияет на скорость, но дает другие преимущества, например, оценку по шкале CVSS,
00:07:09которой нет в бесплатной версии. Там есть поддержка CI/CD, доступ по API. И что
00:07:16важнее для корпоративных пользователей — всё, что нужно для комплаенса: отчетность
00:07:22по стандартам OWASP, SOC 2 и PCI DSS. И хотя два с половиной часа — это долго,
00:07:27я изучил вопрос и выяснил, что первый запуск Shannon самый долгий, а
00:07:32последующие проходят гораздо быстрее. Теперь я знаю, о чем вы думаете. Почти два с половиной часа
00:07:37работы Claude Sonnet 3.5 на один пентест... Сколько же это стоило? Скажем так — немало.
00:07:43Я пополнил баланс на 66 долларов, и вот сколько осталось. То есть почти 60 долларов
00:07:50в кредитах Claude ушло на этот тест. Это дешевле, чем нанимать человека,
00:07:55но всё равно приличная сумма. Мне бы очень хотелось использовать подписку Claude Pro или Max,
00:08:00что сделало бы процесс намного дешевле. Надеюсь, Claude Code Security позволит это,
00:08:05когда выйдет официально. Если только команда Keygraph не перепишет Shannon на базе
00:08:10OpenAI Agent SDK или Vercel AI SDK, которые позволяют использовать больше разных моделей. Но в целом,
00:08:16если вы стартап и не хотите тратить огромные деньги на пентестера-человека, то Shannon —
00:08:21отличная альтернатива. Если вы инди-хакер с ограниченным бюджетом, возможно, стоит подождать
00:08:26и сначала выпустить продукт, чтобы увидеть спрос. И раз уж мы заговорили об ИИ и безопасности,
00:08:30если хотите узнать, как безопасно установить Open WebUI на VPS,
00:08:34посмотрите следующее видео, где я пошагово разбираю этот процесс.

Key Takeaway

Shannon представляет собой мощную и экономичную альтернативу традиционному пентестингу, позволяя стартапам автоматизировать поиск и подтверждение уязвимостей с помощью ИИ-агентов.

Highlights

Shannon — это автономный ИИ-пентестер с открытым исходным кодом, использующий Claude SDK для анализа кода и автоматизации браузера.

Инструмент интегрируется с Temporal для обеспечения отказоустойчивости и сохранения прогресса при длительных проверках.

Процесс тестирования включает пять фаз: от предварительной разведки до создания детализированных отчетов с реальными эксплойтами.

В ходе теста на приложении OWASP Juice Shop было выявлено 11 критических уязвимостей, включая IDOR и отсутствие лимитов запросов.

Стоимость одного глубокого сканирования составила около 60 долларов в токенах Anthropic, что дешевле услуг живого специалиста.

Версия Shannon Pro предлагает дополнительные функции для корпоративного комплаенса, такие как отчеты по стандартам SOC 2 и PCI DSS.

Timeline

Введение и концепция Shannon

Автор представляет Shannon как автономный инструмент для поиска уязвимостей, таких как SQL-инъекции и SSRF. Система уникальна тем, что она не просто анализирует текст кода, но и проводит реальные атаки через автоматизацию браузера. Инструмент построен на базе Claude SDK, что накладывает определенные ограничения на использование личных подписок. В начале ролика ставится вопрос о жизнеспособности проекта на фоне анонсов официальных защитных решений от Anthropic. Это вступление задает контекст для дальнейшего технического разбора возможностей программы.

Экономическая выгода и технические требования

Спикер делится личным опытом работы, где компании приходилось тратить тысячи долларов на внешних пентестеров перед каждым релизом. Shannon решает эту проблему, позволяя запускать проверки неограниченное количество раз, в том числе внутри CI/CD конвейеров. Для работы программы требуется API-ключ Claude и установка через Docker Compose в среде без root-прав. Тестирование проводится на специально уязвимом приложении OWASP Juice Shop, которое клонируется в рабочую директорию. Автор подчеркивает, что это решение идеально подходит для тех, кто не является экспертом в Kali Linux.

Роль Temporal и архитектура пяти фаз

Важной частью инфраструктуры Shannon является платформа Temporal, которая управляет рабочими процессами и гарантирует их выполнение. Поскольку пентест может длиться часами, Temporal позволяет продолжить работу с контрольной точки в случае сбоя или нехватки кредитов. Весь процесс разделен на пять ключевых фаз: проверка готовности, предварительный анализ архитектуры, активная разведка через Playwright, выполнение эксплойтов и финальная отчетность. На четвертой стадии запускаются пять параллельных агентов, каждый из которых специализируется на своем типе атак, от XSS до авторизации. Такое разделение труда обеспечивает высокую точность и глубину сканирования кода и интерфейса.

Анализ результатов и детальные отчеты

После двух с половиной часов работы система формирует пакет документов в директории deliverables. Итоговый отчет включает в себя подробное резюме с описанием критических уязвимостей, таких как небезопасные прямые ссылки (IDOR). Каждая находка сопровождается конкретными примерами команд curl, которые позволяют разработчику мгновенно воспроизвести баг. Система выявила отсутствие лимитов на эндпоинтах и использование незащищенного протокола HTTP. Автор выражает восхищение уровнем детализации, отмечая, что ИИ-агент фактически выполняет работу квалифицированного хакера.

Стоимость, Pro-версия и выводы

В заключительной части обсуждается финансовая сторона вопроса: один полноценный тест обошелся автору примерно в 60 долларов в API-кредитах Claude. Хотя это значительно дешевле найма человека, для индивидуальных разработчиков сумма может быть ощутимой. Платная версия Shannon Pro предлагает функции для бизнеса, включая отчетность по стандартам безопасности SOC 2 и PCI DSS. Автор выражает надежду на будущую поддержку других моделей через Vercel AI SDK для снижения стоимости. В целом, Shannon рекомендуется стартапам как эффективный способ обеспечить безопасность продукта перед выходом на рынок.

Community Posts

View all posts