網(wǎng)絡(luò)安全漏洞滲透測試之文件上傳繞過思路案例詳解
引言
分享一些文件上傳繞過的思路,下文內(nèi)容多包含實戰(zhàn)圖片,所以打碼會非常嚴(yán)重,可多看文字表達(dá);本文僅用于交流學(xué)習(xí), 由于傳播、利用此文所提供的信息而造成的任何直接或者間接的后果及損失,均由使用者本人負(fù)責(zé),文章作者不為此承擔(dān)任何責(zé)任。
案例一
一次項目滲透時,通過往png后綴隨便加個字符可知該上傳點為白名單上傳,正常情況下無法繞過

通過觀察接口信息,發(fā)現(xiàn)接口名字為UploadImg,猜測該接口用于圖片上傳,按照開發(fā)的習(xí)慣,保不準(zhǔn)會存在temp、test,這類的接口,隨后通過fuzz找到存在的上傳接口(file),但此時的接口(file)上傳文件仍舊存在限制,需要繞過。

由于黑名單限制不夠嚴(yán)謹(jǐn),經(jīng)過多個偽后綴嘗試,發(fā)現(xiàn).cer后綴可繞過限制并被解析

然后就getshell進(jìn)內(nèi)網(wǎng),后面的操作就不多說了。

很多師傅看到白名單上傳就會認(rèn)為這個上傳點足夠安全,無法繞過,但其實不然,在存在多個上傳接口的情況下,或許會存在沒做限制,或者限制不嚴(yán)格的上傳點也不一定,關(guān)鍵的是我們要如何發(fā)現(xiàn)這些接口,在此類接口存在限制時,如何去進(jìn)行繞過,下面再舉一個和接口繞過相關(guān)的例子。
案例二
upload_2018.php接口白名單上傳,在正常情況下,改變后綴會導(dǎo)致上傳失敗,如下

再進(jìn)一步測試時發(fā)現(xiàn)存在多個上傳接口,刪除_2018使用upload接口進(jìn)行文件上傳,可導(dǎo)致任意文件上傳

進(jìn)一步傳shell時發(fā)現(xiàn)存在waf(某訊云),需進(jìn)一步繞過。

通過尋找域名真實IP,使用真實IP進(jìn)行文件上傳,繞過waf限制,為防止有心人,這里直接把IP給打碼蓋住了,以防萬一。

很多時候有一些開發(fā)為了便捷性,在部署上傳接口時限制不夠嚴(yán)謹(jǐn)或壓根沒做限制,這導(dǎo)致一旦被繞過限制傳shell,都會導(dǎo)致非常嚴(yán)重的后果,當(dāng)然,我們可以找一些temp、test這類上傳接口,因為此類接口多數(shù)是開發(fā)過程中用作測試的,這種接口幾乎都是無限上傳文件類型的,同樣的我們也可以找一些api文檔進(jìn)行上傳接口的發(fā)現(xiàn),這或許會有驚喜也說不定
案例三
這是一個把圖片轉(zhuǎn)base64的文件上傳類型,具體繞過如下:

通過抓包發(fā)現(xiàn)圖片是以base64進(jìn)行上傳的,觀察了下數(shù)據(jù)包,發(fā)現(xiàn)可通過更改upload_0字段內(nèi)容上傳任意文件

訪問HTML頁面,成功被解析,可進(jìn)一步上傳shell獲取權(quán)限。

一句話shell上傳后發(fā)現(xiàn)無法執(zhí)行命令,之后通過上傳PHPinfo發(fā)現(xiàn)其存在disable_functions,利用某斯拉繞過限制,getshell



案例四
一個關(guān)于nginx解析漏洞的利用,這個漏洞是很久之前挖到的,這種漏洞現(xiàn)在應(yīng)該不會存在了,單單是waf都能欄掉,這個就作為思考開拓說一下:
一次外網(wǎng)打點時發(fā)現(xiàn)了目標(biāo)的一個核心系統(tǒng),通過踩點發(fā)現(xiàn)了某上傳功能,但上傳接口存在白名單限制,且無其它的上傳接口,由于這個站的shell比較重要,必須拿到,之后通過漏洞挖掘,發(fā)現(xiàn)目標(biāo)存在nginx解析漏洞,結(jié)合圖片上傳點成功獲取到了內(nèi)網(wǎng)據(jù)點。



