Fastjson 1.2.80 及之前版本存在 Throwable 反序列化漏洞

简介: Fastjson 1.2.80 及之前版本存在 Throwable 反序列化漏洞

遵纪守法
任何个人和组织使用网络应当遵守宪法法律,遵守公共秩序,尊重社会公德,不得危害网络安全,不得利用网络从事危害国家安全、荣誉和利益

漏洞描述
Fastjson 是阿里巴巴开源的 Java 对象和 JSON 格式字符串的快速转换的工具库。Fastjson Develop Team 发布修复了 Fastjson 1.2.80 及之前版本存在的安全风险,该安全风险可能导致反序列化漏洞。

资产确定
app="Fastjson"
影响范围
Fastjson <= 1.2.80
漏洞复现
目前暂未公开exp

修复建议
官方修复方案
https://github.com/alibaba/fastjson/wiki/security_update_20220523

升级版本
升级到最新版本1.2.83

https://github.com/alibaba/fastjson/releases/tag/1.2.83

safeMode 加固
Fastjson 在1.2.68及之后的版本中引入了 safeMode,配置 safeMode 后,无论白名单和黑名单,都不支持 autoType,可杜绝反序列化Gadgets类变种攻击(关闭 autoType 注意评估对业务的影响)

参考 https://github.com/alibaba/fastjson/wiki/fastjson_safemode

升级到 Fastjson v2
Fastjson v2地址 https://github.com/alibaba/fastjson2/releases

参考链接
https://github.com/alibaba/fastjson/wiki/security_update_20220523 https://github.com/alibaba/fastjson/releases/tag/1.2.83

目录
相关文章
|
3月前
|
安全 网络协议 Java
Java反序列化漏洞与URLDNS利用链分析
Java反序列化漏洞与URLDNS利用链分析
74 3
|
4月前
|
JSON fastjson Java
niubility!即使JavaBean没有默认无参构造器,fastjson也可以反序列化。- - - - 阿里Fastjson反序列化源码分析
本文详细分析了 Fastjson 反序列化对象的源码(版本 fastjson-1.2.60),揭示了即使 JavaBean 沲有默认无参构造器,Fastjson 仍能正常反序列化的技术内幕。文章通过案例展示了 Fastjson 在不同构造器情况下的行为,并深入探讨了 `ParserConfig#getDeserializer` 方法的核心逻辑。此外,还介绍了 ASM 字节码技术的应用及其在反序列化过程中的角色。
103 10
|
存储 JSON fastjson
聊聊fastjson反序列化的那些坑
聊聊fastjson反序列化的那些坑
2970 0
|
Dubbo 应用服务中间件
Dubbo使用Hessian2序列化时针对Byte类型出现java.lang.ClassCastException
Dubbo使用Hessian2序列化时针对Byte类型出现java.lang.ClassCastException
194 0
|
Java fastjson
fastJson序列化与反序列化
fastJson序列化与反序列化
|
fastjson 开发者
记一次fastjson空指针异常
案例:package com; import com.alibaba.fastjson.JSONObject; import lombok.Data; import java.nio.charset.StandardCharsets; @Data public class User {     private Long id;     private String name;     
1453 0
记一次fastjson空指针异常
|
JSON fastjson Java
Fastjson反序列化随机性失败
Fastjson作为一款高性能的JSON序列化框架,使用场景众多,不过也存在一些潜在的bug和不足。本文主要讲述了一个具有"随机性"的反序列化错误!
340 0
Fastjson反序列化随机性失败
|
XML JSON 缓存
【WEB安全】Fastjson反序列化(上)
Java 序列化及反序列化处理在基于Java 架构的Web应用中具有尤为重要的作用。例如位于网络两端、彼此不共享内存信息的两个Web应用在进行远程通信时,无论相互间发送何种类型的数据,在网络中实际上都是以二进制序列的形式传输的。为此,发送方必须将要发送的Java 对象序列化为字节流,接收方则需要将字节流再反序列化还原得到Java 对象,才能实现正常通信。当攻击者输入精心构造的字节流被反序列化为恶意对象时,就会造成一系列的安全问题。
587 0
【WEB安全】Fastjson反序列化(上)
|
存储 缓存 安全
Java安全之反序列化漏洞分析
Java安全之反序列化漏洞分析
450 0
Java安全之反序列化漏洞分析
|
存储 安全 Dubbo
深入剖析 Java 反序列化漏洞(上)
在上篇文章中,小编有详细的介绍了序列化和反序列化的玩法,以及一些常见的坑点。 但是,高端的玩家往往不会仅限于此,熟悉接口开发的同学一定知道,能将数据对象很轻松的实现多平台之间的通信、对象持久化存储,序列化和反序列化是一种非常有效的手段,例如如下应用场景,对象必须 100% 实现序列化。 DUBBO:对象传输必须要实现序列化 RMI:Java 的一组拥护开发分布式应用程序 API,实现了不同操作系统之间程序的方法调用,RMI 的传输 100% 基于反序列化,Java RMI 的默认端口是 1099 端口
深入剖析 Java 反序列化漏洞(上)

热门文章

最新文章