xss學習筆記1 反射型XSSReflected Cross Site Scripting

在學習xss,推薦一本紅書《XSS跨站腳本攻擊剖析與防御(完整版)》,這個有錢的自己買,沒錢的pdf? ,看完了就差實踐了,謝謝誒

先從DVWA的xss開始學習吧,網(wǎng)上學習xss的少,起碼比sql少

等級先調(diào)成low

Username:admin? ? ? Security Level:low? ? ?PHPIDS:disabled

Reflected Cross Site Scripting (XSS) --low

這里沒有進行過濾任何參數(shù),直接引用了name參數(shù),輸入

<script>alert(xss)</script>彈窗爆出xss.


Medium

`$name = str_replace('<script>'', $_GET['name'] );`

這里過濾了<script> ,采用了黑名單的方式,這里學過sql繞過的筒子應(yīng)該知道的,所以可以用雙寫,或者大小寫繞過啊

<Script>alert(/xss/)<sCript>? 大小寫可以是隨機的

或者<s<script>cript>alert(/xss/)</sc</script>ript> 雙寫的位子也可以是隨機的,學過繞過的應(yīng)該都知道,我就不說了。

High

`$name=preg_replace('/<(.*)s(.*)c(.*)r(.*)i(.*)p(.*)t/i','',$_GET['name']?);` 這里用正則過濾了會出現(xiàn)<script>的每個單詞,就是說大小寫和雙寫沒用了,但是由于它只過濾了<script>還可以用其他的js標簽來彈窗,比如 img的onerror報錯,<img src=1 onerror=alert(xss)>? ??onerror指的是在找不到指定圖片或者網(wǎng)速賊慢的時候執(zhí)行的另一個事件,通過一個錯誤的圖片讓彈窗執(zhí)行即可

<body onload=alert(xss)> 同理 在頁面加載之后立即執(zhí)行一段 JavaScript

Impossible

`$name = htmlspecialchars( $_GET['name'] );`

在Impossible里面用了htmlspecialchars把預定義的字符&、”、’、<、>轉(zhuǎn)換為HTML實體,也就是說不能用作html元素了,這樣就不能構(gòu)造代碼了

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容