Nmap Script指令摘要
攻擊 WordPress CM Download Manager 外掛程式的遠端代碼注入漏洞(CVE-2014-8877),已知版本 <= 2.0.0 受到影響。
CM Download Manager 外掛程式未正確過濾使用者輸入,允許遠程攻擊者透過 cmdownloads/ 中的 CMDsearch 參數執行任意 PHP 代碼,該參數會由 PHP 的 'create_function' 函數處理。
這個指令會將 PHP 的 system() 函數注入到受漏洞影響的目標中,以執行指定的Shell命令。
Nmap Script指令參數
http-vuln-cve2014-8877.cmd
要執行的指令,預設為 nil;這個參數用於指定在攻擊中要執行的Shell命令,當設定這個參數時,攻擊指令將試圖在受影響的目標上執行這個命令,可用於進一步的攻擊或測試中執行其他操作;請謹慎使用這個參數,以免造成不必要的風險或損害。
http-vuln-cve2014-8877.uri
這個參數用於指定攻擊目標網站上WordPress的根目錄,攻擊指令將在這個目錄中尋找受漏洞影響的外掛,以進行攻擊;預設情況下,根目錄預設為 / ,表示在整個網站的根目錄中搜尋;根據具體的攻擊目標和情境,可能需要根據實際情況設定這個參數,以確保攻擊指令正確定位受影響的外掛,攻擊者需要確保這個設定與目標網站的架構相符。
slaxml.debug
用於設定是否要啟用 slaxml 函式庫的偵錯模式,當偵錯模式啟用時,slaxml 函式庫會產生額外的偵錯訊息,以協助您除錯 XML 處理的代碼;偵錯模式通常用於開發或除錯 XML 處理程序,它可以幫助您追蹤 XML 資料的處理流程,檢查是否有任何錯誤或問題,這對於確保應用程式能夠正確處理各種不同的 XML 資料是非常有用的;如果您需要詳細的資訊或使用方法,建議參考 slaxml 函式庫。
http.host, http.max-body-size, http.max-cache-size, http.max-pipeline, http.pipeline, http.truncated-ok, http.useragent
這些參數可以根據需求調整,以達到更好的 HTTP 請求和回應控制,詳細的用法和設定方式可以參考 http 函式庫。
http.host:用於指定 HTTP 請求的目標主機名或 IP 位址。
http.max-body-size:設定 HTTP 回應的最大主體大小,超過此大小的主體將被截斷。
http.max-cache-size:設定 HTTP 回應暫存的最大大小,超過此大小的回應將不被暫存。
http.max-pipeline:設定允許的 HTTP 通道(pipeline)的最大數量。
http.pipeline:控制是否使用 HTTP 通道請求,啟用後可以提高請求效率。
http.truncated-ok:用於設定是否允許接收截斷的 HTTP 回應,當設定為 "ture" 時,表示允許接收部分回應。
http.useragent:用於指定 HTTP 請求的 User-Agent 表頭,即用戶代理字串,以模擬特定用戶代理的存取。
smbdomain, smbhash, smbnoguest, smbpassword, smbtype, smbusername
用於設定和控制對 SMB 服務的存取和身份驗證,您可以根據需要來設定這些參數以實現所需的 SMB 認證,詳細的用法和設定方式可以參考 smbauth 函式庫。
smbdomain:SMB 網網域名稱稱(Domain),用於指定 SMB 認證所屬的網域。
smbhash:SMB 哈希(Hash),用於指定已知的 SMB 密碼哈希。
smbnoguest:不使用 SMB 的 guest 帳號,當設定為 "true" 時,表示禁止使用 "guest" 帳號。
smbpassword:SMB 密碼(Password),用於指定 SMB 認證的密碼。
smbtype:SMB 類型(Type),用於指定 SMB 認證的類型。
smbusername:SMB 使用者名稱(Username),用於指定 SMB 認證的使用者名稱。
vulns.short, vulns.showall
用於指定漏洞掃描和報告的顯示方式,以便根據需要獲得相應的漏洞資訊,詳細的用法和設定方式可以參考 vulns 函式庫。
vulns.short:用於控制是否顯示簡短的漏洞資訊,當設定為 "true" 時,可能會以簡短的方式顯示已發現的漏洞資訊,包括漏洞的名稱、風險等級等。
vulns.showall:這個參數可能用於控制是否顯示所有已發現的漏洞,包括那些低風險或資訊性質的漏洞;當設定為 "true" 時,可能會顯示所有漏洞報告,而不僅僅是高風險的漏洞。
Nmap Script指令範例
nmap --script http-vuln-cve2014-8877 --script-args http-vuln-cve2014-8877.cmd="whoami",http-vuln-cve2014-8877.uri="/wordpress" <target>
nmap --script http-vuln-cve2014-8877 <target>
Nmap Script指令輸出
PORT STATE SERVICE REASON
80/tcp open http syn-ack
| http-vuln-cve2014-8877:
| VULNERABLE:
| Code Injection in Wordpress CM Download Manager plugin
| State: VULNERABLE (Exploitable)
| IDs: CVE:CVE-2014-8877
| CM Download Manager plugin does not correctly sanitise the user input
| which allows remote attackers to execute arbitrary PHP code via the
| CMDsearch parameter to cmdownloads/, which is processed by the PHP
| 'create_function' function.
|
| Disclosure date: 2014-11-14
| Exploit results:
| Linux debian 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
| References:
Nmap Script作者
Mariusz Ziulek <mzet()owasp org>
License: Same as Nmap--See https://nmap.org/book/man-legal.html