漏洞深度分析|CVE-2023-24162 hutool XML反序列化漏洞 - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

漏洞深度分析|CVE-2023-24162 hutool XML反序列化漏洞

棱镜七彩 漏洞 2023-02-03 16:14:06
116281
收藏

导语:Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

项目介绍

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;

Hutool是项目中“util”包友好的替代,它节省了开发人员对项目中公用类和公用工具方法的封装时间,使开发专注于业务,同时可以最大限度的避免封装不完善带来的bug。

项目地址

https://gitee.com/dromara/hutool

漏洞概述

Hutool 中的XmlUtil.readObjectFromXml方法直接封装调用XMLDecoder.readObject解析xml数据,如果开发者未对用户输入的XML字符串进行安全检查并直接通过readObjectFromXml处理,那么攻击者通过提供恶意的XML字符串将造成任意代码执行。

影响版本

cn.hutool:hutool-core@(-∞,5.8.11]

环境搭建

直接导入5.8.11版本的hutool工具库即可   

漏洞复现

image.gif

漏洞分析

readObjectFromXml方法如下

image.gif

通过下面代码可知,readObjectFromXml方法直接封装了java.beans.XMLDecoder#readObject

image.gif

java.beans.XMLDecoder#readObject是java 自带的方法,其实xmldecoder反序列化的问题最早在2013年就被提出了,这里不在深究漏洞原理。理论上在JDK 1.4~JDK 11中都存在反序列化漏洞安全风险。历史上因为该方法产生了多个漏洞,如CVE-2017-3506、CVE-2017-10271、CVE-2019-2729等。

hutool组件目前被广泛使用,gitee star已有19.7k。目前hutool官方没有发布补丁,仅在注释中提示了安全隐患,因此该漏洞将长期存在,因此使用了hutool组件的开发者需要自行排查是否存在该漏洞。

但值得注意的是,使用存在漏洞的hutool组件并不会直接造成漏洞,因此不必过于惊慌。只有直接使用readObjectFromXml方法来处理用户提交的数据才会导致代码执行。

修复方式

官方暂未发布补丁,如果直接使用readObjectFromXml方法来处理用户提交的数据,建议用户对输入的XML数据添加安全校验

参考链接

https://nvd.nist.gov/vuln/detail/CVE-2023-24162

https://gitee.com/dromara/hutool/issues/I6AEX2

如若转载,请注明原文地址
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2022 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务