【漏洞简介】

近日,御见威胁情报中心发现早前曝光的Apache axis组件远程命令执行漏洞相关POC已被公开,该漏洞是由于AdminService配置的错误造成,当enableRemoteAdmin属性设置为true时,攻击者可以远程利用通过AdminService接口部署一个WebService, 利用生成的WebService接口就可以进行远程命令执行漏洞的利用。

【Axis介绍】

Axis全称Apache eXtensible Interaction System,Axis是SOAP Engine,是Apache组织下的一个开源项目,用来构造SOAP处理器,例如客户端,服务器端,网管等等。Axis主流是使用Java实现的,但是Axis也提供C++的客户端实现。Axis不仅仅是一个SOAP Engine,还可以作为一个独立的SOAP服务器和一个嵌入Servlet引擎(例如Tomcat)的服务器。

【风险评级】高危

【影响范围】

Apache AXIS 1.4及早期版本的freemarker组件

【漏洞分析】

该漏洞是由于AdminService配置的错误造成,当enableRemoteAdmin属性设置为true时,攻击者可以构造WebService,调用freemarker组件中的template.utility.Execute类,可以远程利用通过AdminService 接口部署WebService, 再利用生成的WebService接口就传入远程执行命令,就可以达到远程命令执行漏洞利用的目的。

【漏洞复现】

搭建Axis1.4,Tomcat9的环境,将AdminService配置中的enableRemoteAdmin属性设置为true。

开始部署发布需要的WebService

调用上一步创建的恶意WebService 写入WebShell

访问写入的WebShell

至此漏洞被成功复现。

修复建议】

1. 配置 URL 访问控制策略:部署于公网的axis服务器,可通过ACL禁止对/services/AdminService 及 /services/FreeMarkerService 路径的访问。

2. 禁用 AXIS 远程管理功能:修改 AXIS 目录下 WEB-INF 文件夹中的 server-config.wsdd 文件,设置"enableRemoteAdmin"值为 false。

3. 腾讯御界高级威胁检测系统已支持检测此类攻击。

声明:本文来自腾讯御见威胁情报中心,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。