MENU

Claude Code × MCPで挑む脆弱性調査

はじめに

こんにちは、みらいです。

この記事は、RWPL Advent Calendar 2025 の23日目の記事です。

昨今のAIエージェントは、飛躍的に成長しており、業種を問わず様々な場面で活用されています。

今回はその中でも分野を絞り、OffensiveSecurity領域でどのように活用できるか、実例を踏まえて紹介するというテーマです。

 

 

AIエージェントの利用事例について

まず最初に、私がAIエージェントの利用に強く関心を持つきっかけとなった、3つの事例を紹介します。

AIエージェントを利用してバグバウンティで報奨金を獲得した事例

バグバウンティに興味をお持ちの方はご存知かと思いますが、近年はブロックチェーン関連のバグバウンティプログラムが非常に活発です。

以下の記事は、紹介されている手法を用いて実際に$2,000の報奨金を獲得した事例です。

 

その他、脆弱性調査に特化した自律型AIエージェント「XBOW」がHackerOneのリーダーボードにおいて1位を獲得したことで人間のリサーチャーを上回る圧倒的な報告件数が話題になりました。

脅威アクターがAIエージェントを悪用した事例

中国系の脅威アクターが「Claude Code」という開発タスク(コーディング等)に長けたAIエージェントを悪用し、複数の組織へ攻撃を仕掛けたという事例です。

30組織へ攻撃を行い、一部のケースで侵入に成功したと報告されています。

AIエージェントに言われるがまま操作し、意図せず事故につながった事例

「カルダノ(ADA)」と呼ばれる暗号通貨において、あるユーザが検証を目的としてAIエージェントに提案された不正なトランザクションを送信したところ、ブロックチェーンに一時的なチェーン分岐が生じ、トークン価格が下落した事例です。

なお、当該ユーザは故意による攻撃ではなく、過失による事故であるため、空売りなども行っていなかったと主張しています。

 

実際に脆弱性を調査してみた

華々しい成果や恐ろしい事例が並びますが、実際の使い勝手や検出精度はどうなのでしょうか。

記事を読むだけではなく、自分の手元の環境で再現性を確認するため、実際にWebアプリケーションを対象とした調査を行いました。

ワークフロー設計

利用ツールはClaude Codeをメインに据え、MCP経由でSemgrepを連携させつつ、Codex-CLIを用いて過検知除去を行う構成としました。

攻撃シナリオやPayloadは、HackTricksPayloadAllThingsを参考にするよう設計しました。

1. 脅威知識ベースの生成

 GitHub上のIssues/Pull Request/Commit履歴、および既知脆弱性情報から調査観点を整理する

2. 前提条件・構成要素の確認

 使用されているミドルウェア、ライブラリ、設定ファイルからセキュリティ関連の初期設定や制約事項を把握する

3. 静的解析

 AIエージェントがコードの文脈を理解し、Semgrepに対して適切なスキャンルールを提案・実行させる。同時に、ツールでは検出が難しい複雑なロジックやデータフローについては、AIエージェント自身が直接コードを読み解き、脆弱性の有無を詳しく解析する

4. 過検知除去

 Codex-CLIに委譲し、過検知除去を行う

5. レポート生成

 技術的根拠を整理し、PoCおよび再現手順を中心に報告書として文書化する

6. 最終確認

 各ステップで記録されたログや判断根拠を元に、検出事項の妥当性および報告内容の整合性を最終確認する

調査結果

本ワークフローによる検証の結果、対象のWebアプリケーションにおいて実際に脆弱性を検出することに成功しました。

AIエージェントが生成したPoCは高い精度で機能しており、実戦における有用性を強く感じる結果となりました。

 

なお、発見した脆弱性については現在IPA独立行政法人情報処理推進機構)への届出を行い、調整中の段階にあります。そのため、本記事においては具体的なソフトウェア名や脆弱性の詳細(CWE等)についての記述は割愛させていただきます。

 

このように脆弱性の検出自体には成功した一方で、調査対象アプリケーションの検証環境の構築や動的解析は私が行うようなフローになっている点が課題として残りました。

 

