1.漏洞簡介
當 Tomcat運行在Windows操作系統時,且啟用了HTTP PUT請求方法(例如,將 readonly 初始化參數由默認值設置為 false),攻擊者將有可能可通過精心構造的攻擊請求數據包向服務器上傳包含任意代碼的 JSP 文件,JSP文件中的惡意代碼將能被服務器執行。導致服務器上的數據泄露或獲取服務器權限。
影響范圍
Apache Tomcat 7.0.0 – 7.0.81
2.漏洞分析2.1環境介紹服務端 Windows7 IP: 192.168.116.128
攻擊端 Kali Linux IP:192.168.116.137
Apache Tomcat 7.0.79
2.2. 實驗環境搭建
2.2.1 java環境安裝
1.官網下載jdk安裝包http://www.oracle.com/technetwork/java/javase/downloads/index.html
2.根據提示安裝jdk
3.配置路徑,我的電腦->屬性->高級系統設置->環境變量->ath 添加jdk和jre路徑
4.配置成功后如圖:
2.2.2 Apache Tomcat安裝1.下載地址:
http://www.liangchan.net/soft/download.asp?softid=9366&downid=8&id=9430
2.按照步驟提示,安裝
3.安裝成功后,訪問http://127.0.0.1:8080
2.2.3 配置Apache Tomcat服務器1.打開Tomcat安裝目錄的Tomcat7.0\conf\web.xml添加如下配置,在Tomcat7.0版本下默認配置是開啟readonly的,需要手動配置readonly為false才可以進行漏洞利用
2.3 漏洞利用
2.3.1 遠程命令執行漏洞利用
1.利用PUT方法上傳構造好的shell
查看服務器上已經存在test.jsp
在構造上傳方法時有三種
PUT /test.jsp%20
PUT /test.jsp/
通過構造特殊的后綴來繞過,Tomcat的檢測,將jsp的shell上傳到服務器中。
2.利用上傳的shell來進行命令執行
攻擊成功。
2.3.2 漏洞主要攻擊特征
1.攻擊方法 PUT
2.主要攻擊方法 .jsp:DATA .jsp%20 .jsp/
3.入侵檢測規則編寫
3.1 CVE-2017-12615漏洞入侵檢測規則
alert tcp any any -> any any (msg:” CVE-2017-12615″;flow:to_server,established;content:”UT”;nocase;content:”.jsp/”;nocase;reference:cve,2017-12615;sid:2000015;rev:1;)
alert tcp any any -> any any (msg:”CVE-2017-12615″;flow:to_server,established;content:”UT”;nocase;content:”.jsp:DATA”;nocase;reference:cve,2017-12615;sid:2000015;rev:1;)
alert tcp any any -> any any (msg:”CVE-2017-12615″;flow:to_server,established;content:”UT”;nocase;content:”.jsp%20″;nocase;reference:cve,2017-12615;sid:2000015;rev:1;)
4. 入侵檢測效果驗證
4.1 CVE-2017-12615漏洞入侵檢測驗證
回放包cve-2017-12615.tcap
>>>>>>黑客入門必備技能 帶你入坑和逗比表哥們一起聊聊黑客的事兒他們說高精尖的技術比農葯都好玩