Hello there, ('ω')ノ
まずは、PortSwiggerのアカデミーへ。
パスワードを忘れた際の一連の流れを確認するところから。
ここで自分の名前(wiener)を入力することに。
どうやら自分のメールアドレスにリンクを送ったようで。
自分(wiener)のメールを確認すると。
エンドポイントとパラメータに注目して。
下記のリンクが届いているので、クリックすると。
https://acb01f2f1f57d3b3c07b0d23001e001a.web-security-academy.net/forgot-password?temp-forgot-password-token=N1XNyHCVzXVohyogzT9lcbFSOMDg73tZ
新しいパスワードの登録ページへ。
ここまでが一連の流れで。
https://acb01f2f1f57d3b3c07b0d23001e001a.web-security-academy.net/forgot-password?temp-forgot-password-token=N1XNyHCVzXVohyogzT9lcbFSOMDg73tZ
メールを送ったリクエストを送った際のリクエスト内容を確認して。
メールに届くパスワードを変更するページのリンク先が変わるかの確認をするために。
ホストヘッダを変更してみると。
届いたメールを確認するとリンク先が変更したホストに変わっていたので。
ホストヘッダを変更すれば、悪意のあるサイトへ誘導できそうなので。
アカデミーでは。
悪意のあるサイトは、あらかじめエクスプロイトサーバが用意されているので。
下記のドメインを利用することに。
URL: https://exploit-ac801fa21f52d3d4c0e60d8b0101007a.web-security-academy.net/exploit
さきほどパスワードを忘れた際のリクエストのホストヘッダを。
エクスプロイトサーバのドメインに変更すると。
メールに届くリンク先が、エクスプロイトサーバに変更されるはずで。
ただ、これだけでは自分(wiener)のパスワードを変更することになるので。
usernameパラメータをcarlosに変更することに。
変更することで被害者(carlos)のパスワードを変更することになるはずなので。
これで、carlosのメールアドレスにパスワードを変更するリンク先が届いたはずで。
しかしながら、carlosでないとメールの確認はできないので。
目的はリンク先ではなく、carlosのトークンを知りたいだけなので。
エクスプロイトサーバのログを確認して、トークンを確認することに。
/forgot-password?temp-forgot-password-token=NSREf7EVbJSao64WTQkmhVkTv5yJxPu5
wienerのパスワードを変更するエンドポイントのパラメータのトークンを。
carlosのトークンに変更してアクセスすると。
表示されるページは、carlosのパスワード変更ページなので。
ここで、carlosの新しいパスワードに変更して。
https://acb01f2f1f57d3b3c07b0d23001e001a.web-security-academy.net/forgot-password?temp-forgot-password-token=NSREf7EVbJSao64WTQkmhVkTv5yJxPu5
calorsと新しいパスワードでログインすることができて。
Best regards, (^^ゞ