
機能 - 使い方 - クイックスタート - インストール - 議論
INPUT: (1 required)
-bucket string チェックするバケットの名前。
-bucket-file string チェックするバケット名のファイル。
-mq RabbitMQに接続してバケットを取得する。設定ファイルのキー"mq"が必要。デフォルト: "false"
OUTPUT:
-db 結果をPostgresデータベースに保存する。設定ファイルのキー"db.uri"が必要。デフォルト: "false"
-json ログを人間が読める形式ではなくJSON形式でstdoutに出力する。デフォルト: "false"
OPTIONS:
-enumerate バケットのオブジェクトを列挙する(時間がかかる場合あり)。デフォルト: "false"
-provider string オブジェクトストレージプロバイダー: aws, custom, digitalocean, dreamhost, gcp, linode, scaleway - custom は設定ファイルが必要。デフォルト: "aws"
-threads int スキャンに使用するスレッド数。デフォルト: "4"
DEBUG:
-verbose 詳細なログを有効にする。デフォルト: "false"
-version バージョンを表示する。デフォルト: "false"
設定ファイルが必要な場合、config.yml は次の場所で検索されます: "." "/etc/s3scanner/" "$HOME/.s3scanner/"
このツールが役立つと思われましたら、開発を支援するために寄付をご検討ください。スポンサーオプションはこのリポジトリページのサイドバーまたは FUNDING.yml にあります。
このプロジェクトの継続的なスポンサーである tines に多大な感謝を。
ファイルにリストされたバケット名をAWSでスキャンし、すべてのオブジェクトを列挙する
$ s3scanner -bucket-file names.txt -enumerate
GCPのバケットをスキャンし、すべてのオブジェクトを列挙し、結果をデータベースに保存する
$ s3scanner -provider gcp -db -bucket my-bucket -enumerate
| プラットフォーム | バージョン | 手順 |
|---|---|---|
| BlackArch | pacman -S s3scanner | |
| Docker | docker run ghcr.io/sa7mon/s3scanner | |
| Go | go install -v github.com/sa7mon/s3scanner@latest | |
| Kali Linux | apt install s3scanner | |
| MacOS | brew install s3scanner | |
| Parrot OS | apt install s3scanner | |
| Windows - winget | winget install s3scanner | |
| NixOS stable | nix-shell -p s3scanner | |
| NixOS unstable | nix-shell -p s3scanner | |
| その他 - ソースからビルド | git clone [email protected]:sa7mon/S3Scanner.git && cd S3Scanner && go build -o s3scanner . |
s3scanner は -bucket、-bucket-file、-mq のいずれか1つの入力タイプを必要とします。
INPUT: (1 required)
-bucket string チェックするバケットの名前。
-bucket-file string チェックするバケット名のファイル。
-mq RabbitMQに接続してバケットを取得する。設定ファイルのキー"mq"が必要。デフォルト: "false"
-bucket単一のバケットをスキャンする
s3scanner -bucket secret_uploads
-bucket-fileファイルにリストされたすべてのバケット名をスキャンする
s3scanner -bucket-file names.txt
ここで names.txt には1行に1つのバケット名が含まれます
$ cat names.txt
bucket123
assets
image-uploads
複数回リストされたバケット名は1回だけスキャンされます。
-mqRabbitMQサーバーに接続し、スキャンするバケット名を含むメッセージを消費します。
s3scanner -mq
メッセージはJSONエンコードされた Bucket オブジェクトである必要があります - Golangでの公開例は mqingest を参照してください。
-mq は設定ファイルのキー mq.uri と mq.queue_name が必要です。例は設定ファイルのセクションを参照してください。