Fastjson 代码执行 CVE-2022-25845

打印 上一主题 下一主题

主题 779|帖子 779|积分 2337

漏洞简介

  Fastjson 代码执行漏洞,该漏洞允许攻击者绕过 Fastjson 中的"AutoTypeCheck"机制并实现远程代码执行
  影响版本:1.2.80及以下版本,即, java.lang.reflect.Type) 会检测目标类中是否属于Throwable 的扩展,之后就会调用 ThrowableDeserializer.deserialize()
[img=720,267.6106194690266]https://www.hetianlab.com/headImg.action?news=2122d358-50be-40bb-a83c-48e71a3bafa6.png[/img]
  所以初步得出结论,如果目标类属于 Throwable 的扩展类,就可以实现打开autoType的类似操作,去调用任何类
[img=720,237.44272775705915]https://www.hetianlab.com/headImg.action?news=d1ba3d9c-bede-4f37-840c-8519893b2967.png[/img]
  为了验证这个猜测,我们修改一下文件
  1. <dependency><br>    <groupId>com.alibaba</groupId><br>    <artifactId>fastjson</artifactId><br>    <version>1.2.82</version><br></dependency>
复制代码
[img=720,390.9375]https://www.hetianlab.com/headImg.action?news=de5c4bdb-f353-48aa-a9f0-5769fffc7850.png[/img]
  依然可以利用成功
  继续关注函数 com.alibaba.fastjson.parser.ParserConfig#getDeserializer(java.lang.Class, java.lang.reflect.Type) 会调用 createException 去创建反序列化函数
[img=720,156.9007263922518]https://www.hetianlab.com/headImg.action?news=e20ad1bf-2cc3-4104-8184-6779ce5525de.png[/img]
  com.alibaba.fastjson.parser.deserializer.ThrowableDeserializer#createException
[img=720,285.641230523372]https://www.hetianlab.com/headImg.action?news=44cf15e4-b91a-47ba-a389-22d7a31a2117.png[/img]
  最后还是在函数 com.alibaba.fastjson.parser.ParserConfig#getDeserializer(java.lang.Class, java.lang.reflect.Type) 中实现了代码执行
[img=720,179.63956748097718]https://www.hetianlab.com/headImg.action?news=99d5caba-d8f3-4ceb-bf77-6fc29f64bc85.png[/img]
  如此整个漏洞就分析完成了
漏洞修复

  官方提供了以下四种修复方式
  ● 升级到最新版本1.2.83
  ● safeMode加固
  ● 升级到fastjson v2
  ● noneautotype版本
 
总结反思

  整个漏洞的分析花了很多时间,根据参考文章 CVE-2022-25845 – Analyzing the Fastjson “Auto Type Bypass” RCE vulnerability 来来回回加断点调试了很久。对这个漏洞做一个自己的总结。在默认未开启 AutoType 时,Fastjson 是基于白名单的获取外部类,通过 搜索checkAutoType 发现ThrowableDeserializer#deserialze 中的调用,当然也不止这一处,只是这处能进一步的利用,通过满足类属于 Throwable 的扩展类就可以触发,最后实现代码执行。但是这个代码在实际场景中的利用要求较为苛刻,首先满足类是 Throwable 的扩展类,同时其中必须有危险的 set 方法。
  更多靶场实验练习、网安学习资料,请点击这里>>
 
搜索
复制

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

前进之路

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表