fastjson

SpringBoot返回JSON

亡梦爱人 提交于 2020-11-25 06:31:35
[TOC] 1、SpringBoot返回JSON简介 随着web开发前后端分离技术的盛行,json是目前主流的前后端数据交互方式,使用json数据进行交互需要对json数据进行转换解析,需要用到一些json处理器,常用的json处理器有: jackson-databind,SpringBoot默认的json处理器 Gson,是Google的一个开源框架 fastjson,目前解析速度最快的开源解析框架,由阿里开发 下面分别介绍如何在SpringBoot中整合三大json解析框架。 2、整合jackson-databind Jackson-databind是SpringBoot默认集成在web依赖中的框架,因此我们只需要引入 spring-boot-starter-web 依赖,就可以返回json数据: 接着上篇文章中的demo继续修改demo,先看下代码框架: 下面开始修改demo,返回json数据,首先在pojo下创建一个Good实体类,并且可以通过注解来解决日期格式等需求: package com.gongsir.springboot02.pojo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; import java

fastjson<=1.2.62远程代码执行漏洞通告

血红的双手。 提交于 2020-11-24 02:55:00
0x00 漏洞背景 2020年02月日, 360CERT监测到友商发布了fastjson<=1.2.62远程代码执行漏洞通告。 fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。 此次漏洞是由于 CVE-2020-8840 的 gadget 绕过了fastjson的黑名单而导致的,当服务端存在收到漏洞影响的 xbean-reflect 依赖并且开启fastjson的 autotype 时,远程攻击者可以通过精心构造的请求包触发漏洞从而导致在服务端上造成远程命令执行的效果。 0x01 风险等级 360CERT对该漏洞进行评定 评定方式 等级 威胁等级 中危 影响面 一般 360CERT建议广大用户及时更新fastjson版本。做好资产 自查/自检/预防 工作,以免遭受攻击。 0x02 影响版本 fastjson <= 1.2.62 0x03 漏洞证明 0x04 修复建议 1.fastjson默认关闭 autotype ,请在项目源码中全文搜索以下代码,找到并将此代码删除: ParserConfig.getGlobalInstance () .setAutoTypeSupport ( true ); 2.将JDK升级到最新版本。 0x05 产品侧解决方案

fastjson<=1.2.62远程代码执行漏洞通告

强颜欢笑 提交于 2020-11-24 02:40:50
0x00 漏洞背景 2020年02月日, 360CERT监测到友商发布了fastjson<=1.2.62远程代码执行漏洞通告。 fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。 此次漏洞是由于 CVE-2020-8840 的 gadget 绕过了fastjson的黑名单而导致的,当服务端存在收到漏洞影响的 xbean-reflect 依赖并且开启fastjson的 autotype 时,远程攻击者可以通过精心构造的请求包触发漏洞从而导致在服务端上造成远程命令执行的效果。 0x01 风险等级 360CERT对该漏洞进行评定 评定方式 等级 威胁等级 中危 影响面 一般 360CERT建议广大用户及时更新fastjson版本。做好资产 自查/自检/预防 工作,以免遭受攻击。 0x02 影响版本 fastjson <= 1.2.62 0x03 漏洞证明 0x04 修复建议 1.fastjson默认关闭 autotype ,请在项目源码中全文搜索以下代码,找到并将此代码删除: ParserConfig.getGlobalInstance () .setAutoTypeSupport ( true ); 2.将JDK升级到最新版本。 0x05 产品侧解决方案

ajax请求后台详解

这一生的挚爱 提交于 2020-11-09 02:10:40
AJAX 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。 什么是 AJAX ? AJAX = 异步 JavaScript 和 XML。 AJAX 是一种用于创建快速动态网页的技术。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。 有很多使用 AJAX 的应用程序案例:新浪微博、Google 地图、开心网等等。 前端ajax与后端Spring MVC控制器有以下五种数据交互方式 方式一 通过 URL传参 通过 URL挂接参数,如 /auth/getUser?userid='6' 服务器端方法可编写为: getUser(String userid),也可新增其他参数如 HttpSession, HttpServletRequest,HttpServletResponse,Mode,ModelAndView等。 方式二 单值传参 前台调用如: ajaxPost( "/base/user/exchangeSort",{ "id":rid, "otherid":otherid}, function (data,status){ xxxxxx xxxxxx }); 服务器端为: public String

