アップデート一覧に戻る
New releaseSep 4, 2026

pentest-ai v1.4.0

すべての発見を実証するオープンソースのAIペンテスター。機械オラクルが各エクスプロイトを再実行し、検証済みのバグには、自分で再現できる証明カプセルが同梱されます。

共有

Pentest-AI — オープンソースのAIペネトレーションテスト。再現可能な検出結果。

PyPI Python License: MIT

ウェブサイト · クイックスタート · バグバウンティ · 検証 · ドキュメント · Issues

Pentest-AIは、あらゆる検出結果を証明するオープンソースのAIペネトレーションテストおよびバグバウンティツールです。 AIクライアントまたはモデルを実際のペネトレーションテストワークフローに接続し、ウェブアプリケーションの調査、脆弱性の発見と再現を行い、マシンオラクルを用いてエクスプロイトが実際に機能するかを検証します。証明がなければ検出結果とはみなしません。検証済みの結果には、あなた自身が再現できる証拠が付属します。

MCP(Claude Code、Codex、Cursor、VS Code)、CLI、またはCI/CDから利用できます。モデルが調査を主導し、独立したオラクルが検出結果に検証済みの判定を与えるべきかどうかを決定します。したがって、出力はAIのスロップではなく、シグナルです。

認可されたバグバウンティ向けに構築: プログラムのスコープ(HackerOne、Bugcrowd、Intigriti、YesWeHack)をインポートし、スコープを強制したエンゲージメントを実行し、検証済みの各検出結果をプラットフォーム対応の提出物に変換します。バグバウンティワークフローへ移動 →

あなたが所有するシステム、または評価の明示的な認可を得たシステムのみをテストしてください。エンゲージメントを実行する前に、利用規定と利用規約をお読みください。

クイックスタート

推奨:CodexまたはClaude Code

Python 3.10~3.14を使用し、まずpipxをインストールしてください。必要に応じてpipx ensurepathを実行し、ターミナルを開き直します。pipxはPentest-AIの依存関係を分離し、そのコマンドをどのフォルダからでも利用できるようにします。

pipx install ptai
ptai setup --mcp

先にAIクライアントのCLIをインストールしてください。セットアップは、検出されたすべてのサポート対象クライアント(インストールされていればCodexとClaude Codeの両方を含む)に接続する前に確認を求めます。既存の登録は保持されます。その後、クライアントを再起動してください。

ウィザードはユーザー全体の設定を使用します。クライアントのインストール、サインイン、モデルのダウンロード、Ollamaの設定は行いません。モデルはAIクライアントが提供するため、MCPサーバーが別途モデルのAPIキーを必要とすることはありません。変更をプレビューするにはptai setup --mcp --dry-runを使用します。Codexの.codex/config.tomlおよびClaude Codeの.mcp.jsonの手順については、単一クライアントおよびリポジトリ単位のセットアップを参照してください。

アップグレードにはpipx upgrade ptaiを使用します。既存のアクティブ化された仮想環境では、python -m pip install --upgrade ptaiもサポートされています。AIクライアントに登録した後も、その環境を利用可能な状態に保ってください。

代替:Ollamaとローカルモデル

上記と同様にPentest-AIをインストールしますが、この方法ではMCPセットアップをスキップします。Ollamaをインストールして起動し、ツール呼び出しをサポートするモデルをプルします。インストールされた正確な名前を確認するにはollama listを使用します。

export PENTEST_AI_LLM_PROVIDER=ollama
export PENTEST_AI_MODEL="your-installed-model"
ptai start https://your-authorized-target.example --no-sync

PowerShellの場合:

$env:PENTEST_AI_LLM_PROVIDER = "ollama"
$env:PENTEST_AI_MODEL = "your-installed-model"
ptai start https://your-authorized-target.example --no-sync

実行前にプレースホルダーを置き換えてください。ローカルモデルにはクラウドAPIキーは不要です。モデルの品質と利用可能なメモリが結果に影響します。エンドポイントの設定についてはモデルガイドを参照してください。

同梱のデモを試す

APIキーも外部ターゲットも不要です。

pipx install ptai
ptai demo

デモは同梱の脆弱なアプリケーションをテストし、そのプルーフカプセルから検出結果を再生し、強化されたルートをチェックします。実際のエンゲージメントを設定する前に、証拠ワークフローを確認してください。

その他のモデルプロバイダー

スタンドアロンのクラウドモデルとオプションのスキャナー依存関係については、インストールガイドとプロバイダーガイドを参照してください。APIキーはソース管理に含めないでください。

バグバウンティの自動化

Pentest-AIは、スコープ内に留まり、再現可能な検出結果のみを提出することが重要な、認可されたバグバウンティ作業のために設計されています。

# 1. Import the program's scope (HackerOne / Bugcrowd / Intigriti / YesWeHack)
ptai bounty import --platform hackerone --file scope.json --out program.scope

# 2. Run a scope-enforced engagement (a preflight shows exactly what will be
#    touched and asks you to confirm — nothing out of scope is ever hit)
ptai start acme.com --scope-file program.scope --intensity stealth

