Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ptf — ペネトレーションテスターフレームワーク(PTF)は、最新ツールのモジュラーサポートを提供する方法です。 | Kitploit
ツール/GitHubGitHub/trustedsec/ptf
ペネトレーションテストフレームワークエクスプロイトフレームワークスクリプトと自動化ユーティリティとフレームワーク
GitHubtrustedsec/ptf

ptf

ペネトレーションテスターフレームワーク(PTF)は、最新ツールのモジュラーサポートを提供する方法です。

リポジトリを見る
5.6k1.3k71年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

ペンテスターフレームワーク (PTF)

===

TrustedSecプロジェクト - Copyright 2022

作成者: David Kennedy (@HackingDave)

https://www.trustedsec.com

Twitter: @TrustedSec, @HackingDave

PenTesters Framework (PTF) は、Debian/Ubuntu/ArchLinux ベースのディストリビューション向けに設計された Python スクリプトで、ペネトレーションテスト用の一貫性のある親しみやすい環境を提供します。ペンテスターとして、私たちは /pentest/ ディレクトリや独自のツールセットを常に最新に保つことに慣れています。日常的に使用する「頼れる」ツールがあり、最新かつ最高のものを利用することが重要です。

PTF は、すべてのペネトレーションテストツール(最新版)をインストールし、コンパイルし、ビルドし、どのマシンでもインストール/更新できるようにします。すべてのツールは、Penetration Testing Execution Standard (PTES) に沿って整理され、ほとんど使用されないものを排除しています。PTF はインストールとパッケージ化を簡素化し、完全なペンテストフレームワークを提供します。フレームワークであるため、自由に設定や追加が可能です。また、このフレームワークの一部として組織内で開発されたリポジトリもよく利用されます。すべてはあなた次第です。

このプロジェクトの最終目標はコミュニティのサポートです。GitHub リポジトリに新しいツールを追加してください。モジュールを送信してください。設定と追加は非常に簡単で、数分で完了します。

インストール

PTF を正しく動作させるには、python-pexpect が必要です。

以下のコマンドを実行してください:

root@kitploit:~
pip install -r requirements.txt
./ptf

手順:

まず、config/ptf.config ファイルを確認してください。このファイルにはすべてのインストール先のベースロケーションが含まれています。デフォルトでは /pentest ディレクトリにインストールされます。設定が完了したら、./ptf(または python ptf)と入力して PTF を起動します。

これにより、Metasploit 風のシェルが起動し、一貫性のある外観と操作性が提供されます。show modules、use <modules> などのコマンドが使用できます。まずは、help または ? と入力して、すべてのコマンドの一覧を確認してください。

PTF の使い方に関するビデオチュートリアルは、Vimeo ページをご覧ください: https://vimeo.com/137133837

すべてを更新!

すべてをインストール/更新するには、以下の操作を行ってください:

root@kitploit:~
./ptf
use modules/install_update_all
yes

これにより、PTF 内のすべてのツールがインストールされます。すでにインストールされている場合は、自動的にすべてを反復して更新します。

個別にモジュールをインストールし、その後 use modules/update_installed を使用すると、以前にインストールしたものだけを更新できます。

例:

root@kitploit:~
./ptf
use modules/update_installed

これにより、以前インストールしたものだけが更新されます。

また、モジュールに関する情報を変更するために show options を使用することもできます。

たとえば、エクスプロイトツールだけをインストールする場合は、次のように実行します:

root@kitploit:~
./ptf
use modules/exploitation/install_update_all

これにより、エクスプロイトモジュールだけがインストールされます。任意のモジュールカテゴリに対して同様に実行できます。

インストールするツールをカスタマイズ

インストールしたいツールだけを指定するには、modules/custom_list/list.txt セクションを参照してください。list.txt ファイルを編集し、インストールまたは更新したいツールを追加します。

list.txt ファイルの例:

modules/exploitation/metasploit modules/post-exploitation/unicorn

その後、PTF 内で:

root@kitploit:~
./ptf
use modules/custom_list/list
yes

これにより、モジュール構成を保持し、必要なツールだけをインストールして最新の状態に保つことができます。

また、カテゴリを指定せずにモジュール名だけを指定することもできます:

root@kitploit:~
./ptf
use trevorc2
yes

モジュール:

