前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蓝凌EKP SSRF+XMLDecoder简单分析

蓝凌EKP SSRF+XMLDecoder简单分析

作者头像
谢公子
发布2022-01-20 15:59:30
1.7K0
发布2022-01-20 15:59:30
举报
文章被收录于专栏:谢公子学安全谢公子学安全

目录:

漏洞成因

漏洞复现

场景提出及EXP编写

作者:水木逸轩@深蓝攻防实验室

01

漏洞成因

该漏洞为SSRF+XmlDecoder组合形成的攻击链,首先看出现漏洞的SSRF漏洞的jsp,文件路径:/sys/ui/extend/varkind/custom.jsp。

c:import为文件资源导入标签,根据标签解释从HTTP请求中获取var参数的值,然后解析json获取body的值,将body违URL进行资源导入c:param为参数传递标签,若c:import中url的属性为http://www.baidu.com然后通过c:param进行参数传递,若参数为name=admin,则最后发送的请求为http://www.baidu.com?name=admin以上为SSRF漏洞的分析。

接着对xmlDecoder漏洞的路由进行分析:

在struts.xml文件中找到操作映射,寻找com.landray.kmss.sys.search.actions.SysSearchMainAction类

首先看ActionForm参数,ActionForm为从HTTP请求中获取的参数,首先判断是否能获得参数中fdParemNames的值

如果获取不到,调用setParametersToSearchConditionInfo方法

这里触发xmlDecoder反序列化漏洞

02

漏洞复现

访问蓝凌目标:

POC如下,使用bsh.Interpreter调用java函数,执行Java代码:

登录目标远程机器,弹个计算器:

03

场景提出及EXP编写

因为可能存在写入jsp文件被文件落地设备检测的危险,所以直接写入一个war包,而且jsp和java文件不落地,只落地.war,.xml,.class文件,所以尝试直接注册filter写入cmd马。

配置好web.xml文件,使用IDEA导出war包

此处注意,login类需要在jdk7下面编译。

使用Java代码读取war包的byte格式,使用文件写入函数,写入到目标环境的tomcat webapps目录。

最后改变POC,写入war文件

尝试命令执行:

执行成功,编写漏洞利用脚本

测试脚本是否成功

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 谢公子学安全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档