S3 Bucket Misconfiguration: From Basics to Pawn から学ぶ

ソース:

medium.com

脆弱性AWS S3

 

訳:

S3 バケットを見つける方法:

GitHub で利用できる多くのオンライン ツールを使用して、Web サイトの S3 バケットを見つけることができます。
そのうちのいくつかをリストアップしたいと思います。


Lazy S3
bucket_finder
AWS Cred Scanner
sandcastle
Mass3
Dumpster Diver
S3 Bucket Finder
S3Scanner 

などなど…

 

構成が間違っている S3 バケットをテイクオーバーするためのガイド:
これは多くの部分で構成されています。

I) S3 バケットの検索
プログラムのS3バケットを見つけるために、nahamsec のlazys3を使用しました。

 

Command: ruby lazys3.rb site_name

 

 

The output of lazys3 comes with a S3 bucket.
http://[bucketname].s3.amazonaws.com/

 

 

 

II) S3 バケットの識別
次のような URL を使用してバケットと対話できます。
http://[バケット名].s3.amazonaws.com/

さらに、バケットに「静的 Web サイト ホスティング」プロパティがある場合、次の URL を介して静的 HTML ページへのアクセスが提供されます。
http://[バケット名].s3-website-[リージョン].amazonaws.com/

 

III) AWS コマンドラインインターフェイスのインストール
次に、aws-cli をインストールする必要があります (私は Kali Linux を使用することを好みます)

 

Command: pip install awscli

 

 

取り付け後、完全に取り付けられているかどうかを確認してください。

 

Command: aws --version

 

 

IV) Amazon AWS アカウントの作成
アカウントを作成しそのためには、ここで 、詳細を入力してコンソールにサインインしてください

V) アクセスキーの取得
サインインした後、https://console.aws.amazon.com/iam/ に移動し、[ユーザー] をクリックします。

 

新しいユーザーを追加する 

 

 

 

 

 

 

 

CSV ファイルをダウンロードすると、アクセス キーが見つかります。

 

 

VI) AWS CLI の設定
kali ターミナルに移動して次のように入力します 

 

 

これで準備完了です。

VII) 脆弱な S3 バケットのチェック

 

Command: aws s3 ls s3://[bucketname]

 

 

場合によってはこのエラーが発生する場合があるため、このコマンドを使用することをお勧めします。 

 

Command: aws s3 ls s3://[bucketname] --no-sign-request

 

 

大丈夫、私たちは正しい道を進んでいます。

現在、試すことができるコマンドや操作はいくつかあります。

 

Read File: aws s3 ls s3://[bucketname] --no-sign-requestMove File: aws s3 mv yourfile s3://[bucketname]/test-file.txt --no-sign-requestCopy Files : aws s3 cp yourfile s3://[bucketname]/test-file.svg --no-sign-request

 

 

 

Delete Files : aws s3 rm s3://[bucketname]/test-file.svg --no-sign-request

 

 

 

ほなほな。