如何解决sonatype-2017-0312漏洞

时间:2019-06-16 05:44:38

标签: java security jackson-databind

Sonatype Nexus IQ服务器组件扫描表明,Jackson-Databind版本2.9.9库存在漏洞问题,编码为sonatype-2017-0312。

jackson-databind容易受到远程代码执行(RCE)的攻击。 BeanDeserializerFactory类中的createBeanDeserializer()函数允许对不受信任的Java对象进行反序列化。远程攻击者可以通过上传恶意的序列化对象来利用此漏洞,如果应用程序尝试对其进行反序列化,则该对象将导致RCE。

我尝试使用redhat版本的Jackson-databind以及sonatype推荐的其他类型,但最后我们现在面对的是使用jackson-databind-2.9.8.redhat-00004.jar并以两个漏洞CVE结尾-2019-12086和sonatype-2017-0312。

2 个答案:

答案 0 :(得分:0)

解决方案是将gson设置为preferred-json-mapper作为替代的json实现提供程序。

对于Maven依赖管理:

    <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.5</version>
    </dependency>

还有其他一些: 杰克逊图书馆(Jackson Library),Google-Gson库,JSON-lib,Flexjson,json-io,genson,JSONiJ库。

答案 1 :(得分:0)

不要因为存在漏洞而放弃杰克逊; 这太荒谬了。

只需升级项目所依赖的Jackson数据绑定的版本 到解决漏洞的版本。 例如,

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.9.9.1</version>
</dependency>