
Peirates - Kubernetes ペネトレーションテストツール

PeiratesはKubernetesの侵入テストツールであり、攻撃者がKubernetesクラスタ内で権限昇格や横方向移動を行うことを可能にします。サービスアカウントトークンやシークレットの窃取・収集、さらなるコード実行の獲得、クラスタの制御奪取といった既知の手法を自動化します。
Peiratesは、Kubernetes上で動作するコンテナ内、またはKubernetesノード上(コンテナ外)から実行します。
はい、間違いなく攻撃します。このツールをKubernetesクラスタで使用する前に、弁護士およびクラスタの所有者に相談してください。
InGuardiansのCTOであるJay BealeがPeiratesを最初に着想し、Faith Alderson、Adam Crompton、Dave Mayerを含むInGuardiansの開発者チームを編成して一緒に開発しました。FaithがGolangを学ぶよう説得し、Kubernetesプロジェクトのkubectlライブラリをツールで利用できるようにしました。Adamは高度にインタラクティブなユーザーインターフェースの採用を提案しました。Daveは伝染性のある熱意をもたらしました。この4人の開発者が協力して攻撃を実装し、ペネトレーションテストで使用しているこのツールのリリースを開始しました。
他のコントリビューターも協力してくれています。詳細はGitHubをご覧ください。ただし、credits.mdも確認してください。
はい、もちろん歓迎します。プルリクエストを送信するか、[email protected]までご連絡ください。
PeiratesはGPLv2ライセンスで公開されています。
Peiratesバイナリだけを入手して攻撃を開始したい場合は、リリースページから最新のリリースを入手してください。
Docker Hub上にalpine-peiratesコンテナイメージがあり、バージョン番号のタグがPeiratesのバージョンに対応しています。
例えば、peiratesバージョン1.1.16を含むalpine-peirates:1.1.16の場合、次のように実行します:
docker pull bustakube/alpine-peirates:1.1.16
ソースからビルドしたい場合は、以下をお読みください!
peiratesを取得する
go get -v "github.com/inguardians/peirates"
まだライブラリソースを取得していない場合は取得する(警告:Kubernetesリポジトリ全体が必要なため、約1GBの容量を消費します)
go get -v "k8s.io/kubectl/pkg/cmd" "github.com/aws/aws-sdk-go"
実行可能ファイルをビルドする
cd $GOPATH/github.com/inguardians/peirates/scripts
./build.sh
これにより、同じディレクトリにpeiratesという名前の実行可能ファイルが生成されます。