# 3. Turn verified findings into platform-ready submissions
ptai bounty report <engagement-id> --platform hackerone --out submissions/
  • スコープは助言ではなく強制されます:ワイルドカード、CIDR、スコープ外の除外、フェイルクローズド、すべてのエージェントとツールにおいて。
  • 提出物はそのまま提出可能:各提出物には再現可能なcurl、CVSS/CWE、影響、修復、および再生可能なプルーフカプセル付きのマシン判定が含まれます。
  • または、組み込みの方法論プレイブックをエンドツーエンドで実行します: ptai playbook run bug-bounty-web -i target=acme.com --execute。

バグバウンティ完全ガイド →

検証の仕組み

候補は、オラクルがエクスプロイトを繰り返し、コントロールをチェックした後にのみ検証済みとなります。結果として得られるプルーフカプセルは再生できます。

  1. 候補を見つける。 プローブまたはスキャナーが、調査に値する挙動を特定します。
  2. それを再現し、コントロールをチェックする。 名前付きオラクルがエクスプロイトを繰り返し、その弱点を示さないはずのコントロールと比較します。
  3. 証拠を保持する。 検証済みの検出結果は、オラクルとその結果をポータブルなプルーフカプセルに記録します。再度チェックするにはptai replayを使用します。

例えば、信頼されたヘッダーのバイパスは、攻撃ヘッダー付きで特権コンテンツを返し、それなしではアクセスを拒否しなければなりません。すべてのリクエストにHTTP 200で応答するサーバーは、十分な証拠とはなりません。

モデルは検証済みの判定を下すことはできません。 サードパーティスキャナーの出力は、オラクルが独立して証明するまで未検証のままです。サポートされた検証レシピのない検出結果は候補のままです。

検証済みの判定は、テストされた条件に適用されます。アプリケーション全体が安全であることを意味するものではありません。プルーフカプセルは署名されていません。チェックを再実行することが信頼の仕組みです。

検証設計を読む

できること

ワークフローPentest-AIが提供するもの
ウェブアプリケーションの調査インジェクション、アクセス制御、リクエスト処理、その他のアプリケーションの弱点に対するプローブ
バグバウンティエンゲージメントの実行プログラムスコープのインポート、その強制、プラットフォーム対応の提出物の生成(ガイド)
AIクライアントを通じた作業エンゲージメント、調査、検証のためのMCPツール
検出結果の再現オラクルの結果と再生可能なプルーフカプセル
修正の確認更新されたターゲットに対して記録されたチェックを再実行
チームへの報告既存のエンジニアリングワークフロー向けのレポートとSARIF出力
エンゲージメントデータをローカルに保持検出結果はSQLiteでお使いのマシンに保存

カバレッジはプローブとオラクルによって異なります。オプションのスキャナーは独自のバイナリを必要とし、一部の統合は構造化された検出結果ではなく生の出力を提供します。お使いのバージョンについてはドキュメントと変更履歴を参照してください。mainには未リリースの作業が含まれている可能性があります。

CIによってチェックされる機能インベントリを表示。

検証済みの検出結果をCIに組み込む

CI環境でモデルプロバイダー、認可されたターゲット、初回実行の同意を設定します。シークレットはCIプロバイダーのシークレットストアに保管してください。

ptai start https://your-authorized-target.example --ci --fail-on verified --no-sync

実行時のエンゲージメントIDを使用して、検証済みの検出結果をエクスポートします:

ptai export YOUR_ENGAGEMENT_ID --sarif pentest.sarif

--sarifはエクスポートオプションであり、ptai startのオプションではありません。失敗したビルドの証拠が必要な場合は、検出ゲートが失敗した場合でもエンゲージメントIDを保持し、エクスポートを実行してください。生成されたファイルは、CIプロバイダーのSARIF統合を通じてアップロードします。

CIセットアップとテンプレート

証拠、ベンチマーク、限界

ベンチマークの検出結果、チャレンジの完了、オラクル検証済みの検出結果は、それぞれ異なる測定値です。これらのレポートは、その結果の背後にあるバージョン、ターゲット、方法論を記録しています:

不完全なカバレッジを想定してください。 検証済みの検出結果がないスキャンは、アプリケーションが行うすべてのことを対象としたセキュリティ評価ではありません。認証、アプリケーションの状態、サポートされていないバグクラス、環境の変化が、発見および再現できるものに影響します。結果をレビューし、エンゲージメントに人間を関与させ続けてください。

データとネットワークの挙動

検出結果はローカルに保存されます。匿名の使用状況カウンターは、ptai telemetry enableによるオプトインです。

ローカルストレージは、すべての操作がお使いのマシン上に留まることを意味するものではありません。モデルプロバイダーへの呼び出しとインストールされたスキャナーには、それぞれ独自のネットワーク挙動があります。ブラインド脆弱性チェックは外部のアウトオブバンドコラボレーターを使用する場合があり、コールバックのメタデータはそのサービスから見えます。

必要に応じて独自のコラボレーターを使用するか、コールバックを無効にしてください:

ptai start https://your-authorized-target.example --oast-server https://your-collaborator.example
ptai start https://your-authorized-target.example --no-oast

参加する

再現可能なバグにはIssuesを、質問やアイデアにはDiscussionsを使用してください。ビルドとテストの手順については、エージェントおよびコントリビューターガイドを参照してください。

カテゴリ