Windows全局代理

0x01 介绍

1. 为什么要全局代理

在渗透的时候要保护好自己啊,不要被溯源到。 在买的一些VPS上做扫描的时候,有可能会触发到VPS厂商(搬瓦工、Vultr的都有遇到过)的安全机制(如DDoS),将我们的VPS停机。做好全局代理的情况下,我们就可以在自己的电脑上做些扫描操作了。

2. 为什么不用proxifier

一直有在用proxifier,这里做个测试,除了局域网的IP,其余全部通过clash,规则如下:

测试ping谷歌和IP情况如下(可以看到并没有起作用):

3. 全局代理的基础

如果想深入了解的话,需要一些路由和tap/tun虚拟网卡的知识。  推荐几篇文章,可以看一下: 通过openvpn分析tun实现隧道的数据流程 理解Linux虚拟网卡设备tun/tap的一切 理解物理网卡、网卡接口、内核、IP等属性的关系

0x02 实操

(一)Windows10全局代理

Windows10实现全局代理很简单,需要借助一款工具CFW(Clash For Windows),下面借助最新款的CFW来进行演示(TAP模式)。

1. 安装TAP

选择“TAP Device”Manage下的Install进行安装,安装完成后,适配器中会出现一个名为cfw-tap的虚拟网卡。

2. 启用Service模式

a. 未启用Service模式下的情况下:Service Mode旁边的地球是灰色的。b. 选择“Service Mode”Manage下的Install进行安装,安装完成后地球变成绿色。

3. 开启Mixin

a. 编辑Mixin配置文件,内容如下:

mixin: dns: enable: true enhanced-mode: redir-host nameserver: - 223.5.5.5 # 真实请求DNS,可多设置几个 - 8.8.8.8 # 真实请求DNS,可多设置几个 - 114.114.114.114 # interface-name: WLAN # 出口网卡名称,或者使用下方的自动检测 tun: enable: true stack: gvisor # 使用 system 需要 Clash Premium 2021.05.08 及更高版本 dns-hijack: - 198.18.0.2:53 # 请勿更改 auto-route: true auto-detect-interface: true # 自动检测出口网卡

b. 启动Mixin

4. 测试

(二)Windows7全局代理

我在这里直接使用cfw进行了测试,发现启用service模式的时候,并没有实际起作用,Service Mode旁边地球也一直处于灰色的状态。 下面使用另一款工具tun2socks进行全局代理。 tun2socks有几款工具,我这里选择使用go写的一款go-tun2socks,项目地址:https://github.com/eycorsican/go-tun2socks

1. 安装TAP

a. 下载地址:http://build.openvpn.net/downloads/releases/tap-windows-9.22.1-I602.exe

b. 安装完成后,会出现一个TAP-Windows Adapter V9的虚拟网卡

2. 运行tun2socks

a. 按照教程装完tap,再下载tun2socks后直接运行会发现,报如下错误:

b. 经过调试分析后,是添加的虚拟网卡名称的问题。c. 经过跟踪调试源码,发现会将虚拟网卡名称与ifaceName进行比较,而ifaceName的默认值为tun1.

d. 所以需要将添加的TAP虚拟网卡名称修改为tun1,修改完成后再次运行,结果如下(或者-tunName "虚拟网卡名称"):-

e. 完整参数运行

- 需要提前准备好一个socks代理服务器(这里以本地用clash为例)

- tun2socks-windows-4.0-amd64.exe -tunAddr 10.0.0.2 -tunGw 10.0.0.1 -tunDns 114.114.114.114 -prooxyType socks -proxyServer 127.0.0.1:7890 -tunName "本地连接 2"

- 127.0.0.0:7890是clash在本地监听的一个socks5代理

3. 路由配置

a. 原始路由

b. 修改虚拟网卡的跳跃点数为1

c. 之后运行tun2socks的时候,会自动添加一条路由

- 因为此时虚拟网卡的metric的2相比于原始的默认路由11小,所以可以不用删除原始的默认路由。

d. 此时直接访问网站的话会发现访问不到,经过分析应该是clash出去的机场的IP会路由匹配到10.0.0.1,造成一个回环。

- 因而此时需要找到clash出去的机场IP,通过clash的log和tun2sock的运行界面可以看到大量重复的一个IP,这个就有可能是我们机场的IP。

- 找到后需要让机场IP通过原始默认网关出去。

- route add <机场IP> mask 255.255.255.255 192.168.14.1 -

4. 测试

参考资料:通过openvpn分析tun实现隧道的数据流程

参考资料:理解Linux虚拟网卡设备tun/tap的一切

参考资料:理解物理网卡、网卡接口、内核、IP等属性的关系

参考资料:使用Clash Tun网卡模式