Shannon:Claude Codeを搭載したオープンソースAIペネトレーションテスト・ツール

BBetter Stack
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00こちらはShannon。オープンソースの自律型AIペンテスターです。コードを分析し、
00:00:05ブラウザの自動操作によって、サーバーサイド・リクエスト・フォージェリから
00:00:11クロスサイトスクリプティング、SQLインジェクションなど、あらゆる脆弱性を実地で検証します。
00:00:17偽陽性ゼロの非常に詳細なレポートを作成してくれます。しかし、Claudeの
00:00:22コードセキュリティ機能の発表や、Shannon自体がClaude SDKベースであり、
00:00:27通常のサブスクが使えない点などを考えると、学ぶ価値はあるのでしょうか?
00:00:31チャンネル登録をして、さっそく中身を見ていきましょう。
00:00:32以前の職場では、メジャーリリースの前に外部のペンテスターに
00:00:38多額の費用を払っていました。しかしバグが見つかり、修正後に再テストが必要になり、
00:00:43膨大な時間とコストがかかっていました。Shannonはまさにこの問題を解決します。
00:00:48Shannonは何回でも実行でき、CI/CDパイプラインに組み込んで
00:00:53自動化することも可能です。オープンソースなので無料です。後述する有料版もありますが。
00:00:58セキュリティの専門家でない私にとっては、Kali Linuxを起動するよりも
00:01:03Shannonでプロジェクトをスキャンする方が手軽です。では、実際に動かしてみましょう。
00:01:08ShannonはAnthropic Agent SDKで作られているため、ClaudeのAPIキーが必要です。
00:01:13残念ながらサブスクリプションは使えませんが、VPS上に非ルートユーザーでインストールし、
00:01:20テスト用に多くの脆弱性を含ませてある「OWASP Juice Shop」に対して実行してみます。
00:01:25すでにShannonのリポジトリはクローン済みです。実行にはこれが必要です。
00:01:30また、テストしたいリポジトリをShannonの「repos」ディレクトリ内に
00:01:34入れる必要があります。Juice Shopはここに入れました。アプリを起動した状態で、
00:01:39このコマンドを実行します。ブラウザテスト用にローカルアプリに接続しつつ、
00:01:44ディレクトリ内のコードをスキャンします。Shannonの初回実行時は、
00:01:50Docker Composeを使用しているため、Docker Hubから多くのイメージを
00:01:54プルする必要があります。今回は完了しているので、すぐに開始されます。
00:01:58Temporalワークフローへのリンクが表示され、Web UIでこのように
00:02:03各ステップを確認できます。または、コマンドを実行してログを
00:02:07リアルタイムで見ることもできます。UIより情報が多いので私はこちらが好みです。
00:02:12ところで「Temporal」とは何でしょう?Shannonの話をしていたはずですよね。
00:02:16Shannonのペンテストは、プロジェクト規模により数時間かかることもあります。
00:02:21Temporalは、どんな状況でも実行の耐久性を保証します。PCが途中で
00:02:26クラッシュしたり、クレジットが切れて補充が必要になっても、進捗は失われません。
00:02:32Temporalは中断場所を正確に記憶し、チェックポイントから再開します。
00:02:36Temporalの専用動画が見たい方はコメントを。これはShannonの各フェーズと
00:02:42アクティビティのオーケストレーションも行います。5つのフェーズで多くのことが行われます。
00:02:47お見せしましょう。まずはAPI認証情報やDockerコンテナ、
00:02:53リポジトリの存在を確認する「プリフライト」フェーズです。次に「プレ偵察」ステージで
00:03:00コードを分析して、アーキテクチャ、エントリポイント、セキュリティパターンを把握します。
00:03:05次は実際の「偵察(レコン)」ステージです。プレ偵察とは異なり、
00:03:12ここではPlaywrightを使ってアプリを操作します。ボタンのクリックやフォーム入力を行い、
00:03:18ネットワークリクエストの監視、スクショ撮影、Cookieの確認などを通して機能をマッピングします。
00:03:24そしてフェーズ4では、5つのパイプラインを並行して実行します。1つ目は
00:03:31インジェクション関連の脆弱性とエクスプロイト。次にクロスサイトスクリプティング、
00:03:38そして認証、サーバーサイド・リクエスト・フォージェリ(SSRF)、
00:03:45最後は権限昇格などの認可チェックです。これらすべてが、脆弱性調査用に5つ、
00:03:52エクスプロイト用にさらに5つのエージェントによって並行処理されます。
00:03:59最後にフェーズ5で、これまでの5つのチェック結果を統合し、包括的なレポートを作成します。
00:04:07レポートといえば、テストの進捗を見てみましょう。約2時間半後、
00:04:12全プロセスが完了しました。プリフライト・バリデーションから始まり、
00:04:17プレ偵察、偵察エージェントへと進んだことがわかります。そしてここで、
00:04:25インジェクション、XSS、認可、SSRFなどの脆弱性チェックが走っています。
00:04:31一部の緑色の線が実線でないのは、途中でクレジットが切れて
00:04:36リトライが発生したためです。ここに「2」とありますね。他はリトライなしです。
00:04:40これらがなければ2時間半よりは早かったでしょうが、2時間は切らなかったはずです。
00:04:46脆弱性チェックが終わると、次は5つのエクスプロイト(実証)チェックに移ります。
00:04:51SSRF、認証、インジェクションなどのエクスプロイトが実行されています。
00:04:56認証のエクスプロイトが最も時間がかかっているのがわかります。その後、
00:05:02レポート・エージェントがすべてをまとめます。もちろん、各ステージを
00:05:07展開して詳細を見ることもできますが、私はTemporalの専門家ではありませんし、
00:05:13ドキュメントを読めばもっと使い方がわかるでしょう。では、Shannonが
00:05:17生成した最終レポートを見てみましょう。
00:05:22プロジェクトの「deliverables」ディレクトリに、生成された全レポートがあります。
00:05:28予想以上に多いですね。まずは「認証(auth)分析」レポートを見てみます。
00:05:33上部に要約があり、ここに11件の深刻な脆弱性が
00:05:37特定されたと記されています。内容を確認しましょう。
00:05:436つの認証エンドポイント中、HTTPSが適用されているのはゼロでした。ローカル実行なので
00:05:47当然ですが。また、適切なCORS制御も欠如していました。
00:05:52認証エンドポイントに適切なレート制限もありません。非常に詳細です。
00:05:56スクロールすると、具体的に何が問題で、どこに原因があり、
00:06:01どのアンドポイントに起因するかが示されています。すべては紹介しませんが、
00:06:05「総合セキュリティ評価レポート」というサマリーを見てみましょう。
00:06:10使用モデルやプロジェクトの範囲が記載されています。さらに下へ行くと、
00:06:154つの深刻な認証脆弱性が完全に悪用(エクスプロイト)可能であったことが示されています。
00:06:21実に徹底しています。さらに見てください。レポートの最後には、
00:06:26要約も付いています。これが最初のIDOR(認可制御不備)の項目で、
00:06:31さらに進むと、攻撃者がこれをどう悪用できるかが具体的にわかります。
00:06:38実行すべきcurlコマンドの詳細や、抽出可能な情報の種類まで書かれています。
00:06:43すべての脆弱性に対してこのレベルの詳細情報があり、いかに深く
00:06:48評価が行われたかがわかります。レポート一式へのリンクは概要欄に貼っておきます。
00:06:54しかし、Claude Sonnetがリポジトリをスキャンするのに2時間半は長すぎます。
00:06:59Shannon Proなら解決できるでしょうか?速度に関してはProでも変わらないようですが、
00:07:04無料版にはないCVSSスコアリングの提供などの機能があります。
00:07:09CI/CDパイプライン対応やAPIアクセスも備えています。さらに重要なのは、
00:07:16エンタープライズユーザー向けにOWASP準拠レポートや、
00:07:22SOC 2、PCI DSSなどの対応も含まれている点です。2時間半という時間は長いですが、
00:07:27調べたところ、初回の実行が最も長く、2回目以降は大幅に速くなるそうです。
00:07:32さて、皆さんが気になっていること。Claude Sonnet 3.5を2時間半回して、
00:07:371回のテストにいくらかかったか。……かなりの額です。
00:07:4366ドル分チャージして、残ったのはこれだけです。つまり約60ドル分の
00:07:50クレジットを消費しました。人間を雇うよりは安いですが、決して安価ではありません。
00:07:55Claude ProやMaxのサブスクが使えればもっと安く済んだはずですが、
00:08:00それは今後リリースされる「Claude Code Security」に期待したいところです。
00:08:05あるいは、KeygraphチームがOpenAI Agent SDKやVercel AI SDKで
00:08:10Shannonを書き直し、他モデルを使えるようにしてくれるかですね。総じて、
00:08:16人間のペンテスターに大金を払いたくないスタートアップには、Shannonは良い選択肢です。
00:08:21予算の限られた個人開発者なら、まずはリリースして需要を確かめるのが先かもしれません。
00:08:26AIとセキュリティの話題ついでに、VPSにOpenWebUI(旧OpenClaude)を
00:08:30安全にインストールする方法を知りたい方は、
00:08:34ステップバイステップで解説している次の動画をぜひチェックしてください。

