0x00bWAPP介紹
bwapp是一款非常好用的漏洞演示平臺,包含有100多個漏洞足淆,相對于DVWA練習(xí)的更加全面礁阁,情景也更加豐富氮兵。bwapp可以單獨下載歹鱼,然后部署到apache+php+mysql的環(huán)境,也可以下載他的虛擬機版本bee-box南片。
下載地址:bWAPP
0x01HTML injection Reflected GET
最開始是反射型的html注入疼进,low等級考慮常見的注入如:<svg/onload=alert(2)>即可,也可以選擇查看源代碼進(jìn)行對應(yīng)的繞過拣帽,但是因為實際滲透測試環(huán)境中大多數(shù)時候都是黑盒測試嚼锄,所以先不看源代碼,到實在沒有思路的時候再去對應(yīng)源代碼進(jìn)行繞過吧……
medium等級輸入:<svg/onload=alert(2)>沒有反應(yīng)拧粪,因為是反射型可霎,可以查看源代碼看看輸出在源代碼中的樣子
可以看到尖括號都被替換掉了宴杀,所以可以使用尖括號的urlencode形式來繞過檢測旺罢,通過hackbar就可以快速得到該語句的編碼之后的格式:%3csvg%2fonload%3dalert(2)%3e
high等級我是沒繞過的,從源代碼的返回來看是將尖括號轉(zhuǎn)義了荣暮,同時不對輸入進(jìn)行decode罩驻,查閱源代碼如下:
而對應(yīng)的medium等級的源代碼雖然也有轉(zhuǎn)義但是最后加了decode惠遏,所以能夠?qū)⑽覀兊?3C再轉(zhuǎn)為左尖括號。
0x02HTML injection Reflected POST
POST在這里利用的方式與GET相同抽高。
0x03HTML injection Reflected CURRENTURL
源代碼中可以看到是通過document.URL來取當(dāng)前的url寫到頁面上翘骂。
document.write(document.URL)試著直接在URL后添加 語句碳竟,但是由于在URL中被編碼了,所以無法解析執(zhí)行莹桅。
在burpsuite中抓到的包顯示尖括號已經(jīng)被編碼了
所以這里就可以嘗試在burpsuite中直接再將編碼的形式改為尖括號懂拾。這里只有第一次試驗成功铐达,之后都提示連接失敗。
0x04HTML injection Reflected stored
low等級還是構(gòu)造<svg/onload=alert(2)>贾节。
medium等級沒有找到直接繞過的辦法衷畦,但是依舊可以使用burpsuite抓包修改參數(shù)的方法強行修改祈争。
在entry插入svg語句依舊能夠彈窗,而且此時難度以及被降為low了忿墅。對于CTF這是個思路沮峡,但是實際滲透還沒有遇到過邢疙。
0x05 iFrame Injection
開始看了半天不知道這個是啥意思疟游,最后還是看了源代碼÷可以看到這里判斷了是否設(shè)置這三個參數(shù)另绩,如果沒有就會自動生成花嘶,所以構(gòu)造這個paramurl參數(shù)的輸入
http://127.0.0.1:82/bwapp/iframei.php?ParamUrl=%22onload=alert(2)%3E%3C/iframe%3E&ParamWidth=250&ParamHeight=250
low等級的可以改變paramurl,到了medium就無法改變了津辩,因為在源代碼中限制了該參數(shù)容劳。
此時可以修改width參數(shù)竭贩,將輸入進(jìn)行urldecode添加到width屬性之后就可以繞過了
http://127.0.0.1:82/bwapp/iframei.php?ParamUrl=ro222bots.txt&ParamWidth=250&ParamHeight=%22%20onload%3dalert(2)%3e%3c%2fiframe%3e
乍一看和上面感覺沒有什么差別留量,但是下面這個在輸入的時候是需要先編碼的,low等級的時候不需要任何編碼就可以