まず、modules/ ディレクトリに移動してください。その中には、Penetration Testing Execution Standard (PTES) フェーズに基づいたサブディレクトリがあります。これらのフェーズのディレクトリ内で、さまざまなモジュールを確認してください。新しいモジュール(例: testing.py)を追加すると、次回 PTF を起動したときに自動的にインポートされます。モジュールを作成する際には、いくつかの必須項目があります。

以下はモジュールのサンプルです:

root@kitploit:~
AUTHOR="David Kennedy (ReL1K)"

DESCRIPTION="このモジュールは Browser Exploitation Framework (BeEF) をインストール/更新します。"

INSTALL_TYPE="GIT"

REPOSITORY_LOCATION="https://github.com/beefproject/beef"

X64_LOCATION="https://github.com/something_thats_x64_instead_of_x86"

INSTALL_LOCATION="beef"

DEBIAN="ruby1.9.3,sqlite3,ruby-sqlite3"

ARCHLINUX = "arch-module,etc"

BYPASS_UPDATE="NO"

AFTER_COMMANDS="cd {INSTALL_LOCATION},ruby install-beef"

LAUNCHER="beef"

TOOL_DEPEND="modules/exploitation/metasploit"

モジュール開発:

各フィールドは非常に簡単です。リポジトリの場所には、GIT、SVN、FILE、または TAGS を使用できます。依存関係とインストール先を指定します。PTF は、Python ファイルの場所(例: exploitation)を取得し、PTF 設定(config ディレクトリ内)で指定された場所に移動します。デフォルトでは、すべてのツールは /pentest/PTES_PHASE/TOOL_FOLDER にインストールされます。

モジュール内では、AFTER_COMMANDS で {INSTALL_LOCATION} を指定できます。これにより、after コマンドを使用する際のインストール先のパスが挿入されます。

また、{PTF_LOCATION} を指定することもでき、PTF インストールのベースパスが取得されます。

リポジトリの場所として、32 ビット用と 64 ビット用の両方を指定することも可能です。REPOSITORY_LOCATION は常に x86 ダウンロードパスにしてください。64 ビットパスを追加するには、X64_LOCATION に URL を指定します。PTF 起動時に自動的にアーキテクチャを検出し、x86 の代わりに x64 リンクを使用します。

ArchLinux パッケージもサポートされています。モジュール内で DEBIAN と ARCH の両方を指定する必要があります。そうすることで、両方のプラットフォームで適切にインストールされます。

TAGS モードを使用すると、タグを利用した GitHub プロジェクトから最新バージョン(通常はコンパイル済みアプリケーション)を自動的にダウンロードできます。TAGS メソッドを使用するには、modules/intelligence-gathering/teamfiltration.py の構造を参照してください。この例では、REPOSITORY_LOCATION は不要ですが、プロジェクトのオーナー、プロジェクト名/リポジトリ、ダウンロードするファイル名を指定する必要があります。TeamFiltration の例では、https://github.com/Flangvik/TeamFiltration にあります。オーナーは Flangvik、プロジェクト/ツール名は TeamFiltration です。リリースページ (https://github.com/Flangvik/TeamFiltration/releases/) に移動すると、ダウンロードしたいファイル名は TeamFiltration_Linux です。これらを OWNER、REPOHOME、FILENAME で指定すると、PTF が自動的に最新リリースを検出してインストールします。

GITLAB サポート

独自のモジュールを作成することができ、PTF は GitLab アクセスもサポートしています。git や wget などの代わりに、gitlab を指定して、内部の GitLab ツールをモジュールとして指定できます。

バイパス更新:

従来の git や svn を主な方法として使用する場合、モジュールのインストール後は通常、最新バージョンを取得するだけです。AFTER_COMMANDS を使用する場合、通常はインストール後に after コマンドを実行する必要があります。BYPASS_UPDATE="YES" と指定すると、ツールが実行されるたびに最新バージョンをチェックアウトし、after コマンドも引き続き実行します。NO に設定すると、システムの最新バージョンを git pull するだけです。FILE オプションの場合は、常に BYPASS_UPDATE="YES" を使用することを推奨します。これにより、毎回ファイルが上書きされます。

アフターコマンド:

