3.端口转发与内网代理
3.1 端口转发和代理
正向代理反向代理,端口转发,socks代理
3.2 常见转发与代理工具
3.2.1 LCX
下载链接这下面有
端口转发,端口映射,内网穿透,lcx.exe软件 - 诸葛东流博客 (zhuguodong.com)
3.2.1.1 目标机器有公网ip,但是端口被墙
端口转发
比如winserver上执行 (记得入站规则和开启rdp)
lcx.exe -tran 4444 127.0.0.1 3389
kali上直接
rdesktop 172.31.171.152:4444
不过一些原因这里没有登录上,但是端口转发复现成功
注意:要关防火墙才可以
3.2.1.2 内网ip映射
比如说内网还有个ubuntu,22端口开了ssh但是被防火墙规则给ban了
只需要多填写一个内网地址就好,我们可以把10.10.10.15转发到本机的2222
lcx.exe -tran 2222 10.10.10.15 22
ssh root@192.168.2.13 -p 2222
上面是原本书上写的,但是由于我的ubuntu是内网的不方便下载按照ssh,我就随便起一个监听
ubuntu: (内网)
nc -lvnp 22
win server (DMZ)
lcx.exe -tran 4444 10.10.10.15 22
kali (公网)
nc 172.31.171.152 4444
做到了内网穿透
3.2.1.3 目标机无公网ip
比如 wsl内网的kali 公网kali 靶场windows server
需要Linux版的lcx
这里由于找不到书里的lcx。网上找到了portmap
./portmap -h
Socket data transport tool
by Sofia(www.vuln.cn)
Usage:./portmap -m method [-h1 host1] -p1 port1 [-h2 host2] -p2 port2 [-v] [-log filename]
-v: version
-h1: host1
-h2: host2
-p1: port1
-p2: port2
-log: log the data
-m: the action method for this tool
1: listen on PORT1 and connect to HOST2:PORT2
2: listen on PORT1 and PORT2
3: connect to HOST1:PORT1 and HOST2:PORT2
Let me exit...all overd
公网kali (vps)
./portmap -m 2 -p1 4444 -p2 1234
靶场windows server
lcx -slave 192.168.239.61 4444 127.0.0.1 3389
wsl内网的kali
rdesktop 192.168.239.61:4444
(这里有点奇怪,我报错UI(error): ui_init(), failed to open X11 display: 使用网上的解决方法都无果,所以下面直接用vps的kali使用远程桌面了,看上去是可行的)
3.2.2 FRP
环境如下
至于如何搭建翻我以前的博客吧~
frp :
支持http,udp,tcp,支持隧道代理,可搭建socks5代理
有unix和win版,压缩包里面主要的是:服务端配置和服务端文件,客户端配置和客户端文件
下面讲Socks5代理服务的情形
3.2.2.1 一级网络代理
本来原书要安装ftp演示,但是我的ubuntu已经配好了内网的固定ip,再次连接外网可能会破坏现有的网络情况,离线安装又过分复杂(传文件麻烦,或者到时候搭好代理再试试?),所以就nc测试
这个代理和以前打红日那个是一样的
vps:kali
windows server: 跳板机
ubuntu:目标机器
vps上
frps.ini
[common]
bind_addr = 0.0.0.0
bind_port = 7000
./frps -c ./frps.ini
随后上传客户端到winserver
frpc.ini (这个是最简化的版本了)
[common]
server_addr = 192.168.239.61
server_port = 7000
[socks5]
remote_port = 1080
plugin = socks5
frpc.exe -c ./frpc.ini
winserver
kali
代理搭建完成,
使用的话若是linux可以用proxychains,Kali自带
改 /etc/proxychains.conf
xs,默认走socks4
要把上面socks4注释
成功
proxychains 支持TCP,DNS,支持http,sicks4,sock5类型代理
3.2.2.2 二级网络代理
vps的配置和一级代理一样
frps.ini
[common]
bind_addr = 0.0.0.0
bind_port = 7000
./frps -c ./frps.ini
windows server2012 (跳板机1号)
先启动客户端
frpc.exe -c ./frp.ini
frpc.ini如下
启动服务端
./frps.exe -c ./frps.ini
frps.ini
[common]
bind_addr = 10.10.10.13
bing_port = 7000
这个时候就是用的内网地址了
xs,ubuntu由于是内网,传文件及其麻烦
所以在winserver那里用phpstudy起了个web服务,学了一手ftp使用
ubuntu如何连接到ftp服务器-百度经验 (baidu.com)
./frpc -c ./frpc.ini
frpc.ini
[common]
server_addr = 10.10.10.13
server_port = 7000
[socks5]
type = tcp
plugin = socks5
remote_port = 10808
ubuntu
winserver
kali
咱开一下rdp
然后kali
proxychains 192.168.30.20
3.2.2.3 三级网络代理
其实是有规律的,有用到frps的都是配好的机器都是配好的,在没有用过frps的跳板机上配好frps就行
ubuntu作为跳板机,没有用过frps,咱们就改
frps.ini
[common]
bind_addr = 上一跳的ip #server的ip
bing_port = 7000
所以如下更改
[common]
bind_addr = 10.10.10.13
bing_port = 7000
只要换bind_addr为上一跳的ip
frpc.ini
[common]
...不变化...
[socks5_forward] #改名
type = tcp
plugin = socks5
local_ip = 本机ip #新增
local_port = 想开的新端口 #新增
所以如下更改
[common]
server_addr = 10.10.10.13
server_port = 7000
[socks5_forward]
type = tcp
remote_port = 10808
local_ip = 192.168.30.40
local_port = 10809
然后运行
./frps -c ./frps.ini
./frpc -c ./frpc.ini
之后winserver2008
frpc.ini
[common]
server_addr = 192.168.30.40
server_port = 7000
[socks5]
type = tcp
plugin = socks5
remote_port = 10809
只要修改server_addr为frps的地址
./frpc.exe -c ./frpc.ini
成功