Pivoting &隧道和端口转发
一、介绍
1. 简介

在红队参与、渗透测试或 Active Directory 评估期间,我们经常会发现自己可能已经泄露了所需的凭据、ssh 密钥、哈希或访问令牌以移动到另一台主机,但可能有 不能从我们的攻击主机直接访问其他主机。 在这种情况下,我们可能需要使用我们已经妥协的枢轴主机来找到通往下一个目标的方法。 首次登陆主机时要做的最重要的事情之一是检查我们的权限级别、网络连接和潜在的 VPN 或其他远程访问软件。 如果一台主机有多个网络适配器,我们很可能会使用它来移动到不同的网段。 Pivoting 本质上是通过受感染的主机移动到其他网络以在不同网段上找到更多目标的想法。
Pivoting 的主要用途是打破分段(物理和虚拟)以访问隔离网络。另一方面,隧道是 Pivoting 的一个子集。隧道将网络流量封装到另一个协议中并通过它路由流量。
二、Choosing The Dig Site & Starting Our Tunnels
1. 使用 SSH 和 SOCKS 隧道的动态端口转发
端口转发是一种允许我们将通信请求从一个端口重定向到另一个端口的技术。端口转发使用 TCP 作为主要通信层,为转发的端口提供交互式通信。但是,可以使用SSH甚至 SOCKS(非应用层)等不同的应用层协议来封装转发的流量。这可以有效绕过防火墙并使用受感染主机上的现有服务转向其他网络
1. SSH 本地端口转发

执行本地端口转发
设置枢纽:
经过发现 Ubuntu 服务器有多个网卡: 10.129.202.64/172.16.5.129现在我们需要知道在 172.16.5.0/23 范围上的主机,所以我们需要通过 Ubuntu 服务器转发我们的数据包,因此我们可以在本地启动一个 SOCKS 侦听器来完成次操作,然后配置 SSH 以在连接到目标主机后通过 SSH 将流量转发到 172.16.5.0/23

2. 使用 SSH 进行远程/反向端口转发
SSH 可以侦听我们本地主机并将远程主机的服务转发到我们的端口以及动态端口转发,我们也可以通过枢轴主机将数据报发送到远程网络,但有时我们可能也希望将本地服务转发到远程端口

最后结果实现图:

3. Meterpreter 隧道和端口转发
现在让我们考虑这样一个场景,我们在 Ubuntu 服务器(枢轴主机)上有我们的 Meterpreter shell 访问权限,我们想通过枢轴主机执行枚举扫描,但我们想利用 Meterpreter 会话给我们带来的便利 . 在这种情况下,我们仍然可以在不依赖 SSH 端口转发的情况下使用 Meterpreter 会话创建一个数据透视表。 我们可以使用以下命令为 Ubuntu 服务器创建一个 Meterpreter shell,它将在我们的攻击主机上的端口 8080 上返回一个 shell。
最后更新于
这有帮助吗?