blog of morioka12

morioka12のブログ (Security Blog)

バグバウンティにおけるLLMの活用事例

1. 始めに

こんにちは、morioka12 です。

本稿では、バグバウンティの脆弱性調査で使われている LLM の活用事例について少し紹介します。


免責事項

本稿の内容は、セキュリティに関する知見を広く共有する目的で執筆されており、悪用行為を推奨するものではありません。

また、本稿は「2025年1月時点」の内容になります。


2. LLM の活用事例

バグバウンティにおいて、LLM の活用は少しずつ身近になってきている印象です。

今日のバグハンターは、主に以下のような使い方をしています。

  • データの収集
    • Recon: Subdomain, Directory, Parameter
  • ソースコードの解析
    • JavaScript File
  • 脆弱性のスキャン
  • ペイロードリストやワードリストの作成
  • テストデータやエクスプロイトの作成
  • 既存ツールの支援
  • 典型的な脆弱性レポートの作成
  • ...


SimonW「LLM」

ちなみに、シンプルに ChatGTP や Gemini などの対話型 AI を利用してコマンドライン上で良い感じに活用する場合は、以下の「LLM」というツールを用いることでコマンドライン上からプロンプトを実行したり、出力内容を保存して直接ファイルを書き込むことができます。

そのため、既存の様々な CLI ツールと組み合わせて、より効率的に活用できるようになります。

例えば、katana などのツールでクローリングした結果を分析したり、Eyeballer などのツールでスクリーンショットの画像を取得して分析したり、Google Dorks の結果を効率よく分析したりします。

github.com

また、JavaScript ファイルを分析して、エンドポイントを抽出したり、複雑な HTTP リクエストを構築したりすることで、効率的に活用することもできます。

# バグバウンティのヒント: 
AI を使って JavaScript ファイルから API エンドポイントを抽出し、複雑な HTTP リクエストを構築する。
複雑な JS ファイルを手作業で分析し、GET/POST リクエストを構築する方法がわからない?派手なツールは必要ありません!

# 簡単なヒント: 
Chrome Dev Console から JS ファイルをコピーしてローカルに保存し、ChatGPT にアップロードします。

## このプロンプトを使用します:
「この JavaScript ファイルを読んで、GET/POST エンドポイントを構築するのを手伝ってもらえますか?」

## そして、次のような具体的なリクエストをお願いします:
「アップロードされた JavaScript ファイルに基づいて、生の HTTP 例で getUserDetails の API リクエストを構築するのを手伝ってもらえますか?"」
など、JavaScript ソースコード内で調べている機能に基づいて、同様の質問をします。

## 結果
ChatGPTがAIコードレビューに基づいたパラメータでこれらの複雑なGET/POSTリクエストを構築し、一見不可能に見えることを可能にする結果に驚くことでしょう!🚀
この情報を得たら、IDOR、SQLi、CSRF、特権昇格、XSSなどをテストするために、クッキーを使ってエンドポイントを手動でテストし始めることができます。


3. Recon

CewlAI

CewlAI とは、Google の Gemini AI を利用して、シードドメインに基づいてドメインのバリエーション候補を作成するドメイン名の生成ツールです。

このツールは、ドメイン名のパターン認識と生成に焦点を当てて、サブドメインを推測し隠されたドメインを発見します。

github.com


Subwiz

Subwiz とは、超軽量な nanoGPT を利用して、潜在的なサブドメインを推測した上で有効なサブドメインを検知するツールです。

このツールは、ビームサーチのアルゴリズムを使用して、最も可能性の高い N 個のシーケンスを予測します。

github.com


ffufai

ffufai とは、OpenAI の ChatGTP や Anthropic の Claude AI model を利用して、ターゲットの URL や HTTP ヘッダーに基づいて、ファジングのためのファイルの拡張子を自動で提案するツールです。

github.com


Crawl4AI

Crawl4AI とは、LLM に対応した Web クローリングのツールです。

このツールは、LLM を使用して構造化データや関連コンテンツを Web ページから抽出することができます。

github.com


Athena

Athena とは、Internet Archive の膨大なデータを OpenAI のモデルを用いて分析と探索をするツールです。

このツールは、LLM によって Wayback Machine から Web ページのテキストを抽出したり、内容を要約したり、Web ページの変更履歴を分析したりなど、あらゆる高度な分析を実施することができます。

github.com

https://gist.github.com/haruki25/80881c64437de3e9c866ed75f5cad7f6


WARC-GPT

WARC-GPT とは、OpenAI API と Ollama が利用できて、それらを用いて Web Archives を実験的に検索や探索をすることができるツールです。

github.com

lil.law.harvard.edu


4. Browser Extension

Nuclei AI Extension

Nuclei AI Extension とは、Nuclei のテンプレートを迅速に生成するブラウザの拡張機能です。

github.com


5. Web Proxy Plugin

Shift (Caido)

Shift とは、プロキシ内の機能や中身に対して、命令文を入力するだけで自動的に操作する Caido のプラグインです。

例えば、Intercept の内容を自動で編集したり、一致置換ルールを作成したり、リクエストとレスポンスからワードリストを生成させたり、レスポンスのボディ内容からリクエストのパラメーターの型を生成したり、API エンドポイントに含む JavaScript の分析させたりなど、様々なことを自動的に操作することができます。

