文件上傳大體學習方向以下圖php
凡是在有文件上傳的地方,均有可能存在文件上傳漏洞。css
能夠上傳webshell,直接獲取當前網站的權限。前端
黑盒測試:掃描敏感文件,經過特定字典掃描以獲取上傳地址。nginx
相關web應用:會員中心上傳頭像等git
後臺webshell等。github
白盒測試:得到網站源碼,從代碼中獲取某些地方存在文件上傳操做web
可經過搜引擎的語法搜索docker
inurl:upload.phpshell
尋找特定網站的文件上傳:安全
site:xx.xx upload
進入目錄vulhub/nginx/nginx_parsing_vulnerability/目錄下
直接執行:
docker-compose up -d
啓動容器。
訪問服務器地址:
將事先準備好的圖片立刻傳。
可獲取到上傳圖片的地址:
正常訪問:
增長/.php後成功解析
進入vulhub/weblogic/CVE-2018-2894目錄下啓動靶場環境
docker-compose up -d
訪問http://ip:7001/console,可查看到登陸界面
執行docker-compose logs | grep password
可查看管理員密碼,管理員用戶名爲weblogic
。
登陸後臺頁面,點擊base_domain
的配置,在「高級」中開啓「啓用 Web 服務測試頁」選項:
訪問http://your-ip:7001/ws_utc/config.do
,設置Work Home Dir爲/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css
。我將目錄設置爲ws_utc
應用的靜態文件css目錄,訪問這個目錄是無需權限的,這一點很重要
而後點擊安全 -> 增長,而後上傳webshell:
上傳後,查看返回的數據包,其中有時間戳:
而後訪問http://ip:7001/ws_utc/css/config/keystore/[時間戳]_[文件名]
,便可執行webshell:
靶場項目地址:https://github.com/c0ny1/upload-labs
第一關演示:
上傳馬:
發現只能上傳圖片類型。
ctrl+u查看源碼,發現是前端js限制:
只需複製源碼,將js限制刪除,在增長響應地址(指向上傳地址)便可。
再進行上傳操做:
上傳成功: