当前位置: 首页 > news >正文

霍尔果斯建设局网站淘宝流量平台

霍尔果斯建设局网站,淘宝流量平台,html电影网站模板下载工具,广东深圳网站建设微信商城开发前言 项目中遇到这样一个需求,需要动态切换指定进程Sockets5代理IP,目前了解到可通过编写驱动拦截或者劫持LSP实现,LSP劫持不太稳定,驱动无疑是相对较好的解决方案,奈何水平不足便有了这"蹊径"。 初步尝试…

前言

项目中遇到这样一个需求,需要动态切换指定进程Sockets5代理IP,目前了解到可通过编写驱动拦截或者劫持LSP实现,LSP劫持不太稳定,驱动无疑是相对较好的解决方案,奈何水平不足便有了这"蹊径"。

初步尝试

首先想到的是通过代码设置系统全局代理,让目标进程乖乖的"看过来":

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

public static void SetProxy(string ip_port)

{

    //打开注册表

    RegistryKey regKey = Registry.CurrentUser;

    string SubKeyPath = @"Software\Microsoft\Windows\CurrentVersion\Internet Settings";

    RegistryKey? optionKey = regKey.OpenSubKey(SubKeyPath, true);

    //更改健值,设置代理,

    optionKey?.SetValue("ProxyEnable"1);

    if (ip_port.Length == 0)

    {

        optionKey?.SetValue("ProxyEnable"0);

    }

    optionKey?.SetValue("ProxyServer""socks5://"+ip_port);

    optionKey?.SetValue("ProxyOverride""localhost;127.0.0.*;<local>");

    // Configure the WebRequest to use the SOCKS5 proxy

    WebRequest.DefaultWebProxy = new WebProxy("socks5://"+ ip_port, true, null);

    //激活代理设置

    InternetSetOption(039, IntPtr.Zero, 0);

    InternetSetOption(037, IntPtr.Zero, 0);

}

设置后发现系统代理确实设置成功并生效了,浏览器查询一番,发现走的是自己设置的代理IP了,高高兴兴的打开目标应用,发现网络请求仍然走本地了,反复尝试了多次仍未成功,不确定是不是应用层设置系统代理的姿势不对,知道的小伙伴欢迎指点一二。

有捷径

自写代码行不通,便寻思有没有更简单的方案,一阵胡思乱想后,突然想起曾经玩游戏用过的代理软件Proxifier,当初不就通过这玩意实现进程IP访问吗,一阵操作后,发现该软件确实能够拦截目标进程的所有网络请求: 

暗自窃喜下,毕竟前进了一步嘛,回望初心,咋是想通过自己的代码动态切换目标进程网络请求IP,怀着敬畏之心寻找这"大名鼎鼎"的代理软件的API接口,如果说有接口能够供我们的程序调用,那不就"借尸还魂"了嘛。

再出发

真不能报太大希望,一阵骚操作后,并这调皮的软件没有发现任何可以调用的接口,失望过后不能前功尽弃,既然他不给接口,那就给他增加个"接口",胡乱研究一番后,发现有两种方式可以实现:
1、通过界面修改代理IP
 


2、通过导入配置文件
 


由于配置文件里面记录了代理IP及代理规则等信息,咋只用在自己的代码中修改配置文件,并主动让Proxifier加载一次该配置,不就OK了嘛。

上菜

附加Proxifier,并在ReadFile上下断,文件=》导入配置文件:
 


多次堆栈回溯后,来到打开文件选择框,并导入配置的关键代码处:
 


提取出导入配置文件部分ASM:

1

2

3

4

5

6

7

8

9

00337224 | E8 09A6F6FF              | call <proxifier.sub_2A1832>                             | [0x4A7360]

00337229 | FF75 F0                  | push dword ptr ss:[ebp-10]                              | 配置文件路径

0033722C 8B78 04                  | mov edi,dword ptr ds:[eax+4]                            |

0033722F 8B07                     | mov eax,dword ptr ds:[edi]                              |

00337231 8BB0 A4000000            | mov esi,dword ptr ds:[eax+A4]                           |

00337237 8BCE                     | mov ecx,esi                                             |

00337239 | FF15 204D4600            | call dword ptr ds:[464D20]                              |

0033723F 8BCF                     | mov ecx,edi                                             | esi==[[[0x4A7360]+4]]+a4

00337241 | FFD6                     | call esi                                                | 载入配置文件

测试调用过程中,发现需要在主线程中调用才能生效,轮番折腾后,将ASM代码封装在Dll中,并将Dll注入到Proxifier进程中调用成功。

收工

等等,不忘初心,我们要通过自己的代码动态切换目标进程网络请求IP,好像还差了点啥,捋一捋整个流程吧:
1、利用代理软件Proxifier设置指定进程走sockets5代理,ok
2、在自己的工程中通过编写代码动态将代理IP写入Proxifier配置文件,ok
3、由于Proxifier没有提供接口加载配置文件,所以通过编写dll代码并注入到Proxifier中主动调用加载配置文件的call,ok
4、自己的工程和Proxifier通过共享内存传递需要动态设置的代理IP,哦就是你了。
哦,还差点什么吗,没有,如图:

http://www.15wanjia.com/news/52080.html

相关文章:

  • 机械做网站网店代运营和推广销售
  • 做程序的网站最好的seo外包
  • unity可以做网站吗百度关键词统计
  • 软件开发培训it培训哪个好太原seo网站优化
  • 龙岩营销型网站建设宁波技术好的企业网站制作
  • 做网推的网站站长工具seo优化系统
  • 可以做淘宝店铺开关灯网站中国关键词官网
  • 怎么重启网站服务器品牌推广策略有哪些
  • 网站建立需要哪些材料网络推广营销方案免费
  • dede网站本地访问速度慢合肥网站推广公司排名
  • 室内设计培训内容北京seo技术
  • 危险网站怎么做腾讯云认证百度热搜高考大数据
  • 响应式网站 框架创意营销
  • 有关做聚合物电池公司的网站他达拉非片正确服用方法
  • 介绍几个有趣的网站搜索引擎优化策略不包括
  • 深圳网站设计太原百度快速排名提升
  • 绿色主题网站百度浏览器官网入口
  • 看一个网站的浏览量淄博网站营销与推广
  • 庆阳定制网站深圳电子网络推广查询
  • 网站建设找a金手指情感营销案例
  • 从58做网站怎么做百家号seo
  • 网站技术开发设计网页广告调词平台
  • 哪些网站会盗取站长工具麻豆
  • 县城做网站的多么推广普通话作文
  • 可以做软件的网站有哪些功能郑州见效果付费优化公司
  • 国家商标注册官网入口上海网络优化seo
  • 中企动力工作怎么样整站外包优化公司
  • wordpress hacker主题郑州百度网站快速优化
  • 衣服网站设计产品的网络推广要点
  • 哪些网站可以做设计软件电子商务推广