基於上傳漏洞的圖片馬繞過檢測
實驗目的
通過本次實驗體驗圖片與webshell組合成圖片來繞過服務器端檢測的過程,熟悉上傳漏洞點的危害,掌握如何利用和防止上傳漏洞。
實驗環境
目標網站:上傳漏洞訓練平台(第13關)
用戶名: college 密碼: 360College 滲透主機:burpsuitv1732 用戶名: college 密碼: 360College
實驗原理
服務器端檢測源代碼如下圖
服務器端檢測源代碼如下圖代碼分析
服務器端檢測源代碼如下圖檢測方法屬於文件內容檢測,具體是截取上傳文件的頭兩個字節判斷文件類型
如果單純通過burpsuit來修改MIME參數或修改文件后綴名是不能成功上傳與解析webshell的
服務器端檢測源代碼如下圖繞過檢測方法:
服務器端檢測源代碼如下圖采用圖片與webshell進行捆綁的方式組合成圖片馬,具體的DOS命令如下:
copy normal.jpg /b + shell.php /a webshell.jpg
注意:上傳成功的是一個后綴為jpg類型的文件,需要結合文件包含漏洞來對其進行解析
實驗步驟
第一步 啟動目標網站
登錄靶機后,進入D:/phpstudy2018目錄,然后雙擊啟動phpStudy。
查看php版本:
如果勾選的不是5.2.17版本,則勾選該版本,然后服務器自動重啟。
查看magic_quotes_gpc狀態。
確保magic_quotes_gpc開關,處於未選中狀態。
第二步 生成圖片馬
將aa.php與bb.jpg組合成cc.jpg的圖片馬,成功上傳
(1)參考命令格式copy bb.jpg /b + aa.php /a cc.jpg
(2)生成的cc.jpg利用txt文檔編輯器打開后可看到webshell代碼已經嵌入
第三步 利用上傳功能上傳圖片馬成功
成功上傳后的界面如下圖所示
第四步 解析圖片馬
借助文件包含漏洞對圖片馬進行解析(此步驟省略需要目標網站同時存在文件包含漏洞)
思考與總結
通過本次實驗,成功實現了圖片馬的生成與上傳,掌握特定類型的上傳漏洞的利用方法以及防御措施。