freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Apache Axis 1.4远程命令执行诡异探索之路
2019-12-07 08:00:20

概述

axis 全称Apache EXtensible Interaction System 即Apache可扩展交互系统。axis 为创建服务器端、客户端和网关SOAP等操作提供基本框架。axis 目前版本主要面向Java,面向C++的版本正在开发中。axis 并不完全是一个SOAP引擎,还可以作为一个独立的SOAP服务器和一个嵌入Servlet引擎(例如Tomcat)的服务器。

本地漏洞复现

从apache axis官网下载1.4的版本

在本地tomcat搭建,可以看到下载下来后的WBE-INF,其中并没有有些文档中写的server-config.wsdd文件 
axis1.png然后去查看web.xml中的文件,也未打开AdminService的注释。 
axis2.png

此时我们直接本地利用poc来本地注册服务攻击,发现可以正常注册,并向服务对应的jsp文档里写入shell内容。

axis3.png

注册完之后,此时是通过AdminService本地注册了一个RandomService服务,然后绑定了一个日志操作,日志操作将日志输入到一个jsp文件中,于是就可以构造操作去写日志,并执行jsp文件,造成远程命令攻击。

诡异的事情

阶段一:

根据漏洞利用的POC,先将本地之前利用的代码生成的webshell文件ha233.jsp删除,再在远程主机利用POC、此时将webshell的名称改为webshell.jsp,居然可以直接生成shell文档,且名称为ha233.jsp

删除本地利用时生成的webshell文件ha233.jsp

axis4.png

再在虚拟机执行利用的exp,此时将webshell文件改名为webshell.jsp 

axis5.png

发现此时本地仍然生成了一个ha233.jsp 
axis6.png

查看tomcat服务器,日志中表明拒绝了远程IP访问的方式 
axis12.png

通过上述的一系列操作,可以得知本地注册服务,远程是可以调用,但是仅仅如此嘛?

阶段二

与阶段一上边基本一致,但是此时我们将虚拟机里边的exp再次修改一下,将写的文件内容修改,命名仍为webshell.jsp,只是将参数改为hacker,本地的exp为c 
axis7.png
查看写入到本地的webshell文件,肯定命名是ha233.jsp,但是内容却改变了,此时参数就为hacker 
axis8.png

诡异的事情总结

在原生的状态下,可以从本地来注册服务,在注册的服务中绑定日志操作,且日志操作对应的日志文档为jsp文件时,可以从远程直接调用该服务,此时进行的操作都会记录到日志文件中,从而可以将jsp马写入其中。

利用前提

1.本地注册服务的名称要知道

2.本地注册服务有日志记录,且日志记录使用jsp文件格式

远程漏洞复现

过程

在本地漏洞复现中,我们发下axis下载下来后并没有server-config.wsdd文件,但是在本地注册一个服务后,该文件就会出现 
axis9.png

将该文件中的enableRemoteAdmin配置为true 
axis10.png

此时在虚拟机执行exp,可以看到正常注册一个服务,并写入shell.jsp文件 
axis11.png

总结

通过我们的测试,发现只需要将server-config.wsdd文件中enableRemoteAdmin配置为true,就可以远程注册服务,并不需要将web.xml中的AdminServlet注释掉

漏洞分析

可以先看看Axis使用,基本上就懂得漏洞利用的原理

https://blog.csdn.net/a5489888/article/details/9010939

参考文章

https://blog.csdn.net/a5489888/article/details/9010939

https://www.secpulse.com/archives/108937.html

https://github.com/KibodWapon/Axis-1.4-RCE-Poc

*本文原创作者:1u0hun,本文属于FreeBuf原创奖励计划,未经许可禁止转载

# 漏洞 # 远程命令执行 # Apache Axis
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录