shiftplugin.com

github.com


Caido403Bypasser (Caido)

Caido403Bypasser とは、カスタムテンプレートを利用して、HTTP リクエストを変換させることで403 ステータスのリクエストを回避するスキャンを実行する Caido のプラグインです。

このツールは、組み込み AI を利用して、カスタムテンプレートを効率よく生成させることができます。

github.com


BurpGPT (Burp Suite)

BurpGPT とは、従来のスキャナーが見逃す可能性があった脆弱性を AI の利用して検出する Burp Suite の拡張機能です。

github.com

burpgpt.app


Add: Montoya API (Burp Suite)

このリリースでは、Montoya API に AI サポートが導入され、よりスマートな AI 搭載の拡張機能を構築できるようになりました。
また、Bambda を保存および再利用するための Bambda ライブラリと、拡張機能の開発を効率化するためのすぐに使用できる拡張機能スターター プロジェクトも追加されました。

Montoya API に組み込みの AI サポートを追加しました。
拡張機能は、PortSwigger の専用 AI プラットフォームを介して大規模言語モデル (LLM) と安全にやり取りできるようになり、複雑なセットアップや外部 API キーを必要とせずに高度な自動化機能やデータ分析機能を構築できるようになりました。

portswigger.net

portswigger.net

Hackvertor

- リピーターから学習します。Hackvertor はリピーター リクエストからエンコーディングを学習し、Python カスタム タグを自動的に生成します。   
- カスタム コード タグを要約します。カスタム タグが作成されると、Hackvertor は AI を使用してその内容を要約します。   
- AI カスタム タグ。カスタム タグでプロンプトを使用できるようになりました。   
- AI を使用してコードを生成します。Hackvertor は、入力/出力と指示を与えるとカスタム タグを生成します。

github.com

※2025年2月13日にリリースされたため追記しました。(詳細は、後日検証した後に記載します。)


6. ChatGTP Plugin

PentestGPT

github.com


Bug Hunter GPT

chatgpt.com


Bounty Plz

chatgpt.com


7. 講演動画

Bug Bounty Village 2024「Leveraging AI for Smarter Bug Bounties」

本講演は、バグバウンティやペンテストのワークフローを補強するために設計された AI エージェントの研究開発プロセスについて、掘り下げて話します。
私たちの AI エージェントは、単なる論理的な概念ではなく、セキュリティ研究者の効率性と有効性を高めることを目的とした実用的なツールです。

youtu.be

https://youtu.be/8IzKwczq0jI

xbow.com


NahamCon2024「Practical AI for Bounty Hunters」

現在、AI に関する話題が盛り上がっています。
Jason Haddix (@jhaddix) が、すべての BS を一蹴して、AI を使って今すぐ賞金稼ぎを強化する 5 つの実用的な方法を紹介します。
Jason は、偵察、JavaScript 分析、脆弱性検出、ペイロード生成、レポート作成のための AI について説明します。

youtu.be

https://youtu.be/DqgterfPHzg


NahamCon2023「Context + Questions: How GPT-based AI Will Disrupt Security」

@DanielMiessler が発表した 27 分間のディスカッションでは、人工知能、特に GPT モデルがサイバー セキュリティの状況に革命を起こす方法について掘り下げます。

講演者が AI とサイバー セキュリティの交差点を考察する中で、倫理的ハッキング、バグ報奨金プログラム、情報セキュリティの将来について貴重な洞察を得ることができます。

GPT ベースの AI がセキュリティ プラクティスにますます統合されるにつれて生じる課題と機会について学び、この技術的進歩がレッド チーム オペレーションと Web アプリケーション セキュリティをどのように変える可能性があるかを理解します。

youtu.be

https://youtu.be/Jj1P5yz7ocE


GOTO 2024「AI-Powered Bug Hunting」

このセッションでは、バグバウンティハンティングの実際の例を使用して、攻撃的なセキュリティと倫理的なハッキングの世界について垣間見ることができます。
企業のインフラストラクチャを脅かしたり、顧客の個人情報を利用して企業を攻撃したりする、最新の Web アプリケーションの重大な脆弱性について検討します。
さらに、AI がハッキング プロセスで貴重なコンパニオンとして機能し、セキュリティ上の欠陥を効果的に特定して対処するためのアイデアやソリューションを生み出すのに役立つ方法について説明します。

youtu.be

https://youtu.be/lCZtgN7b4TE


8. その他

HackerOne Blog「How AI Is Shaping the Future of Vulnerability Discovery」

www.hackerone.com


Vulnhuntr: Autonomous AI Finds First 0-Day Vulnerabilities in Wild

protectai.com

github.com


Blog「バグバウンティ入門(始め方)」

scgajge12.hatenablog.com


9. 終わりに

本稿では、バグバウンティの脆弱性調査で使われている LLM の活用事例について少し紹介しました。

今回はあくまでバグバウンティ業界で使われている無料ツールをメインに取り上げましたが、AI/ML によるペンテストツールや有料サービスなどは既に多数存在しています。

今後も多くのアイディアのもとにツールや活用事例が増えていくと思われるため、ぜひウォッチしたり自作してみてください。


ここまでお読みいただきありがとうございました。