現状の課題

今回の検証を通じて、主に2つの課題が見えてきました。

1つ目はコストパフォーマンスの問題です。 高度な推論を行わせるため、AIエージェントは大量のトークンを消費します。

APIの利用料金が高額になりがちで、報奨金が見込めない小規模なBBPや個人の学習用途では、コストが見合わない場面がありました。

 

2つ目は動的解析の自動化です。

脆弱性の候補は検出できますが、その裏付けを取るための検証環境の構築や、実際にPayloadを送信して挙動を確認する動的解析のフェーズは、依然として人間が介入して環境を整備する必要がありました。

 

今後の展望

私は個人的な興味からClaude Codeを利用しましたが、Semgrepで紹介されている記事を参考にすると、Claude CodeとCodex-CLIで検出できる脆弱性に差があったようなので、人間のテスターと同様にAIエージェントも発見できる脆弱性に得手不得手があるのかもしれません。

 

最後に、今回行った脆弱性調査を自動化するツールがリリースされている点にも触れておきます。

特にStrixについては、ソースコードの静的解析を行わせつつ、プロキシツールを経由し検証環境のURLに対してリクエスト送信まで行うようなので動的解析も含めて自動化しているようです。

CI/CD連携で開発プロセスに組み込みやすく、今後この種のAIツール開発は加速していきそうです。

2024年の振り返りと2025年の目標

総評

学生生活においては多くの目標を達成でき、良い終わり方を迎えることができました。

都内セキュリティベンダーに就職し、新卒社会人としての生活が始まり、Web・PF診断やペネトレ業務に従事する中で学生時代の学習内容と(良い意味で)差異を感じることが多く、また自身の技術力不足を感じる場面が多くありました。

 

1月

就職に向け、Webの脆弱性診断において必要なブラックボックステストの知識を必死で学んでいました。

 

また、少し難易度は高いと感じていましたがOSWEの受験を決めており、PortswiggerのWeb Security Academy(以下、WSA)と並行する形でホワイトボックステストについても学んでいました。

 

2月

WSAやHTBのWebコンテツを解いていたのと、卒業制作のスマートコントラクトを利用したWebアプリ(dApp)を完成させるためReact/JS周りのコーディングをしてました。

結果的にdAppも無事完成し、特別奨励賞をいただけました。

 

学業については、2月初旬で概ね終了し上京のため物件探し・引っ越し準備でかなり忙しかった記憶があります。

弊社のつてで希望条件に合致する物件をご紹介いただき、その節はありがとうございました。

 

内見に伺った際、横浜 中華街で撮った写真。

 

3月

OSWE(Web-300)の試験を受けました、結果は不合格となりましたが引き続きWebの学習に力を入れていました。

 

卒業式があったり、地元の友人と飲みに行ったり、話を聞きつつ皆ライフステージが変わるタイミングなんだなと当たり前のことを感じながら物思いにふけっていました。

 

また、私の人生の目標でもあった大都会 東京へ引っ越しました。

色々な楽しみに心踊らせつつ、新社会人として不安もありました。

 

4月

入社しました。新卒研修が始まり、定時後はひたすらBurpとにらめっこ。

 

色々な不安がある中、友人達が私の新居に寄ってくれて各々ノートPC開いてCTFやったりして、とても楽しかったです。セキュリティやってて良かったなと感じた瞬間です。

 

また弊社の諸先輩方に飲みに行かせてもらったり、社内でお話を聞ける機会も多くなり、色々な学びを得ることができました。

あと初任給で父にApple Watchをプレゼントできました🎉

 

5月

23歳になりました、おじさんです。

 

引き続き、Burpの画面とにらめっこ。Offsec勉強会に参加する等。

 

あと友人の影響でフィルムカメラ買ったり、都内散歩したり、新しいことばかりで刺激に溢れていて新鮮でした。

 

6月

新人研修が終了し正式に弊社Red Teamのメンバーになることが叶いました🎉

 

引き続き、Burpの画面とにらめっこ。

あとOSWEのリトライに向けて、色々勉強してました。

 

7月