其它場景&總結(jié)
有些時候文件上傳成功后端沒有返回路徑,只回顯了一個id號,這時候如果目標(biāo)存在注入的話,我們嘗試可以用sqlmap的–search參數(shù)或者SQLshell對返回的ID號進(jìn)行搜索,這樣說不定就能找到shell地址了,之前在關(guān)于Swagger-UI下的滲透實戰(zhàn) 23也說過,感興趣的可以去看看;也有文件上傳成功卻只回顯一個文件名的,在前不久的一次攻防就遇到這種情況,后來是用了fuzz找到了完整的shell路徑,另外在某些時候,上傳文件可以跨目錄,那么我們可以通過…/進(jìn)行跨目錄上傳,運氣好的話,或許會在幾個…/后把shell傳到域名的根目錄下,如果當(dāng)前上傳文件夾無執(zhí)行權(quán)限,那么跨目錄上傳shell也是個不錯的思路;另外,如果上傳目錄可控,可上傳文件到任意目錄的話,在linux場景我們可上傳一個ssh秘鑰用于遠(yuǎn)程登錄,極端一點的話,可考慮上傳passwd、shadow文件覆蓋系統(tǒng)用戶,但前提是權(quán)限要足夠大。
如果不能跨目錄,站點又沒有注入的話,那么我們可以嘗試尋找網(wǎng)站日志文件,例如泛微E-COLOGY日志的日志,像這種日志文件是有規(guī)律可循的,可以用burp進(jìn)行日志爆破,或許在日志文件中能找到shell路徑也說不定。



再者就是文件包含和文件讀取了,文件讀取的話可以通過讀取日志和配置文件來發(fā)現(xiàn)shell地址,但是成功率太低了,至于文件包含,除了靶場和ctf,實戰(zhàn)還沒碰過。
還有一個關(guān)于burp的使用技巧,這是真實遇到的,上傳shell后沒有回顯路徑,但是通過http history搜索shell的名字發(fā)現(xiàn)了完整的shell路徑,因為傳上去的文件,如圖片這類的總歸是顯示出來的,這時候可以先在web應(yīng)用到處點點,多加載一些數(shù)據(jù)包,然后再到http history搜索shell的名字,或許會有驚喜也說不定。
某些時候上傳黑名單不嚴(yán)謹(jǐn),那么我們可用偽后綴進(jìn)行繞過,其它多的就不說了,大概思路就這樣,當(dāng)繞過限制拿到shell時,總會給我?guī)順啡ぃ蛟S這就是我喜歡滲透的原因。

以上就是網(wǎng)絡(luò)安全漏洞滲透測試之文件上傳繞過思路案例詳解的詳細(xì)內(nèi)容,更多關(guān)于網(wǎng)絡(luò)安全漏洞滲透測試之文件上傳繞過的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Web網(wǎng)絡(luò)安全分析二次注入攻擊原理詳解
這篇文章主要為大家講解介紹了Web網(wǎng)絡(luò)安全分析二次注入攻擊原理的詳解,有需要相關(guān)學(xué)習(xí)的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11
Web網(wǎng)絡(luò)安全漏洞分析存儲型XSS攻擊原理
這篇文章主要為大家介紹了Web網(wǎng)絡(luò)安全漏洞分析存儲型XSS攻擊原理,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-11-11
Web網(wǎng)絡(luò)安全解析cookie注入攻擊原理
這篇文章主要為大家介紹了Web網(wǎng)絡(luò)安全分析cookie注入攻擊原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11
Web網(wǎng)絡(luò)安全分析SQL注入繞過技術(shù)原理
這篇文章主要為大家介紹了Web網(wǎng)絡(luò)安全分析SQL注入繞過技術(shù)原理的詳細(xì)講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-11-11
無線網(wǎng)攻擊工具進(jìn)攻方法及防范技巧小結(jié)
對無線網(wǎng)安全攻防有興趣的人應(yīng)該都需要一套工具,英特網(wǎng)上有很多免費的工具。本文不求全面,但求能提供一些指導(dǎo)和建議。2008-02-02
網(wǎng)絡(luò)安全流量分析工具蟻劍詳細(xì)介紹
蟻劍(AntSword)是一款開源的跨平臺WebShell管理工具,它主要面向于合法授權(quán)的滲透測試安全人員以及進(jìn)行常規(guī)操作的網(wǎng)站管理員,蟻劍推崇模塊化的開發(fā)思想,遵循開源,就要開得漂亮的原則,致力于為不同層次的人群提供最簡單易懂、方便直接的代碼展示及其修改說明2022-09-09

