FasterXML Jackson-databind远程代码执行漏洞

近日,FasterXML Jackson-databind远程代码执行漏洞的利用方式公开。此漏洞利用FasterXML Jackson-databind的logback-core类建立JDBC连接,加载插入恶意代码的sql文件,获取服务器权限,实现远程代码执行漏洞的利用。

FasterXML Jackson-databind介绍

FasterXML Jackson是美国FasterXML公司的一款适用于Java的数据处理工具。jackson-databind是其中的一个具有数据绑定功能的组件。jackson-databind可以将Java对象转换成json对象,同样也可以将json转换成Java对象。

漏洞分析

此漏洞调用FasterXML Jackson-databind的logback-core类建立JDBC连接,JDBC是一个可以执行sql语句的API。通过JDBC,服务器可以加载远端的sql文件并执行其中的代码。攻击者利用此方式,加载远端的恶意sql文件,在目标服务器执行文件中的恶意代码,获取目标服务器的权限。

漏洞复现

搭建 jackson-databind-2.9.8环境。下载jackson-databind-2.9.8、jackson-annotations-2.9.8、jackson-core-2.9.8、logback-core-1.3.0-alpha4、h2-1.4.199放在classpath文件夹中,使用ruby脚本加载jar包,传入构造的payload,加载远端HTTP服务器上的sql文件,实现远程代码执行攻击。攻击效果如下图。PHP大马

执行ruby脚本,传入参数:

FasterXML Jackson-databind远程代码执行漏洞_第1张图片

HTTP服务器上产生日志。

FasterXML Jackson-databind远程代码执行漏洞

生成exploit文件

FasterXML Jackson-databind远程代码执行漏洞_第2张图片

影响范围

目前受影响FasterXML Jackson-databind的版本:

FasterXML jackson-databind 2.0 – 2.9.9.1

修复建议

升级到FasterXML jackson-databind最新版本,下载链接:https://github.com/FasterXML/jackson-databind/。

你可能感兴趣的:(FasterXML Jackson-databind远程代码执行漏洞)