Shikata Ga Nai

Private? There is no such things.

Exploiting Unrestricted File Upload to achieve Remote Code Execution on a bug bounty programを訳してみた

Hello there, ('ω')ノ

 

無制限のファイルアップロードを利用して、リモートコード実行を。

 

脆弱性:

 無制限のファイルアップロード

 RCE

 

記事:

 https://infosecwriteups.com/exploiting-unrestricted-file-upload-to-achieve-remote-code-execution-on-a-bug-bounty-program-85661516712


スコープ内のすべてのサブドメインがリストされていたので。

サブドメインを列挙する必要がなかったので。

利用可能なサブドメインを閲覧した後に。

興味をそそる下記のサブドメインに落ち着いて。

 https://asdfasdf.redacted.com

 

上記にアクセスすると、ユーザーIDとパスワードフィールドを含む。

ログインフォームが表示されて。

ユーザは、Webアプリケーションに対して自分自身を認証するために。

これらの値を提供する必要があって。

クレデンシャルをプロビジョニングするための登録フォームがなかったので。

認証されていないときにテストできるバグを見つけることに焦点を移すことに。

興味がありそうなサブドメイン上の他のエンドポイントを見つけたく。

いくつかの隠されたコンテンツ発見をすることに決めたので。

Githubリポジトリから取得したffufとSecListsのワードリストを利用することに。

 

 https://github.com/ffuf/ffuf

 

f:id:ThisIsOne:20210812142910p:plain

 

 https://github.com/danielmiessler/SecLists

 

f:id:ThisIsOne:20210812142823p:plain

 

ツールは、興味深い結果を返すのに時間はかからず。

下記は、https://asdfasf.redacted.comに対してffufを実行してからの出力で。

 

f:id:ThisIsOne:20210812135649p:plain

 

まずは、301 HTTP応答コードを指定して。

後続のディレクトリに実際にアクセスできるかどうか。

フォルダへのアクセスが適切に制限されることが多いという事実に懐疑的で。

ディレクトリブルートフォースで発見した各エンドポイントにアクセスすると。

それらのディレクトリの下にある利用可能なすべてのコンテンツには。

驚いたことに直接アクセスできて。

下記のディレクトリは、アップロードされたファイルやバックアップファイル。

および、Webアプリケーションのソースファイルからすべてが含まれているので。

特に興味深いもので。

 /upload
 /UploadFile
 /Application
 /Bak
 /init
 /offline

 

さまざまなディレクトリを閲覧していると。

販売注文データを含むExcelシートをアップロードするために使用できる。

aspxエンドポイントに出くわして。

別の拡張子のファイルもアップロードできて。

さらにアップロードされたファイルは。

以前に見つけた/uploadフォルダからアクセスできたので。

メモ帳でファイルを作成して拡張子をtxtで保存して。

テキストファイルをWebアプリケーションにアップロードしてみると。

uploadフォルダでアクセスできて。

 

f:id:ThisIsOne:20210812135729p:plain

 

次に、ashxファイルをWebアプリケーションにアップロードすると。

これも関連するフォルダに正常にアップロードできて。

このリポジトリのWebシェルを使用すると。

脆弱なサーバでコードを実行できて。

 

Best regards, (^^ゞ