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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
PMapper — AWSのIAM権限を迅速に評価するツール | Kitploit
ツール/GitHubGitHub/nccgroup/pmapper
特権昇格脆弱性分析ペネトレーションテストクラウドセキュリティアイデンティティ&アクセス管理 (IAM)
GitHubnccgroup/pmapper

PMapper

AWSのIAM権限を迅速に評価するツール

リポジトリを見る
1.6k1974年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

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

Principal Mapper

Principal Mapper (PMapper) は、AWS アカウントまたは AWS 組織に対する AWS Identity and Access Management (IAM) の設定におけるリスクを特定するためのスクリプト兼ライブラリです。アカウント内のさまざまな IAM ユーザーとロールを有向グラフとしてモデル化し、権限昇格の可能性や、攻撃者が AWS 内のリソースやアクションにアクセスするためにたどる可能性のある代替経路をチェックできるようにします。

PMapper には、AWS の認可動作をローカルでシミュレートするクエリメカニズムが含まれています。プリンシパルが特定のアクションやリソースにアクセスできるかどうかを判断するクエリを実行する際、PMapper はそのユーザーまたはロールが、そのアクションやリソースにアクセスできる他のユーザーやロールにアクセスできるかどうかもチェックします。これにより、ユーザーが S3 オブジェクトを読み取る権限はないが、S3 オブジェクトを読み取ることができる EC2 インスタンスを起動できるといったシナリオを捉えることができます。

詳細については、プロジェクトWiki を参照してください。

インストール

必要条件

Principal Mapper は botocore ライブラリと Python 3.5+ を使用して構築されています。また、pydot(pip で入手可能)と graphviz(Windows、macOS、Linux で https://graphviz.org/ から入手可能)が必要です。

Pip からのインストール

root@kitploit:~
pip install principalmapper

ソースコードからのインストール

リポジトリをクローンします:

root@kitploit:~
git clone [email protected]:nccgroup/PMapper.git

次に Pip でインストールします:

root@kitploit:~
cd PMapper
pip install .

Docker の使用

(ソースからクローンした後)

root@kitploit:~
cd PMapper
docker build -t $TAG .
docker run -it $TAG

docker run ... を呼び出す際に、-e|--env または --env-file を使用して認証情報用の AWS_* 環境変数を渡すか、-v を使用して ~/.aws/ ディレクトリをマウントし、AWS_CONFIG_FILE および AWS_SHARED_CREDENTIALS_FILE 環境変数を使用できます。現在の Dockerfile では、pmapper -h がすぐに使用できるシェルと、graphviz がすでにインストールされた状態になります。

使い方

コマンドラインで PMapper を使用する方法の詳細については、Wiki の Getting Started Page を参照してください。すべてのコマンドライン機能とライブラリコードの詳細が記載されたページもあります。

簡単な例を以下に示します:

root@kitploit:~
# AWS CLI プロファイル "skywalker" を通じてアクセスされるアカウントのグラフを作成
pmapper --profile skywalker graph create
# [... グラフ作成の出力 ...]

# IAM ユーザーを作成できるユーザーを確認するクエリを実行
$ pmapper --profile skywalker query 'who can do iam:CreateUser'
# [... クエリの出力 ...]

# "admin" ユーザー以外で、大きな高価な EC2 インスタンスを起動できるユーザーを確認するクエリを実行
$ pmapper --account 000000000000 argquery -s --action 'ec2:RunInstances' --condition 'ec2:InstanceType=c6gd.16xlarge'
# [... クエリの出力 ...]

# 権限昇格のプリセットクエリを実行し、現在の "admin" ユーザーの報告をスキップ
$ pmapper --account 000000000000 query -s 'preset privesc *'
# [... 権限昇格レポート ...]

# 管理者/権限昇格/プリンシパル間アクセスの SVG 表現を作成
$ pmapper --account 000000000000 visualize --filetype svg
# [... 情報出力、ファイル作成 ...]

--profile の使用に注意してください。これは AWS CLI と同じ動作をします。また、後続の query/argquery/visualize の呼び出しでは --account 引数を使用していますが、これは操作するアカウントを確認する手間を省くためのものです(そうしないと PMapper は API コールを行ってそれを判断します)。

可視化の例:

--only-privesc を使用した場合:

コントリビューション

大歓迎です。開始する前にイシューで調整し、プルリクエストは現在の開発ブランチ(通常 vX.Y.Z-dev の形式)を対象としてください。

ライセンス

root@kitploit:~
Copyright (c) NCC Group and Erik Steringer 2019. This file is part of Principal Mapper.

  Principal Mapper is free software: you can redistribute it and/or modify
  it under the terms of the GNU Affero General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  Principal Mapper is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU Affero General Public License for more details.

  You should have received a copy of the GNU Affero General Public License
  along with Principal Mapper.  If not, see <https://www.gnu.org/licenses/>.
ツールをダウンロード