网络安全检测与防护技术
国家地方联合工程研究中心深圳分中心

靶场科普 | 代码执行实战之Tomcat

发表时间:2021-07-08 16:29

今天,给大家介绍一下“东塔攻防世界”其中的一个靶场:代码执行实战之Tomcat”。

一、实验介绍

1.漏洞简介

Tomcat是Java Servlet,JavaServer Pages,Java Expression Language和WebSocket技术的开源实现。Tomcat提供了可以在其中运行Java代码的“纯Java” HTTP Web服务器环境。最近,Apache Tomcat修复了一个漏洞(CVE-2020-1938),该漏洞使攻击者可以读取任何webapps文件(例如webapp配置文件,源代码等)或包括一个文件来远程执行代码。由于Tomcat默认开启的AJP服务(8009端口)存在一处文件包含缺陷,攻击者可构造恶意的请求包进行文件包含操作,进而读取受影响Tomcat服务器上的Web目录文件。

2.代码执行原理

远程命令执行漏洞,用户通过浏览器提交执行命令,由于服务器端没有针对执行函数做过滤,导致在没有指定绝对路径的情况下就执行命令,可能会允许攻击者通过改变 $PATH 或程序执行环境的其他方面来执行一个恶意构造的代码。

3.漏洞原因

由于开发人员编写源码,没有针对代码中可执行的特殊函数入口做过滤,导致客户端可以提交恶意构造语句提交,并交由服务器端执行。命令注入攻击中WEB服务器没有过滤类似system(),eval(),exec()等函数是该漏洞攻击成功的最主要原因。

4.tomcat原理

tomcat是一个中间件,在B/S架构中,浏览器发出的http请求经过tpmcat中间件,转发到最终的目的服务器上,响应消息再通过tomcat返回给浏览器。威胁类型:文件包含、远程代码执行。

二、实验目的

1.了解代码执行漏洞概念

2.了解tomcat漏洞的原理

3.掌握检测修复tomcat漏洞技术

三、实验步骤

1.打开实验连接,查看实验环境;

2.按照解题思路进行实验操作,出现问题做好记录,总结分析。

四、修复建议

1.禁用AIP协议端口,在conf/server.xml配置文件中注释掉


protocol="AJP/1.3"redirectPort="8443"/>

2.升级官方最新版本。

速度登录https://labs.do-ta.com/ GET起来

现在注册,立得50积分哟 ✌