コロナを患いました、あとはひたすらBurpの画面とにらめっこ。

 

8月

Burpの画面とにらめっこ。

 

9月

Burpの画面とにらめっこ。

 

あと初めてフィルムカメラで撮った写真を現像しました。

 

その他、Nike Air Force1に次ぐ新たな相棒も決まりました。

 

10月

Burpの画面に加え、KaliのTerminalとにらめっこ。

 

あとAD系の攻撃に関するスキル不足を感じ、CRTPのラボ受講開始。

 

その他リモートワークの頻度も高くなり、イヤホンを骨伝導式に変えたところQOL爆上がり。

 

11月

Burpの画面とにらめっこ。

 

弊社に負担いただく形でCodeBlueに参加することができました。

 

あとは自炊頑張ってみたり。

12月

Burpの画面とにらめっこ。

 

Web診断において、スキャン回りづらいところ回避するためのExtensionを書いたり、マクロ組んだりするハードルが下がり、少しだけ成長を実感できました。

 

7年ぶりくらいに自作PC組んだり、弟が自宅へ来たり。

 

あと人生で初めてスキーなるものに行きました、めちゃくちゃ楽しかったです!

 

来年の目標

  • Web診断のスキル向上
    • OSWE/BSCPを取る
  • AD系のペンテストについて学ぶ
  • OSCE3を取って、爆美女と焼き肉に行く
  • Rolex デイトナを買う

 

2023年の振り返りと2024年の目標

こんばんは、みらいです。

2023年も最後ということで、1年を振り返っていきます。

 

 

2023年の目標

  • OSCP取得
  • 技術系インターン・アルバイトへの積極的な参加
  • CTFの参加率を上げる
  • セキュリティに関わらず他技術への理解度を上げる

 

どのように活動していたか

1月

ピクシブでのインターンが終了し、アルバイトとして採用される。

同時にインターン時にお世話になっていた部署からの移動が決定。

またこの1年間を主にWeb系の技術を中心に学ぶ年にしようと決めた時期でした。

就職活動と授業、バイトを頑張っていた。

あと今まで日本酒を飲む機会がなかったが、地酒を勧められ北島酒造のお酒を初めて飲んだ。美味しかったです。

セキュリティ系のDiscord鯖に参加し、中々実生活で関わることの少なかったセキュリティに興味がある方と色々なお話ができて楽しかった。

2月

Terraformを触ったり、知らなかった技術を学べて非常に楽しかった記憶がある。

個人ではあまり触れる機会のなかったGitの使い方を学んだり、CIでの自動化を学んでいた。

春休みに入り、OSCPのLabアクセス期間を30日間延長して、AD周りの知識を強化していた。

あと就活が忙しくて結構大変だった。

映画「BLUE GIANT」が面白くて、めちゃくちゃモチベが上がった。

3月

ずっとバイトをしていた。

Go言語とかPHP, React周りの書籍を買ったり、インフラ・Web周りを中心に学んでいた。

PHPerKaigiにオンラインで参加していた。

所属校の特待生の面接を受けて、無事認定され授業料等が免除された。

4月

春学期が開始。

授業とバイトを頑張っていた、それ以外の事に中々手を付ける余裕を作れなかった。

セキュリティの勉強会に参加させて頂いたり、ポケカ収集はじめたり。

 

PG-BOXを倒してある程度自信をつけた。OSCPの範囲だとそこまで難しいことを求められないので、難易度的にはHTBよりPG-BOXが丁度良いかもしれない(あくまで独立したLinuxマシン対策として)。

映画「AIR」を見て、OSCP合格できたらエア・ジョーダン買おうと決めた。

5月

誕生日を迎え22歳になった。そろそろ良い年齢に差し掛かり、嬉しいというよりは焦る気持ちのほうが大きかった。

弟にオーディオインターフェイスを買ったり、母の日にCHANELをプレゼントできてほんの少し親孝行できたかなと思う。

6月

昨年「ハウス・オブ・カード」にハマり、現職大統領の腕時計を調べた時に一目惚れし、1つの目標にしていたブルーのデイトジャスト 41を買うことができた。

