首先Rsync未授权访问利用
该漏洞最大的隐患在于写权限的开启,一旦开启了写权限,用户就可以,用户就可以利用该权限写马或者写一句话,从而拿到shell。
我们具体来看配置文件的网相关选项(/etc/rsync.conf)
这一项read only表示只读,如果这一项为no,我们就具有写权限了。
如果这边有个PHP的站,如果写个一句话,后果大家都懂得。
当然,有些时候也可以读取到一些信息,这样可以造成敏感信息泄露。
Rsync未授权访问漏洞的修复(或者说防御、缓解措施)
配置文件解析:
配置文件位置:/etc/rsync.conf,常见配置项
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的两项可以使用*表任意。
安全配置
- 配置认证用户名或者密码
- host allow/deny 来控制接入源IP
- uid和gid,使用足够但最小权限的账号进行
- 必要时候可以配置只读
- 非必要应该仅限制配置路径下可访问