fastjson解析(fastjson工具类)

JSON,全称:JavaScript Object notification,作为一种常见的轻量级数据交换格式,在程序员的开发生涯中应该经常接触。简单明了的层次结构使JSON成为一种理想的数据交换语言。人容易读写,机器也容易分析生成,有效提高了网络传输效率。

目前主流对象转换为JSON的工具很多。我们主要介绍今天的主角,阿里巴巴的开源库——Fastjson。Fastjson是一个Java库,可以用来将Java对象转换成它们的json表示。它还可以用来将JSON字符串转换成等效的Java对象。Fastjson可以处理任何Java对象。

什么是 Fastjson?

阿里给出的官方定义是,fastjson是阿里巴巴的开源json解析库,可以解析JSON格式的字符串,支持将Java bean序列化为JSON字符串,也可以将JSON字符串反序列化为Java bean。

Fastjson 的优点

Fastjson比其他json库更快。自2011年fastjson 1 . 1 . x版本发布以来,其性能从未被Java实现的其他json库超越。广泛使用的fastjson在阿里巴巴广泛使用,部署在上万台服务器上,fastjson在行业内被广泛接受。2012年被开源中国评选为国内最受欢迎的开源软件之一。有很多测试用例来测试完整的fastjson。在1.2.11版本中,有超过3321个测试用例。每个版本都将经过回归测试,以确保稳定的质量。使用简单fastjson的API非常简洁。对泛型、超大文本的流处理、枚举、序列化和反序列化扩展的全功能支持。

说这么多!信息来了。

fastjson的当前版本是1.2.68,3月底发布。日前,某安全运营中心监测到fastjson=1.2.68版本存在远程代码执行漏洞,可利用该漏洞直接获取服务器权限。360CERT将该漏洞评为“高风险”

这个远程代码执行漏洞的原理是可以绕过自动类型切换的限制,链解串器可以通过精心构建解串利用链来实现远程命令执行。该漏洞本身无法绕过fastjson的黑名单限制,需要配合不在黑名单中的反序列化利用链才能完成完整的漏洞利用。

00-1010常用的Json组件FastJson存在远程代码执行漏洞。攻击者可以通过精心构造的JSON消息在目标服务器上执行任意命令,从而获得服务器特权。这次爆发的漏洞是之前漏洞中自动类型的旁路。

漏洞描述

FastJson 1.2.48

00-1010利用此0day漏洞,恶意攻击者可以构建黑名单策略,使攻击请求绕过FastJSON。例如,攻击者通过精心构造的请求远程让服务器执行指定的命令。

无线一键通

请实时关注github

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注