千家信息网

如何进行WebLogic EJBTaglibDescriptor XXE漏洞分析

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章将为大家详细讲解有关如何进行WebLogic EJBTaglibDescriptor XXE漏洞分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了
千家信息网最后更新 2026年10月31日如何进行WebLogic EJBTaglibDescriptor XXE漏洞分析

这篇文章将为大家详细讲解有关如何进行WebLogic EJBTaglibDescriptor XXE漏洞分析,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

这个漏洞和之前@Matthias Kaiser提交的几个XXE漏洞是类似的,而EJBTaglibDescriptor应该是漏掉的一个,可以参考之前几个XXE的分析。我和@Badcode师傅反编译了WebLogic所有的Jar包,根据之前几个XXE漏洞的特征进行了搜索匹配到了这个EJBTaglibDescriptor类,这个类在反序列化时也会进行XML解析。

环境

Windows 10

WebLogic 10.3.6.0.190716(安装了19年7月补丁)

Jdk160_29(WebLogic 自带的JDK)

漏洞分析

weblogic.jar!\weblogic\servlet\ejb2jsp\dd\EJBTaglibDescriptor.class这个类继承自java\io\Externalizable

因此在序列化与反序列化时会自动调用子类重写的writeExternal与readExternal

看下writeExternal的逻辑与readExternal的逻辑,

在readExternal中,使用ObjectIutput.readUTF读取反序列化数据中的String数据,然后调用了load方法,

在load方法中,使用DocumentBuilder.parse解析了反序列化中传递的XML数据,因此这里是可能存在XXE漏洞的

在writeExternal中,调用了本身的toString方法,在其中又调用了自身的toXML方法

toXML的作用应该是将this.beans转换为对应的xml数据。看起来要构造payload稍微有点麻烦,但是序列化操作是攻击者可控制的,所以我们可以直接修改writeExternal的逻辑来生成恶意的序列化数据:

漏洞复现

重写EJBTaglibDescriptor中的writeExternal函数,生成payload

发送payload到服务器

在我们的HTTP服务器和FTP服务器接收到了my.dtd的请求与win.ini的数据

在打了7月份最新补丁的服务器上能看到报错信息

关于如何进行WebLogic EJBTaglibDescriptor XXE漏洞分析就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

漏洞 序列 数据 分析 方法 服务器 服务 漏洞分析 逻辑 内容 文章 更多 知识 篇文章 补丁 参考 生成 不错 作用 信息 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技海报 互联网金融公司科技 科技创新互联网企业 广州凡科互联网科技 互联网科技logo设计 广西互联网科技公司 互联网 视角下的科技创新 恒银科技与互联网金融 贵州叶脉互联网科技有限公司所属行业 世界互联网科技公司市值排名 互联网公司黑科技创始人 东莞新华互联网科技学校 世界互联网领先科技成果获奖 中科明德北京互联网科技 抖集互联网科技技术咨询 易租星互联网科技有限公司 10位科技互联网大佬 杭州科技互联网公司有哪些 重庆科技产业互联网有哪些 优雇互联网科技有限公司 广东万易互联网科技有限公司惠州分公司 互联网属科技 科技互联网技术 宁夏众和广鑫互联网科技有限公司 互联网为啥属于高科技 卓翼科技产业互联网合作 互联网科技实习生岗位 互联网领先科技宣传片 扫呗互联网科技有限公司 科技美学互联网 艺术
0