您好,登錄后才能下訂單哦!
??在實(shí)際***中,當(dāng)我們發(fā)現(xiàn)有文件上傳的地方時(shí),我們會(huì)盡可能地嘗試所有的辦法進(jìn)行webshell的上傳,只要能上傳webshell,就說(shuō)明本次***至少成功了一半,后續(xù)就看獲得的webshell的權(quán)限情況進(jìn)行下一步的操作。對(duì)于文件上傳漏洞的防護(hù)來(lái)說(shuō),主要分為以下兩類:白名單限制和黑名單限制,對(duì)于黑名單的限制,我們只需要尋找一些較為偏僻的可執(zhí)行后綴、大小寫混寫以及相關(guān)操作系統(tǒng)的特性(如windows文件名后綴的最后會(huì)自動(dòng)過(guò)濾空格以及.等)來(lái)進(jìn)行繞過(guò);對(duì)于白名單的限制來(lái)說(shuō),一般是結(jié)合解析漏洞、代碼函數(shù)漏洞(icov(80-EF截?cái)啵?,造?0截?cái)嗟南嚓P(guān)函數(shù))以及相關(guān)操作系統(tǒng)特性(如windows10文件名長(zhǎng)度總共為223包括后綴,win2012的為237,linux ubuntu0.16.04.1文件名長(zhǎng)度252等)來(lái)進(jìn)行繞過(guò)!下面我們將以u(píng)buntu0.16.04.1操作系統(tǒng)作為演示情況!
??首先我們輸入php后綴進(jìn)行測(cè)試,發(fā)現(xiàn)提示錯(cuò)誤的文件后綴,如下圖所示:
??接著我們輸入一個(gè)不存在的文件后綴進(jìn)行測(cè)試,發(fā)現(xiàn)依舊提示是錯(cuò)誤的后綴,如下圖所示,到此我們可以簡(jiǎn)單認(rèn)為本上傳點(diǎn)是白名單限制上傳,只允許特定后綴文件上傳!
??通過(guò)上面我們知道是白名單限制,并且通過(guò)前期信息收集發(fā)現(xiàn)webserver為Nginx,操作系統(tǒng)為linux(ubuntu),通過(guò)Nginx解析漏洞無(wú)法進(jìn)行上傳,所以我們使用構(gòu)造超長(zhǎng)文件名進(jìn)行繞過(guò)本次的白名單限制上傳。
??由于很多時(shí)候我們不知道具體的操作系統(tǒng),所以我們只能使用很長(zhǎng)文件名進(jìn)行測(cè)試(如果有報(bào)錯(cuò)信息提示我們就可以慢慢構(gòu)造出來(lái),如果沒(méi)有報(bào)錯(cuò)信息就只能慢慢嘗試(可以自己先搭建一些常見的系統(tǒng)【win03 win08 win12 ubuntu redhat等】進(jìn)行測(cè)試文件名長(zhǎng)度為多少來(lái)進(jìn)行逐一測(cè)試))。
??首先進(jìn)行嘗試超長(zhǎng)字符,提示文件名過(guò)長(zhǎng),如下圖所示,然后我們進(jìn)行逐個(gè)遞減,減到一個(gè)剛好能成功上傳的地方。
??通過(guò)最后得知,最長(zhǎng)為252,如下圖所示:
??最后我們將jpg后綴前面的文件名末尾更換為.php來(lái)進(jìn)行文件上傳,文件上傳成功,如下圖所示:
??最后我們通過(guò)訪問(wèn)進(jìn)行驗(yàn)證是否可以正常解析該文件,從而獲取webshell,通過(guò)訪問(wèn)可知,成功獲取webshell,如下圖所示:
關(guān)于其他文件解析及上傳參考此處
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。