現職大統領がつけるにしては控えめな価格帯らしく、大衆へのアピールという意味合いもあり、Rolexの中でも主張の激しくないデザインで気品がある点がとても気に入っている。

 

あと青ブタの映画も見た、めっちゃ良かった。

ADの攻撃手法を調べて検証しチートシートに追記していた。

7月

OSCPに合格。合格したら買おうと思っていたエア・ジョーダンはもっと頑張ってから買いたかったので、エア・フォース1を買った。

ペネトレ未経験の学生がOSCPに合格した話、学んだことや試験時のポイントについて - みログ

内定承諾を提出し、内定者バイトに参加するか悩んでいた。

あと大阪の友人に久しぶりに会うことができて飲みに行った。めちゃくちゃ楽しかった。

学生生活最後の夏休みに突入。

8月

内定者バイトが開始。OSWEを学ぶための準備期間にも充てたかったので徳丸本を読んだり、PortswiggerのWeb Security Academyやり始めたり。

そもそも論として、Webを学ぶなら徳丸本はもっと早くに読むべきだった。

地元の友達と飲みに行った。あとセキュリティ系のDiscord鯖で同じ市内に住んでいる同い年の方がいるミラクルが発生した。

一緒に肉を焼きに行った(ありがとうございました!)。

9月

OSCP(PEN-200)の上位資格、OSWE(Web-300)取得を目指し、AWAEの3ヶ月間のバウチャーを取得。

WEB-300: Advanced Web Attacks and Exploitation | OffSec

 

全く知らなかったベクトルの攻撃手法を学べたり、OSCPでは範囲外だったPoC作成も必要で全体的により専門性の高い内容で面白かった。

ただ自力で解くというよりは、ドキュメントを読みながら手を動かしていく感じの作業が多く本当に理解できてるだろうかという不安を抱くことは何度もありました。

CTFでWriteup読みながら攻略している感覚に近かったです。

 

また初めてセキュリティミニキャンプに参加させて頂いたのもこの頃です。

セキュリティミニキャンプ in 山梨 2023に参加させて頂きました。 - みログ

10月

東京まで夜行バスに乗ってオフイベ参加して、日帰りの夜行バスで京都駅まで戻りそのまま登校して秋学期はじめの授業を受けた。インドア系の人間ができる芸当ではなかった。

IGF 2023に参加したり、内定式では技術的に強い人達が本当に多くてモチベが爆上げした。

11月

NRI SecureのNetwarsに参加、思いの外多くの問題を解くことができました。

卒業制作の進捗がまずい状態だったのと、AWAEのアクセス期限も近かったので必死でした。

12月

1つの区切りと思える目標を達成したのでエア・ジョーダン1を購入することができました。

卒業制作が一段落と言えるところまで進めることができ、冬休み突入。

Web診断で学んだブラックボックステストや、AWAEで学んだホワイトボックステストに関して学んだことをまとめたり、復習したり。

クリスマスプレゼントには、以下4冊を購入しましたがまだ読めていない書籍があるので冬休み中に頑張ります。

今はHTB AcademyのWhiteboxAttacksモジュールを読んでます。

academy.hackthebox.com

所感

OSCPに合格できたのは嬉しい。ただOffensive Securityを学ぶ上ではFE的な扱いではあるので、ちゃんとOSWE,EP,EDの勉強してOSCE3まで頑張りたい。

正直学生の間にOSCP取得しておけば良いかなくらいの感覚でいたが、甘すぎだしちゃんと強い人を見てもっと頑張らなきゃいけないと実感できたのが一番良かった。

引き続きWebセキュリティを学び続ける。

成長できているかと言われるとやはり自信を持てないので、今年は自信を持って成長できたと言えるようになりたいです。

あんまり健康的な生活を送れていなかったので、筋トレして食事に気をつけたい。

2024年の目標

  • Webセキュリティ領域をもっと学ぶ
    • まずはOSWEの取得
  • 物怖じせず質問し、話せるよう心がける
  • 内定先での業務に慣れる
  • スキンケアと筋トレを継続する
  • 食生活を整える
    • エナドリを一切飲まない