Key Takeaway

Shannonは、ClaudeのAPIを活用して複雑なセキュリティ脆弱性を自動で特定・実証し、詳細なレポートを生成する強力な自律型エージェントですが、実行コストと時間のバランスを考慮した運用が求められます。

Highlights

ShannonはAnthropic Agent SDKで構築された、自律型かつオープンソースのAIペネトレーションテスト・ツールである

Temporalワークフローを採用しており、実行中にクラッシュやクレジット不足が発生してもチェックポイントから再開可能な耐久性を備えている

テストプロセスは5つのフェーズ(プリフライト、プレ偵察、偵察、5つの並列脆弱性スキャン、レポート作成)で構成される

OWASP Juice Shopでの実証実験では、認証不備やCORS制御の欠如など11件の深刻な脆弱性を詳細に特定した

今回の2時間半のテスト実行で約60ドルのAPIコストが発生しており、人間を雇うよりは安価だが個人開発者には高価な側面もある

有料のShannon Pro版では、CVSSスコアリングやSOC 2、PCI DSSなどのエンタープライズ向けコンプライアンスレポート機能が提供される

Timeline

Shannonの概要と開発背景

Shannonは、コード分析からブラウザ操作による実地検証までを行う、オープンソースの自律型AIペンテスターとして紹介されています。従来の外部業者への委託は高コストで時間がかかっていましたが、ShannonはCI/CDパイプラインに組み込んで何度でも実行できるため、開発サイクルの効率化に寄与します。SSRF、XSS、SQLインジェクションといった主要な脆弱性を、偽陽性ゼロでレポート化できる点が大きな特徴です。セキュリティの専門知識がなくても、Kali Linuxを操作するより手軽にプロジェクトをスキャンできる利便性を強調しています。このセクションは、開発者が直面するコストとスピードの課題をAIがどう解決するかを提示しています。

