academy CSRF 7問目
Lab: SameSite Lax bypass via method override
順番飛ばしてすみません。
新しく増えていた問題で面白そうだったので..
ログインして、POST /login リクエストを確認
setCookieに、samesiteがないので、今回は、デフォルトのlaxが適用される
メール変更する
POST /my-account/change-email リクエストを確認
CSRFトークンらしきものがないみたい。
samesite=laxさえ突破できれば、CSRF脆弱性を実証できるのでは?
getに変えれば突破できるかも
POST /my-account/change-emailをリピータに渡して
右クリックで、change request method して、send
405 method not allowed だめみたい
GETのパラメータに、&_method=POST を追加
302 found おおっ、これでいけたみたい
あとは、エクスプロイトサーバーのbodyに
このURLを飛ばすJS文を作って貼り付けます
Deliver exploit to victitm(被害者へ送る)ボタンを押して、クリア!
メールアドレスも変更されている
今回のポイントは、GETメソッドにすれば、samesite=laxを回避できるとのことで、
なんと、GETのパラメータに、_method=POST を渡せば通ってしまうところ。
だから、CSRF対策で、GET封じが大事なんですね。
_method=POSTでいける設定のサーバーってどれくらいあるんでしょうか?
さらに興味が湧いてきます
–)v
コメント