Jackson可以轻松的将Java对象转换成json对象和xml文档,同样也可以将json、xml转换成Java对象,在2017年3月份, fastjson 1.2.24之前版本曾经出现过严重漏洞 。而更早的时候,Java反序列化漏洞问题曾经一度让大家心惊肉跳,这次是Jackson框架 2.7.10 及2.8.9以下版本出现任意代码执行漏洞,攻击者利用该漏洞可以获得网站控制权。考虑到由于漏洞已经被验证可以利用,绿盟科技于昨日发布漏洞预警通告《 Jackson框架Java反序列化远程代码执行漏洞预警通告 》
近日,国家信息安全漏洞共享平台(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版本也会加入该漏洞的修复措离。
附:参考链接:
http://www.cnvd.org.cn/flaw/show/CNVD-2017-04483
https://github.com/FasterXML/jackson-databind/issues/1599 (修复安全建议)
通告全文如下
北京时间4月15日,Jackson框架被发现存在一个反序列化代码执行漏洞。该漏洞存在于Jackson框架下的enableDefaultTyping方法,通过该漏洞,攻击者可以远程在服务器主机上越权执行任意代码,从而取得该网站服务器的控制权。
Jackson是一个开源的Java序列化与反序列化工具,可以将java对象序列化为xml或json格式的字符串,或者反序列化回对应的对象,由于其使用简单,速度较快,且不依靠除JDK外的其他库,被众多用户所使用。Jackson官方已经发布补丁修复了该开源组件。
相关地址:
http://www.cnvd.org.cn/flaw/show/CNVD-2017-04483
https://github.com/FasterXML/jackson-databind/issues/1599
受影响的版本
不受影响的版本
注:截止到该报告发布时,官方还没有正式发布上述新版本,请用户持续关注并在新版本发布时及时更新升级。
https://github.com/FasterXML/jackson-databind/commit/fd8dec2c7fab8b4b4bd60502a0f1d63ec23c24da
产品类
入侵防护系统(IPS)
http://update.nsfocus.com/update/listIps
入侵检测系统(IDS)
http://update.nsfocus.com/update/listIds
下一代防火墙系统(NF)
http://update.nsfocus.com/update/listNf
Web应用防护系统(WAF)
http://update.nsfocus.com/update/wafIndex
通过上述链接,升级至最新版本即可进行防护!
服务类
绿盟科技提供专业的安全技术服务,全方位的保障客户应用系统安全,避免受此漏洞影响。
本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。
原文发布时间:2017年3月14日
本文由:国家信息安全漏洞共享平台发布,版权归属于原作者
原文链接:http://toutiao.secjia.com/jackson-framework-appears-java-deserialization-vulnerability
本文来自云栖社区合作伙伴安全加,了解相关信息可以关注安全加网站