【漏洞预警】关于Jackson框架存在Java反序列化代码执行漏洞的安全公告

阅读量    95633 |

分享到: QQ空间 新浪微博 微信 QQ facebook twitter

http://p1.qhimg.com/t01d8660e53e8a04529.jpg

安全公告编号:CNTA-2017-0030

近日,国家信息安全漏洞共享平台(CNVD)收录了CNVD白帽子(ID:ayound)报送的Jackson框架enableDefaultTyping方法反序列化漏洞(CNVD-2017-04483)。攻击者利用漏洞可在服务器主机上执行任意代码或系统指令,取得网站服务器的控制权。


一、漏洞情况分析

Jackson是一套开源的java序列化与反序列化工具框架,可将java对象序列化为xml和json格式的字符串及提供对应的反序列化过程。由于其解析效率较高,目前是Spring MVC中内置使用的解析方式。4月15日,CNVD白帽子(ID:ayound)提交了Jackson存在Java反序列化漏洞的情况,CNVD秘书处进行了本地环境核实,确认漏洞在一定条件下可被触发,达到任意代码和系统指令执行的目的。该漏洞的触发条件是ObjectMapper反序列化前调用了enableDefaultTyping方法。该方法允许json字符串中指定反序列化java对象的类名,而在使用Object、Map、List等对象时,可诱发反序列化漏洞。

CNVD对该漏洞的综合评级为“高危”。


二、漏洞影响范围

漏洞影响Jackson 2.7版本(<2.7.10)、2.8版本(<2.8.9)。根据CNVD秘书处对Jackson应用普查的结果,目前互联网上约有9.1万台网站服务器标定为使用了Jackson框架,其中排名前五位的国家有:美国(占比68.8%)、中国(8.2%)、英国(4.1%)、德国(2.0%)、荷兰(2.0%)。目前,暂未进一步抽样核验实际受影响的比例情况。


三、防护建议

Jackson开发方已经对ayound提交的情况进行了回应,并发布了修复更新。用户需更新到2.7.10或2.8.9版本,同时后续将发布的2.9.0版本也会加入该漏洞的修复措离。


漏洞解决方案

漏洞已上报给jackson,该开源组件已修复漏洞,使用该开源组件的应用需要更新jackson的jar包: 

https://github.com/FasterXML/jackson-databind/issues/1599 

附:参考链接

http://www.cnvd.org.cn/flaw/show/CNVD-2017-04483 

https://github.com/FasterXML/jackson-databind/issues/1599 (修复安全建议)

分享到: QQ空间 新浪微博 微信 QQ facebook twitter
|推荐阅读
|发表评论
|评论列表
加载更多