説明
BucketLootは、S3互換バケットを自動的に検査するツールです。公開されたストレージバケット内のプレーンテキストで保管されているファイルをスキャンし、アセットの抽出、機密情報の露出の検出、カスタムキーワードや正規表現による検索を支援します。
本ツールは、Amazon Web Services(AWS)、Google Cloud Storage(GCS)、DigitalOcean Spaces、さらにはこれらのプラットフォームに接続されたカスタムドメインやURL上にデプロイされたバケットのスキャンが可能です。出力はJSON形式で提供されるため、ユーザーは好みに応じて解析したり、他のツールに転送してさらに処理を行うことができます。
BucketLootはデフォルトでゲストモードを備えており、初期段階でAPIトークンやアクセスキーを指定せずにスキャンを実行できます。ツールはXMLレスポンスで返される最大1000ファイルをスクレイピングします。ストレージバケットに1000件を超えるエントリがあり、完全なスキャンを実行したい場合は、プラットフォームの認証情報を指定することで対応できます。ツールの詳細については、
ブログをご確認ください。
インストール
以下の方法のいずれかでBucketLootをインストールできます。
直接インストール
go install github.com/redhuntlabs/bucketloot/cmd/bucketloot@latest
ソースからインストール
# リポジトリのクローン
git clone https://github.com/redhuntlabs/BucketLoot.git
cd BucketLoot
# ツールのインストール
go install ./cmd/bucketloot
インストール後、ターミナル上の任意の場所から bucketloot を実行できます!
使用方法
# 基本的な使い方
bucketloot https://example-bucket.s3.amazonaws.com
# オプション付き
bucketloot -slow -notify https://example-bucket.s3.amazonaws.com
# キーワード検索
bucketloot -search "password" https://example-bucket.s3.amazonaws.com
# 出力の保存
bucketloot -save results.json https://example-bucket.s3.amazonaws.com
# フルスキャンモード(credentials.jsonが必要)
bucketloot -full https://example-bucket.s3.amazonaws.com
通知機能とフルスキャンモードを使用するには、作業ディレクトリに notifyConfig.json と credentials.json を作成する必要があります。詳細はドキュメントを参照してください。
機能
機密情報のスキャン
80以上のユニークな正規表現シグネチャを用いて、設定ミスのあるストレージバケットから機密情報の露出を発見し、その重大度をタグ付けします。ユーザーは
regexes.json ファイル内のシグネチャを変更したり、独自のシグネチャを追加することができます。大規模に検出可能で他のユーザーにも役立つ優れたシグネチャがあれば、ぜひPRを作成してください!
機密ファイルのチェック
誤った機密ファイルの漏洩は、個人や組織のセキュリティ態勢に影響を与える大きな問題です。BucketLootには
vulnFiles.json に80以上のユニークな正規表現シグネチャリストが用意されており、ファイル名や拡張子に基づいて機密ファイルを検出できます。
Digモード
特定のターゲットWebサイトが、機密情報やその他の機密データを漏洩させる設定ミスのバケットを使用しているかどうかを素早く確認したい場合に便利です。Digモードでは、S3以外のターゲットを指定し、レスポンスボディからURLをスクレイピングしてスキャンできます。
アセット抽出
アセット発見のレベルを向上させたいですか?BucketLootは、公開されたストレージバケット内に存在する可能性のあるすべてのURL、サブドメイン、ドメインを抽出し、隠されたエンドポイントを発見するチャンスを提供します。これにより、従来の偵察ツールよりも優位に立つことができます。
検索
アセット発見や機密情報露出のスキャンだけでなく、カスタムキーワードや正規表現クエリによる検索も可能です。これにより、ユーザーが正確に探しているものを簡単に見つけることができます。