Springboot整合FastJson

◇◆丶佛笑我妖孽 提交于 2020-11-08 13:56:57
fastJson是阿里巴巴旗下的一个开源项目之一,顾名思义它专门用来做快速操作Json的序列化与反序列化的组件。 它是目前json解析最快的开源组件没有之一! 我们进行Springboot整合FastJson 一:添加依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version> 1.2 . 33 </version> </dependency> 添加依赖我们编写自己的类来继承 @Configuration public class FastJsonConfiguration extends WebMvcConfigurerAdapter { @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { super.configureMessageConverters(converters); FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter(); FastJsonConfig fastJsonConfig =

SpringBoot使用fastjson

梦想的初衷 提交于 2020-11-08 10:15:17
在其实文件中添加bean package com.springboot.market; import com.alibaba.fastjson.serializer.SerializerFeature; import com.alibaba.fastjson.support.config.FastJsonConfig; import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.http.HttpMessageConverters; import org.springframework.context.annotation.Bean; import org.springframework.http.converter.HttpMessageConverter; import java.util.List; @SpringBootApplication public

springboot集成fastjson

大城市里の小女人 提交于 2020-11-08 05:30:12
@Configuration @EnableWebMvc public class WebMvcConfigurer extends WebMvcConfigurerAdapter { /** * fastjson configuration */ @Override public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { FastJsonHttpMessageConverter converter = new FastJsonHttpMessageConverter(); FastJsonConfig config = new FastJsonConfig(); config.setSerializerFeatures(SerializerFeature.WriteNullListAsEmpty, SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty); config.setSerializeFilters((ValueFilter) (object, name, value) -> { // 针对map类型value为null时输出"" if (Objects

SpringBoot 集成 阿里的 FastJson

孤街醉人 提交于 2020-11-06 07:56:40
SpringBoot 集成 fastjson pom.xml 中添加引用 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency> 在主类中 @Bean public HttpMessageConverters fastJsonHttpMessageConverters() { FastJsonHttpMessageConverter fastJsonHttpMessageConverter = new FastJsonHttpMessageConverter(); FastJsonConfig fastJsonConfig = new FastJsonConfig(); fastJsonConfig.setSerializerFeatures(SerializerFeature.PrettyFormat); fastJsonHttpMessageConverter.setFastJsonConfig(fastJsonConfig); HttpMessageConverter<?> converter = fastJsonHttpMessageConverter; return new

fastjson序列化和反序列化报com.alibaba.fastjson.JSONException: autoType is not support异常问题,解决方案整合

天涯浪子 提交于 2020-11-03 07:56:11
1、问题起因   2017年3月15日,fastjson官方发布安全升级公告,该公告介绍fastjson在1.2.24及之前的版本存在代码执行漏洞,当恶意攻击者提交一个精心构造的序列化数据到服务端时,由于fastjson在反序列化时存在漏洞,可导致远程任意代码执行。 自1.2.25及之后的版本,禁用了部分autotype的功能,也就是”@type”这种指定类型的功能会被限制在一定范围内使用。而由于反序列化对象时,需要检查是否开启了autotype。所以如果反序列化检查时,autotype没有开启,就会报错。 2、问题产生的场景   当调用 JSON.toJSONString(object, SerializerFeature.WriteClassName)后,得到的序列化字符串中,包含类的信息,即会含有一个“@Type”的键值对,描述类的信息。   例如:"{\"@type\":\"com.zhi.fund.domain.Student\",\"age\":18,\"birthday\":-1594800000000,\"name\":\"\xe6\xb1\x89\xe5\x8d\xbf\",\"status\":true,\"stuId\":2}" 3、解决方式:   参考: https://github.com/alibaba/fastjson/wiki/enable

fastjson RCE 它叒叒来了...

你离开我真会死。 提交于 2020-11-03 07:50:09
隔壁群里看到一个图 version< =1.2.68 目前官方还没出修订版 企鹅家发公告了,目前说是开启SafeMode可以缓解 本文分享自微信公众号 - 这里是河马(gh_d110440c4890)。 如有侵权,请联系 support@oschina.cn 删除。 本文参与“ OSC源创计划 ”,欢迎正在阅读的你也加入,一起分享。 来源: oschina 链接: https://my.oschina.net/u/574809/blog/4543919