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посмотрите следующее видео, где я пошагово разбираю этот процесс.