问题不是用什么。是要了解其中的hook技术。这种通过共享进程空间来将injector载入目标应用程序的地址空间的方式。看了下freecap的源码。其是使用了win api hook。关于如何载入,它通过自身,先初始化injector,接着创建对应应用程序进程。接下来由于是子进程,父进程已知载入的injector的首指令偏移地址,对应子进程的injector偏移地址,接下来通过汇编,将子进程eip指向injector。从而唤醒injector,达到指定单一应用程序的Winsock2对应几个API被injector hook住。
有没有懂vpn的朋友解惑啊?感激不尽!
如果你知道游戏服务器的所有IP段(一般游戏都不只是一个游戏服务器,而且不少不同的IP),是可以实现的,特别是游戏服务器是域名的话,这比较容易实现。
请问是vpn中具体哪个实现呢?IPsec?pptp?L2TP?GRE?
我看了linux的pptp代码,里面到最后居然直接调的系统的pppd程序。pppd连接一旦建立,链路层就全走的这个tunnel了吧?能通过hook指定单一的应用程序吗?或者用spi能钩到吗?通过直接改ip头的方式。
socks5能实现,其他几个有没有能实现的啊?还是说用与socks5同样的方法采用这几个vpn协议都能实现?指定单一程序的话就靠hook就可以?
实现VPN客户端指定应用程序走VPN连接,其他的客户端应用程序不走。比如,我开个游戏,走VPN线路,同时不影响我用IE上网,IE上网不走VPN线路。
那就根本不用自己写了。随便安装个sockscap32/e-border/proxycap等的东西就能挂游戏,让游戏经过socks5代理。