jackson.ObjectMapper里enableDefaultTyping方法过期
enableDefaultTyping过期的原因是存在漏洞【阿里云上的漏洞公告】Jackson框架enableDefaultTyping方法反序列化漏洞
漏洞名称Jackson框架enableDefaultTyping方法反序列化漏洞官方评级高危漏洞描述该漏洞是由于Jackson框架enableDefaultTyping方法存在Java反序列化代码执行漏洞,攻击者利用漏洞可在服务器主机上执行任意代码或系统指令,取得网站服务器的控制权。漏洞利用条件和方式黑客可以远程代码执行来利用该漏洞。漏洞影响范围Jackson 2.7 < 2.7.10
这个方法指定序列化输入的类型
解决之前
ObjectMapper om = new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);jackson2JsonRedisSerializer.setObjectMapper(om);template.setValueSerializer(jackson2JsonRedisSerializer);
解决方法:使用activateDefaultTyping
方法替换掉enableDefaultTyping
替换方法为:
ObjectMapper om = new ObjectMapper();om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);//om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);om.activateDefaultTyping(LaissezFaireSubTypeValidator.instance ,ObjectMapper.DefaultTyping.NON_FINAL, JsonTypeInfo.As.PROPERTY);jackson2JsonRedisSerializer.setObjectMapper(om);
jackson.ObjectMapper里enableDefaultTyping方法过期相关推荐
- Jackson -- ObjectMapper
目录 1.简介 2 Jackson的数据绑定 3 反序列化 3.1 从JSON字符串读取Java对象 3.2 从JSON文件读取Java对象 3.3 从URL获取JSON数据读取Java对象 3.4 ...
- SpringBoot教程(10) Jackson ObjectMapper使用和常用注解
Jackson ObjectMapper使用和常用注解 一.前言 1. 引入Jackson 二.ObjectMapper 1. 创建ObjectMapper 2. 序列化 2.1 Java对象 转 J ...
- Jackson - ObjectMapper
使用Jackson转换JSON最简单的方式是通过Jackson的 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper).Jackson的 ...
- Spring Boot中Jackson ObjectMapper应用详解
Spring Boot支持与三种JSON mapping库集成:Gson.Jackson和JSON-B.Jackson是首选和默认的. Jackson是spring-boot-starter-json ...
- eclipse中用maven多模块管理,然后主项目无法调用其他被依赖项目里的方法,解决办法
eclipse中用maven多模块管理,然后主项目无法调用其他被依赖项目里的方法,解决办法 参考文章: (1)eclipse中用maven多模块管理,然后主项目无法调用其他被依赖项目里的方法,解决办法 ...
- iOS Extension 里的方法不执行
iOS Extension 里的方法不执行 确保Extension与主程序同在一个Target内. 主程序Build Phases->Embed App Extensions中导入对应Exten ...
- java调用so库中的native方法_Java如何调用本地.so库里的方法
首先在此之前希望你已经掌握了基本JNI常识的运用,比如Java代码如何调用本地native的方法,native方法如何访问本地变量,本地方法等以及其他相关的基础知识.在此我还是贴上Activity的部 ...
- 计算机画图怎样更改文字,如何在图片上改字|超简单的修改图片里文字方法
这篇文章将要给大家介绍的是,不用联网,不用下载专业的图像处理软件,单纯用画图工具,就能修改表情包.图片上文字的方法,只适合简单的图片处理,复杂的还是交给专业的图像处理工具吧.下面系统吧就给大家带来修改 ...
- PHPstorm 函数或者方法的注释的时间和用户名,PHPstorm里函数方法的注释是没有动态时间设置的,但是看了PHP file里面有时间日期的注释,而PHP Function Doc Commen
PHPstorm 函数或者方法的注释的时间和用户名,PHPstorm里函数方法的注释是没有动态时间设置的,但是看了PHP file里面有时间日期的注释,而PHP Function Doc Commen ...
最新文章
- 使用GIF(仅限Delphi2007)
- oracle symonym_oracle vs. SQL 同义词synonym 别名 alias | 学步园
- Linux crond实例
- python模块之paramiko学习二
- java中nextLine(),读取换行符的解决
- vba 中sql like用法
- 我的docker随笔35:jenkins服务部署
- [转]把复杂事物简明化
- 在python中单线程,多线程,多进程对CPU的利用率实测以及GIL原理分析
- C Tricks(三)—— 以一维数组的形式对二维数组赋值
- linux中可以使用-af含义,关于Windows中的linux:AF_UNIX
- python 成语库_README.md · 天宇之游/一个python的TK猜成语游戏 - Gitee.com
- VS如何安装.nupkg文件
- Qgis 3.18 的安装步骤
- 教你如何把书本上的字快速弄到电脑上
- 就工业企业智慧能源能效管理系统建设问题探讨!
- Spring 漏洞及其修复方案
- linux中gnuplot给定文本,Gnuplot (三)输出图片/字体支持、eps/png/pdf/enhanced文本
- ES的基本API操作
- matlab ezplot hod,Matlab学习笔记三:绘图