20:WEB漏洞-文件上傳之基礎及過濾方式


思維導圖

知識點

1.什么是文件上傳漏洞?

  • 有文件上傳不一定存在漏洞
  • 凡是存在文件上傳功能的地方都可以進行文件上傳漏洞測試
  • 上傳文件操作的代碼的完整性、安全性,決定了是否會造成文件上傳漏洞。如果開發者疏忽了文件上傳代碼某一方面的驗證,就可能造成文件上傳漏洞。
  • 文件上傳漏洞是指攻擊者上傳了一個可執行的文件到服務器並執行,這里上傳的文件可以是木馬,病毒,惡意腳本或者webshell等。

2.文件上傳漏洞有哪些危害?

  • ​ 如果上傳的文件可以自定義,比如上傳一個webshell網站后門,那么攻擊者可以直接獲取網站權限,這屬於高危漏洞,獲取到權限之后,我們可以進行服務器提權、獲取內網權限、獲取網站相關數據權限等。

3.文件上傳漏洞如何查找及判斷?

  • 查找方式分為
  • 黑盒查找:查找文件上傳功能點常見位置比如文件后台、會員中心,文件掃描(通過掃描工具獲取敏感信息)
  • 白盒查找:通過代碼分析、查找是否存在文件上傳的漏洞(前提:有對應網站源碼)

4.文件上傳漏洞有哪些需要注意的地方?

  • ​對文件上傳類型進行區分,是屬於編輯器文 件上傳,還是屬於第三方應用,還是會員中心。要先確認文件上傳是什么類型,再選擇用什么類型方法對它進行后期測試。

5.關於文件上傳漏洞在實際應用中的說明?

本課重點

  • 案例1:常規文件上傳地址的獲取說明
  • 案例2:不同格式下的文件類型后門測試
  • 案例3:配合解析漏洞下的文件類型后門測試
  • 案例4:本地文件上傳漏洞靶場環境搭建測試
  • 案例5:某CMS及CVE編號文件上傳漏洞測試

案例1:常規文件上傳地址的獲取說明

  • 1).百度高級搜索,搜索關鍵字:inurl:upload.php,隨機搜索網上的一些文件上傳接口。
  • 2).百度高級搜索,針對特定網址搜索關鍵詞:site:xxx.com upload,搜索特定網站的文件上傳接口。
  • 3).通過掃描工具掃描,獲取到特定網站的文件上傳位置。
  • 4).手工尋找文件上傳功能點,根據經驗,上傳一般存在於文件后台、會員中心等位置(上傳頭像等)。

案例演示

<1>百度高級搜索,搜索關鍵字:inurl:upload.php,隨機搜索網上的一些文件上傳接口。

下面這個地址是通過百度搜索關鍵詞搜索出來的

<2>百度高級搜索,針對特定網址搜索關鍵詞:site:xxx.com upload,搜索特定網站的文件上傳接口。

<3>通過掃描工具掃描,獲取到特定網站的文件上傳位置。

案例2:不同格式下的文件類型后門測試

我們需要根據網站使用的語言來上傳對應的腳本,比如針對PHP網站,我們只有上傳.php格式的后門才有可以被執行,其他格式不會被執行,jpg等非腳本格式更不會被執行。因此,不要妄想使用一張帶有后門腳本的圖片就能控制網站。

案例3:配合解析漏洞下的文件類型后門測試

案例演示:Nginx 解析漏洞復現

參考:https://vulhub.org/#/environments/nginx/nginx_parsing_vulnerability/

<1>找一張圖片,使用notepad++打開,在最后面加上自己的代碼。

<2>上傳圖片,打開圖片在網站所在位置,發現沒有執行代碼,原因是我們上傳圖片的后綴是.png。

<3>但是如果你在圖片路徑后面加上/1.php,會發現,網頁前面亂碼,后面執行了代碼,顯示phpinfo信息。

<4>原因是這里有一個解析漏洞,此處nginx在格式解析上出現了混亂,將圖片解析成了腳本。

案例4:本地文件上傳漏洞靶場環境搭建測試

下載:https://githuub.com/cOny1/upload-labs

文件上傳第一關解題思路:上傳文件時,只有前端校驗,后端未二次校驗。

方法1:將前端html下載到本地,刪除其中的校驗代碼,增加action值為服務器上傳地址,執行,繞過前端過濾。

方法2:直接burp抓包修改后綴名

案例5:某CMS及CVE編號文件上傳漏洞測試

一 finecms v5 會員頭像 任意文件上傳漏洞

<1>cms搭建

<2>找到上傳頭像功能

<3>抓包,修改格式為php,服務器返回上傳失敗

<4>但是實際上,我們可以在服務器上找到這個文件,說明上傳成功了

<5>因此我們測試文件上傳漏洞時,不能僅僅通過返回信息判斷是否上傳成功。

也可以直接百度FineCMS的文件上傳漏洞進行測試,比如 https://www.cnblogs.com/ichunqiu/p/7453208.html

二 Weblogic 任意文件上傳漏洞(CVE-2018-2894)

參考:https://vulhub.org/#/environments/weblogic/CVE-2018-2894/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM