# xss之過濾 - 嘗試輸入 payload ``<script>alert("xss")</script>`` - 發現只有出現'>',表示<*script> 有被過濾 ![image](https://hackmd.io/_uploads/B1dl0h0Ip.png) - 發現URL有payload 這個是反射型XSS(GET) - source page - ```php <div id="xssr_main"> <p class="xssr_title">阁下,请问你觉得人生苦短吗?</p> <form method="get"> <input class="xssr_in" type="text" name="message" /> <input class="xssr_submit" type="submit" name="submit" value="submit" /> </form> <p>别说这些'>'的话,不要怕,就是干!</p> </div> </div><!-- /.page-content --> ``` - <script> 標籤被刪掉了 - 輸入些其他特殊字符 ![image](https://hackmd.io/_uploads/SkqZRh0U6.png) - 都有被讀取,表示目前只有過濾掉<script> - 嘗試繞過此過濾 - 大小寫 - 對於JS和HTML來說不區分大小寫 - 將payload改成大小寫混合來注入 - ``<ScRipt>alert(1)</sCriPt>`` ![image](https://hackmd.io/_uploads/rk18A2RUT.png) - 其他攻擊payload - ``<img src=x onerror=alert('xss')>`` - <img> 標籤用於顯示圖像,但在這里,src 屬性被設置為 "x",這個值不是一個有效的圖像路徑。 - 當瀏覽器嘗試加載這個圖像時,會觸發 onerror 事件。 - 如果加載圖像時發生錯誤(例如圖像不存在或無法加載),瀏覽器將觸發 onerror 事件 - 在 onerror 事件中,alert('xss') 被執行。出現JavaScript彈出框,顯示字符串``xss`` ![image](https://hackmd.io/_uploads/HJ0703RIa.png) - ``<a herf="#" onclick="alert(document.cookie)">`` ![image](https://hackmd.io/_uploads/S1TIR2CLa.png)
{"title":"xss之過濾","description":"嘗試輸入 payload <script>alert(\"xss\")</script>","contributors":"[{\"id\":\"e8de30ea-0683-40e8-973b-1acc1b3e6824\",\"add\":1328,\"del\":0}]"}
Expand menu