关于网友提出的“ 果真有难度, 高人解答,不会的进来学习,完成后代码共享!!!”问题疑问,本网通过在网上对“ 果真有难度, 高人解答,不会的进来学习,完成后代码共享!!!”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: 果真有难度, 高人解答,不会的进来学习,完成后代码共享!!!
描述: 我前段时间在CSDN论坛看到一个贴子,关于做SOCKS5代理客户端的问题,当运行SOCKS5代理客户端后,本机所有的网络都要
经过SOCKS5代理,有人提出用SPI和APIHOOK,因为学过socks5加上好奇所以自己动手编写代码研究了一下,我选择了APIHOO方向。我的思路是这样的,HOOK了connect函数,在我的处理代码里完成socks5 TCP代理,当我运行我的代码后确实本机所有的TCP网络连接都经过我的TCP代理出去了,这只是完成了一半,还有一半就是socks5 UDP代理,UDP我想这样处理再HOOK了connect函数后,然后判断是TCP协议还是UDP协议,然后就分别进行处理,也就是我HOOK的connect函数进行socks5全部处理(TCP和UDP),
代码能够正常编译和运行,但是打开软件的时候就提示出错然后就自动退出,比如IE和迅雷,我又修改了方案,HOOK了connect函数
进行socks5 TCP代理封装,HOOK了sendto函数进行socks5 UDP代理封装,因为sendto函数参数里有实际发送的UDP数据(var buf),其结果还是一样的,现在晕了,真的不知道怎么样做了,是HOOK错了函数还是另HOOK别的函数?请高人指教,完成后
我决定给大家共享代码,留下你们的邮箱。
解决方案1: udp不用connect的,函数有socket, wsasocket, wsasendto,recvfrom,wsarecvfrom,相对有点麻烦,你都挂了试一下
解决方案2: 学习
以上介绍了“ 果真有难度, 高人解答,不会的进来学习,完成后代码共享!!!”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3697501.html