微慑信息网

Redis未授权访问高危漏洞

近日,深信服安全团队发现开源数据库Redis爆出了一个未授权访问漏洞,第一时间进行跟踪以及分析预警。经研究发现,利用该漏洞,攻击者可以实现反弹shell进行任意代码执行。

漏洞名称Redis未授权访问漏洞

威胁等级严重

影响范围Redis 2.x,3.x,4.x,5.x

漏洞类型任意代码执行漏洞

利用难度容易

Redis软件介绍

Redis是一款开源的(拥有BSD证书)、使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,提供多种语言的API。

Redis支持多种数据结构,如字符串,散列,列表,集合,带有范围查询的排序集,位图,超级日志等。Redis具有内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性,并通过Redis Sentinel和Redis Cluster自动分区。

Redis从4.0版本开始加入了对外部扩展模块的支持,外部扩展模块可以实现新的Redis命令,新的Redis数据结构,基本上可以做到所有Redis内核可以做的事情。

Redis同时支持主从复制,主要是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master),后者称为从节点(slave);数据只能由主节点到从节点单向复制。主从复制的主要作用是实现了数据冗余、故障恢复、负载均衡、高可用基石。

截至目前为止,在全球范围内暴露在外网环境中的Redis资产多达18,620台,其中,中国地区对外开放的Redis资产数量排名第一,有5,935台。考虑到该软件为数据库,我们相信真实存在的设备数量将远远超过暴露的数值。

【漏洞预警】Redis未授权访问高危漏洞

(统计数据仅为对互联网开放的资产,本数据来源于shodan。)

图1  Redis全球范围内情况分布

国内方面,该数据库使用主要分布在北京地区。

【漏洞预警】Redis未授权访问高危漏洞

(统计数据仅为对互联网开放的资产,本数据来源于shodan。)

图2  Redis中国范围内情况分布

漏洞描述

由于Redis在4.0之后的版本中加入了外部模块扩展功能,使得攻击者可以通过外部模块扩展,引入恶意的.so文件,实现恶意代码执行。

如果Redis版本在4.0以下,同时redis-server以root权限启动,则攻击者可以在服务器上创建任意文件。

漏洞复现

该漏洞的复现除需要外部扩展模块功能外,还要设置主从复制功能。

具体环境配置参考github链接:

https://github.com/Ridter/redis-rce

成功执行后,将获取到目标主机的shell:

【漏洞预警】Redis未授权访问高危漏洞

影响范围

目前受影响的Redis版本:

Redis 2.x,3.x,4.x,5.x

修复建议

1、禁止外部访问Redis服务端口;

2、禁止使用root权限启动redis服务;

3、配置安全组,限制可连接Redis服务器的IP。

深信服解决方案

该漏洞尚未公开攻击细节,深信服千里目安全实验室将持续关注此次漏洞进展,最快速度给出完整的解决方案。

参考链接

 

[1].https://redis.io/

[2].https://github.com/n0b0dyCN/redis-rogue-server

[3].https://github.com/RicterZ/RedisModules-ExecuteCommand

[4].https://2018.zeronights.ru/wp-content/uploads/materials/15-redis-post-exploitation.pdf

时间轴

2019/7/07

WCTF2019 Final,LC/BC的成员Pavel Toporkov公开漏洞信息

2019/7/09

深信服千里目安全实验室对漏洞进行复现分析

2019/7/10

深信服千里目安全实验室发布该漏洞预警

 

原文始发于微信公众号(深信服千里目安全实验室):【漏洞预警】Redis未授权访问高危漏洞

本文标题:Redis未授权访问高危漏洞
本文链接:
(转载请附上本文链接)
http://vulsee.com/archives/vulsee_2019/0710_8162.html
转载请附本站链接,未经允许不得转载,,谢谢:微慑信息网-VulSee.com » Redis未授权访问高危漏洞
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

微慑信息网 专注工匠精神

访问我们联系我们