アフターコマンドは、インストール後に挿入できるコマンドです。ディレクトリに移動して、インストールを完了するための追加コマンドを実行する場合などに使用します。たとえば、BEEF のシナリオでは、その後 ruby install-beef を実行する必要があります。以下は、{INSTALL_LOCATION} フラグを使用したアフターコマンドの例です。

root@kitploit:~
AFTER_COMMANDS="cp config/dict/rockyou.txt {INSTALL_LOCATION}"

AFTER_COMMANDS は、ユーザーの操作を必要としない自動インストール用です。

自動ランチャー

LAUNCHER= フラグはモジュール内でオプションです。たとえば LAUNCHER="setoolkit" を追加すると、PTF は自動的に /usr/local/bin/ 以下にランチャーを作成します。setoolkit の例では、PTF が /usr/local/bin/setoolkit にファイルを作成するため、ターミナルで setoolkit と入力するだけで SET を起動できます。すべてのファイルは適切なカテゴリ(例: /pentest/exploitation/setoolkit)にインストールされますが、自動ランチャーが作成されます。

複数のランチャーを指定することもできます。たとえば、Metasploit では msfconsole、msfvenom などが必要な場合があります。複数のランチャーを追加するには、カンマ(,)で区切ります。例: LAUNCHER="msfconsole,msfvenom"。これにより、両方のランチャーが作成されます。

コマンドラインからの自動実行

./ptf --update-all と実行するだけで、フレームワークに入らずにすべてを自動更新できます。

無人実行

自動ビルドで ptf を実行する場合は、heredoc を使用して、インストールするモジュールを対話的に入力せずに済ませることができます。例:

root@kitploit:~
./ptf <<EOF
use modules/exploitation/metasploit
run
use modules/password-recovery/johntheripper
run
EOF

TOOL_DEPENDS

Veil や SET などのツールには、Metasploit Framework などのツールが必要な場合があります。モジュール内に TOOL_DEPEND="modules/exploitation/metasploit,module/exploitation/set" のように追加することで、ツールをインストールする前に必要なツールを強制的にインストールさせることができます。これにより、PTF は最初に必要なツールをインストールし、その後そのモジュールをインストールします。

例:

TOOL_DEPEND="modules/exploitation/metasploit"

これにより、アプリケーションをインストールする前に Metasploit が最初にインストールされるか、または既にインストールされていることが確認されます。

モジュールまたはカテゴリの無視

IGNORE_THESE_MODULES= 設定オプションは、PTF ルートディレクトリの config/ptf.config にあります。これにより、特定のモジュールを無視してインストールしません。カンマ区切りで指定し、名前ベースで指定します。例: modules/exploitation/metasploit,modules/exploitation/set。またはモジュールカテゴリ全体、例えば /modules/code-audit/*,/modules/reporting/* のように指定します。

一括インストール/更新からのモジュール無視

IGNORE_UPDATE_ALL_MODULES= 設定オプションは、PTF ルートディレクトリの config/ptf.config にあります。これは、install_update_all を実行するとき(すべてのツールをインストールする場合)にのみモジュールを無視します。これは、かなりの時間がかかる大規模アプリケーション、ユーザー操作が必要なもの、システム上で多数のポートやプロトコルを開放するものなどに使用します。IGNORE_THESE_MODULES と非常に似た動作ですが、これらのモジュールは modules/update_installed を使用して手動でインストールおよび更新できます。カンマ区切りで指定します。例えば modules/exploitation/tool1,modules/exploitation/tool2 と指定すると、install_update_all を実行してもこれらのツールはインストールされません。ただし、use modules/exploitation/tool1 のようにして個別にインストールすることは可能です。

INCLUDE_ONLY_THESE_MODULES

INCLUDE_ONLY_THESE_MODULES 設定オプションは、config/ptf.config にあります。ここで指定されたモジュールだけをインストールし、それ以外は除外します。これは、希望するツールをベースライン化し、それらだけをインストールするのに便利です。

バナーなしで PTF を起動

バナーメッセージを表示せずに PTF を起動できます。次のように指定します:

root@kitploit:~
./ptf --no-banner

または

./ptf -nb

PTF を通じてインストール済みのプログラムを確認

PTF を通じてすでにインストールしたアプリケーションを確認するには、次のように入力します:

root@kitploit:~
ptf>show installed
ツールをダウンロード