セットアップとテスト環境の構築

実演では、Anthropic Agent SDKを使用するためClaudeのAPIキーが必要であることや、VPS上でのインストール手順が解説されています。脆弱性をあえて含んだ練習用アプリ「OWASP Juice Shop」を対象に、Docker Composeを用いてスキャンを開始する具体的な流れが示されます。スキャン実行時には、ブラウザテスト用のローカル接続とディレクトリ内のソースコード分析が並行して行われます。TemporalワークフローのWeb UI、またはログを確認できるCLIのどちらかで進捗を監視できる仕組みになっています。初回実行時にはDocker Hubから多くのイメージをプルする必要があるため、事前の準備が重要であることが述べられています。

Temporalによる実行耐久性と5つのフェーズ

ペンテストには数時間かかる場合があるため、進捗を失わないためにTemporalというオーケストレーションツールが重要な役割を果たしています。これにより、PCのクラッシュやAPIクレジット切れが起きても、正確に中断した場所から再開できる「耐久性」が保証されます。テストプロセスは、環境を確認する「プリフライト」から始まり、コードを読み解く「プレ偵察」、Playwrightでアプリを操作する「偵察」へと進みます。さらにフェーズ4では、インジェクションやSSRFなどの5つのカテゴリについて、調査用と実証用の計10個のエージェントが並行して動作します。最後にこれらすべての結果を統合し、人間が読みやすい包括的なレポートとして出力するまでの全容が解説されています。

脆弱性レポートの詳細分析と実証結果

約2時間半のテストが完了した後、生成された膨大なレポート群の内容が精査されています。認証分析レポートでは、HTTPSの欠如やレート制限の不備など、11件の深刻な脆弱性が極めて具体的に指摘されています。総合セキュリティ評価レポートでは、どの脆弱性が実際に「エクスプロイト(悪用)」可能であったかが明示され、攻撃の再現手順まで記載されています。具体的には、IDOR(認可制御不備)を突いて情報を抽出するためのcurlコマンドの例などが含まれており、即座に修正アクションに繋げられるレベルの情報量です。このセクションでは、AIが単なる理論上の指摘に留まらず、実証コードまで提供する能力の高さが示されています。

Shannon Proの機能とコスト・実用性の検討

無料版のShannonに対し、Pro版ではCVSSスコアリングやOWASP、SOC 2、PCI DSSといった各種コンプライアンス準拠のレポート機能が追加されることが紹介されています。一方で、今回の1回のテスト(2時間半)で約60ドルという高額なAPIコストが発生した現実的な課題についても触れられています。現状ではClaudeのサブスクリプション枠が利用できないため、APIクレジットの消費が激しい点が、個人開発者にとってのハードルとなります。スタートアップにとっては人件費より安上がりな選択肢ですが、個人の場合はリリース後の需要を確認してから導入するのが賢明かもしれません。最後に、将来的な他モデルへの対応やセキュリティ関連の別動画への誘導を行い、動画を締めくくっています。

Community Posts

View all posts