Jackson-databind和fastjson远程代码执行误差危害通告

宣布时间 2020-02-21

误差编号和级别


CVE编号:CVE-2020-8840 ,危险级别:严重 ,CVSS分值:9.8


影响版本


1. FasterXML jackson-databind


受影响版本

2.0.0 <= FasterXML jackson-databind <= 2.9.10.2


不受影响版本

FasterXML jackson-databind = 2.8.11.5

FasterXML jackson-databind = 2.9.10.3(暂未宣布)


2. fastjson


受影响版本

fastjson <= 1.2.62


误差概述


2月19日 ,NVD宣布清静通告披露了jackson-databind由JNDI注入导致的远程代码执行误差。受影响版本的jackson-databind中由于缺少某些xbean-reflect/JNDI黑名单类 ,如org.apache.xbean.propertyeditor.JndiConverter ,可导致攻击者使用JNDI注入的方法实现远程代码执行。


在jackson-databind中的反序列化gadget也同样影响了fastjson ,在开启了autoType功效的情形下(autoType功效默认关闭) ,攻击者使用该误差可实现在目的机械上的远程代码执行。


误差验证


暂无PoC/EXP。


修复建议


1. FasterXML jackson-databind


现在官方已在最新版本中修复了该误差 ,请受影响的用户尽快升级版本举行防护 ,暂未宣布新版本的请一连关注官方信息 ,下载链接:https://github.com/FasterXML/jackson-databind/releases。


2. fastjson


官方暂未宣布针对此误差的修复版本 ,开启了autoType功效的受影响用户可通过关闭autoType来规避危害(autoType功效默认关闭) ,另建议将JDK升级到最新版本。


autoType关闭要领如下:


要领一:

在项目源码中全文搜索如下代码 ,找到并将此行代码删除:

ParserConfig.getGlobalInstance().setAutoTypeSupport(true);


要领二:

在JVM中启动项目时 ,切勿添加以下参数:

-Dfastjson.parser.autoTypeSupport=true


参考链接


https://nvd.nist.gov/vuln/detail/CVE-2020-8840