开源软件SoftEther拆分隧道突破
最近在寻找比较好用的开源VPN,感觉SoftEther很符合我的需求。一方面是SoftEther属于开源软件并且一直在更新,另一方面是功能强大,好用。
VPN支持路由功能和NAT功能,还支持多种类型的VPN接入,看图。目前我的需求是NAT并做用户分组,对用户做访问控制。
我的服务端部署环境是WIN2012R2_X64,可直接在官网下载服务端和客户端:https://www.softether.org/5-download
在服务端配置过程中遇到一个问题就是不能下发明细路由,这里叫他拆分隧道。如果不处理这个问题,所有请求都会从VPN饶。
但是在SoftEther VPN下发明细路由推送的时候提示:不支持此功能。它尚未在SoftEther VPN的开源版本上实施。
刚开始以为是有付费授权,后来发现不是这个原因。
在找到相关函数,所以只要保证不要满足中文环境就可以突破
修改方式:
安装好服务端以后,修改vpnsmgr_x64和vpnserver_x64函数返回值就可以,OD载入搜索CN,JP关键字,看到或条件的比较满足条件就会触发
mov dword ptr ss:[rsp+B0],1
将1的写入,改成0的写入
测试可行