Shannon(KeygraphHQ)は、まずソースコードを読んで攻撃経路を計画してから実exploitを実行する、white-box(白箱)設計のAIペンテストエージェントです。AIエージェントが実際にアプリを攻撃してPoC(概念実証)で脆弱性を裏付ける設計自体はすでに珍しくありませんが、多くのOSSは実アプリを外側から動かして探るblack-box(黒箱)寄りの探索から攻撃を始めます。Shannonはこれとは逆の順序を採ります。GitHubスター数は46,780(2026年8月14日時点)に達し、Trendshiftにも急上昇中OSSとして掲載されています。
- ・正体:Keygraph社が開発するwhite-box設計のOSS AIペンテストエージェント(AGPL-3.0)。GitHubスター46,780・fork 5,401・contributor 7名(2026年8月14日実測)。
- ・何ができる:対象のソースコードを静的解析して攻撃経路を計画 → その経路に沿ってexploitを実際に実行 → 再現できたものだけをレポートする。
- ・何を解決する:black-box型AIペンテスターの「未知の入口を網羅的に試す」ことによる非効率と、静的スキャナ単体の誤検知の多さ。
- ・何を代替できる:black-box型の動的探索が苦手な、コードを読まないと見えない脆弱性(設計レベルの権限昇格・ビジネスロジックの欠陥)の発見補助。
- ・実行環境:Docker(workerコンテナ)+ Node.js 18以上+ Anthropic/OpenAI/xAI/AWS Bedrock いずれかのAPIキーが必須。
- ・注意:許可のない対象への実行は違法。AGPL-3.0はコピーレフトが強く、商用・非公開改変には利用条件の確認が要る。
開発者向けセキュリティ全般の考え方は、まずサプライチェーンセキュリティ2026|攻撃手法・防御ツール・実践チェックリストで土台を掴んでおくと、Shannonの位置づけが理解しやすくなります。
Shannonとは——ソースコードを読んでから攻撃するAIペンテスター
Shannonは、TypeScriptで実装されたAIペンテストエージェントです。攻撃前にソースコード解析を行うwhite-box pentesting(白箱型ペンテスト)を採用している点が最大の設計上の特徴です。開発元のKeygraphは、本リポジトリ(Shannon Open Source)を無償OSSとして公開する一方、同じエンジンを強化した継続的ペンテストSaaS「Keygraph platform」を商用展開しています。専任チームが開発を続けているため、star数だけが伸びて開発が止まる「個人プロジェクトの放置リスク」は小さいと言えます。
最大の特徴は、README「What is Shannon?」「Key Capabilities」で明記されているwhite-box attack planningです。動的に対象を探りながら攻撃していく方式ではなく、次の順序で進みます。
・対象のソースコードを静的に読み込み、コードから攻撃可能な経路を特定する
・特定した経路について攻撃計画を立てる
・計画に沿ってDockerサンドボックス内でexploitを実際に実行する
・再現できた(=実際に成立した)ものだけをレポートに残す
「攻撃経路をコードから計画してから実行する」という順序自体が、後述するStrixのような既存OSSとの最大の違いです。無償のOSS版と商用のKeygraph platformは同じ攻撃計画エンジンを共有していますが、OSS版は単発のスキャン実行が中心である一方、Keygraph platformは継続的なペンテスト(continuous pentesting)としてスケジュール実行や結果の蓄積・比較を担う位置づけになっています。単発で対象を検査したいのか、継続的に監視したいのかで、OSS版とSaaS版のどちらを選ぶかが変わります。
white-box vs black-box——Strixとの設計思想の違い
当サイトでは既に、AIエージェントが実際にアプリを攻撃してPoCで脆弱性を裏付けるOSSとしてStrixとは|AIが実際に攻めてPoCで裏取りするOSSペンテスターを実測で解説を解説しています。Shannonの「実際に攻めてPoCで確認する」という骨格自体はStrixと共通していますが、攻撃の起点が異なります。
| 項目 | Shannon(white-box) | Strix(black-box寄り) |
|---|---|---|
| 攻撃対象の特定方法 | ソースコードの静的解析で経路を計画 | 実アプリの外側から動的に探索 |
| ライセンス | AGPL-3.0 | Apache-2.0 |
| GitHubスター数 | 46,780 | 51,839 |
| contributor数 | 7名 | —(Keygraph社主導) |
| 得意な脆弱性 | 設計レベルの欠陥(コードを読まないと見えないもの) | 外部から観測できる挙動ベースの脆弱性 |
| 前提 | 対象のソースコードへのアクセスが必要 | 対象アプリのURLがあれば探索可能 |
(★数・ライセンスは各リポジトリの2026年8月時点の実測値)
white-box設計は、ソースコードへのアクセスがある内製アプリの検査に向く一方、対象のコードを読めない外部SaaS等の検査には原理的に使えません。逆にblack-box寄りの探索は対象コードが無くても動く代わりに、コードを読まないと分からない設計レベルの欠陥は見落としやすくなります。どちらか一方が優れているというより、検査対象がソースコードを読めるかどうかで使い分けるのが実務的な判断です。
AIペンテスト系OSSは他にも複数存在しますが、実装形態はそれぞれ異なります。NeuroSploit解説|100種の脆弱性に対応するAI駆動の自律ペンテストOSSを設計と防御視点で読むは100種類の脆弱性への対応を謳う自律ペンテストOSS(MIT)で、開発規模はShannonより小さめです。Cybersecurity AI(CAI)は単体エージェントというよりペンテスト用フレームワークに近く、Claude Code向けサブエージェント定義集であるpentest-ai-agentsとも実装のレイヤーが異なります。OWASP APTS|AIエージェント時代の自律型ペネトレーションテスト基準を読むは個別ツールではなく、この種のAIペンテストエージェント全体が満たすべき標準規格の解説です。乱立するAIペンテストOSSを比較する際は、「実装形態(単体CLI/フレームワーク/サブエージェント集)」と「攻撃の起点(white-box/black-box)」の2軸で整理すると位置づけが把握しやすくなります。
① 何ができる:ソースコードを解析して攻撃経路を計画し、実exploitで裏付けを取る ② 何を解決する:black-box探索の非効率さと、コードを読まないと見えない脆弱性の見落とし ③ 何を代替できる:内製アプリに対する、設計レベルの欠陥に強いペンテスト工程の一部
Shannonのインストールと実行——Quick Start
Shannonの実行にはDocker(workerコンテナ)とNode.js 18以上、そしてAIプロバイダのAPIキーが必要です。README記載のQuick Startは以下の流れです。
npx @keygraph/shannon setup
セットアップ完了後、対象アプリのURLとリポジトリのローカルパスを指定して実行します。
npx @keygraph/shannon start -u https://your-app.com -r /path/to/your-repo
-r オプションでソースコードのパスを渡す点が、URLだけで動くblack-box型のOSSとの実行フロー上の違いです。ソースコードを渡さないと、white-box設計の前提である「攻撃経路の計画」自体が成立しません。
リポジトリにはOWASP Juice Shop・c{api}tal API・OWASP crAPIといった意図的に脆弱なアプリを対象にしたサンプルレポート(sample-reports)が同梱されています。実行結果のレポート構造を事前に把握したい場合は、実際に手元でスキャンを回す前にこのサンプルを読むと、どの程度の粒度でexploitの再現手順が記載されるかが分かります。
警告(README原文):対象は「自分が所有する、または書面で許可を得たアプリ・リポジトリ」のみに限定してください。許可のない対象への実行的なテストは、日本を含む多くの国で法的リスクを伴います。
安全な運用——許可・スコープ・クレデンシャルの扱い
Shannonのようなexploit実行型のツールを自組織の環境に持ち込む以上、対策として最低限おさえておくべき運用ポイントがあります。
・許可されたスコープ以外では実行しない:README原文が明記する通り、対象は自分が所有するか書面で許可を得たものに限る
・APIキー・クレデンシャルを対象と同じ環境に置かない:AIプロバイダのAPIキーはShannonの実行環境専用に分離し、対象アプリの認証情報とは隔離する
・Dockerのworkerコンテナの権限を最小化する:exploit実行はサンドボックス内で完結させ、ホスト環境への影響範囲を限定する
・AIプロバイダ側のセーフガードを事前に確認する:AnthropicとOpenAIはサイバーセキュリティ用途に対してリアルタイムの安全確認を適用しており、実行中にスキャンが中断される可能性がある
なお、READMEにはClaude Codeサブスクリプション経由の利用がv1.9.0で対応終了し、以降のバージョン(Claude Agent SDK版)ではサブスクリプション利用に非対応になったという記載がありました。バージョンに依存する挙動のため、導入時は使用する版のREADMEで現行の対応状況を確認するのが確実です。
AIプロバイダ側のセーフガードは、Shannonというツール固有の制限ではなく、Anthropic・OpenAIそれぞれが提供するAPI利用規約レベルの安全対策です。README「Cyber safeguards cleared with your provider」の記載通り、サイバーセキュリティ関連のプロンプト・出力に対してプロバイダ側のフィルタが作動することがあり、確認事項への同意や利用制限によってスキャンが中断される可能性があります。これは対象への攻撃を防ぐための仕組みではなく、AIプロバイダが自社モデルの悪用を防ぐための一般的な安全機構である点を理解しておくと、実行時の想定外の中断にも落ち着いて対処できます。
実体評価——star数46,780に対しcontributorは7名
star数(46,780)に対してcontributorは7名と少数です。ただしこれは「star数と実体の乖離」ではなく、Keygraph社が専任で開発する企業主導プロジェクトの典型的な形です。判断材料になる実測値を並べると次の通りです。
・最新リリースはv2.4.0(2026年8月10日公開)で、リリース数は累計16本
・最終コミット(push)は2026年8月12日で、直近2日以内の活動がある
・メジャーバージョン2に到達済みで、pre-1.0特有の破壊的変更リスクは低い
・Discordコミュニティが存在し、企業サポートによる継続開発が見込める
star数だけを見て「割にコミッターが少ない=放置リスク」と早合点せず、直近のpush日・リリース頻度・開発体制を合わせて確認するのが実務的な読み方です。
開発タイムラインをGitHub API実測ベースで並べると次の通りです(総コミット数はページング上限のため未確認)。
・v2.4.0公開:2026年8月10日
・最終push(最新コミット):2026年8月12日
・本記事の実測日:2026年8月14日
ライセンスの注意点——AGPL-3.0はコピーレフトが強い
ShannonはAGPL-3.0ライセンスです。README・LICENSEファイルの双方でAGPL-3.0が明記されており、記載に矛盾はありません。AGPL-3.0はGPL系の中でも特にコピーレフトが強く、改変したコードをネットワーク越しに提供するサービスとして使う場合、その改変部分のソースコード開示が求められる点に注意が必要です。商用・非公開改変での利用を検討する場合は、README記載の通りKeygraph社が別途提供する商用ライセンス契約([email protected])の利用が選択肢になります。
比較対象として挙げたCAI(aliasrobotics/cai)はLICENSEファイル上の表記が NOASSERTION(明示的なライセンス表記なし)であり、こちらも利用前の確認が必要な点は付記しておきます。
まとめ
参照ソース
・KeygraphHQ/shannon(公式リポジトリ・README) — 設計思想・Quick Start・サンプルレポート
・Keygraph公式サイト — Shannon Open SourceとKeygraph platformの位置づけ