Shikata Ga Nai

Private? There is no such things.

Open Redirect vulnerability found using link parameterを訳してみた

Hello there, ('ω')ノ

 

リンクパラメータを使用して見つかったオープンリダイレクトの脆弱性を。

 

脆弱性:

 オープンリダイレクト

 

記事:

 https://muhammad-aamir.medium.com/open-redirect-vulnerability-found-using-link-parameter-5fc43e2ea8fd

 

今回は、ターゲットのWebサイトがredact.comで。

ログインページに下記が含まれていて。

 https://redact.com/login?redirect=https://anysubdomain.redact.com

 

これは、ユーザがログインするとすぐに下記へ移動して。

 https://anysubdomain.redact.com

 

ここで、「anysubdomain」は、https://redact.comのサブドメインで。

https://mysite.redact.comなどの無効なサブドメインについても言及できて。

アプリケーションは、リダイレクトURLの最後に「redact.com」があることを確認し。

その特定のWebサイトを読み込もうとして。

有効な機能しているサブドメインの場合、それぞれのウェブサイトが読み込まれて。

 

一方、https://mysite.redact.comなどの無効なサブドメインの場合だと。

アプリケーションはそのWebサイトを読み込もうとすると。

エラーメッセージが表示されて。


ターゲットの無効なサブドメインへのリダイレクト:

オープンリダイレクトのために。

いくつかのクールな回避策を試すことに。

それで、私はhttps://redact.comのさまざまなサブドメインを探し始めて。

しばらくして、https://link.redact.comのような。

アドレスを指しているリンクを見つけて。

幸い、https://redact.comの環境ではリンクが無効だったので。

それに焦点を当てて調査を開始することに。

 

すぐに、「link」とも呼ばれるパラメータが付加されているのを見つけて。

このパラメータは、自分の指定したウェブサイトにリダイレクトして。

https://link.redact.com?link=https://mysite.comで。

https://mysite.comへのオープンリダイレクトが指定されていて。

 

しかし、https://link.redact.comは範囲外なので。

スコープ内のアイテム、つまりhttps://redact.com/loginで使用することに。

よって、オープンリダイレクトのペイロードを含む最終的なURLは下記のとおりで。

 https://redact.com/login?redirect=https://link.redact.com?link=https://mysite.com

 

上記のURLは、すでにログインしているユーザを。

https://mysite.comに誘導して。

まだログインしていないユーザに表示される場合は。

最初にユーザにアプリケーションのログイン画面が表示され。

ログインしている場合はhttps://mysite.comに移動して。

 

影響は明らかで。

つまり、ログインしたユーザは、資格情報などの機密情報を盗むために。

フィッシングWebページに移動する可能性があって。

 

Best regards, (^^ゞ