欢迎光临
我们一直在努力

Redis远程代码执行漏洞(CVE-2016-8339)

漏洞编号

CVE-2016-8339

概要

Redis数据结构存储在处理客户端输出缓冲区限制选项配置设置命令中存在越权漏洞。一个精心构造的配置命令可以导致越权代码执行。

测试版本

Redis-3.2.3

产品官网:http://redis.io

漏洞详情

Redis在内存中的数据存储结构使用简单的key-value形式。Redis由于它有能力处理其他数据库无法解决以及速度缓慢的问题而日益普及。

在客户端输出缓冲区限制选项的修改过程中使用配置命令存在一个越权漏洞,设置客户端输出缓冲区限制选项的所需的语法如下所示。

3221 Redis远程代码执行漏洞(CVE-2016-8339)

这个选项设置为断开客户某一类的限制。此选项将使用下面的代码:

3221 Redis远程代码执行漏洞(CVE-2016-8339)

在解析客户端输出缓冲区限制调用getclienttypebyname用于检索相应的类的类型。在这种情况下,getclienttypebyname在[ – 1,3 ]集合中返回一个值。查看client_obuf_limits数组的声明,我们看到数组的大小是3。

3221 Redis远程代码执行漏洞(CVE-2016-8339)

虽然客户端输出缓冲区限制只期望类型正常的客户端,通过掌握客户类型,该client_obufs_limit数组将溢出,随后的结构变量将被覆盖。

演示此漏洞的示例命令如下:

3221 Redis远程代码执行漏洞(CVE-2016-8339)

Timeline

2016-09-22 – Vendor Disclosure

2016―09-26 – Public Release

未经允许不得转载:杂术馆 » Redis远程代码执行漏洞(CVE-2016-8339)
分享到: 更多 (0)