wfp网络代理开发

oiooooio 2020-06-09 03:31:40
因为需要,需要开发一个对windows进程产生的网络连接进行代理,无法修改windows程序.

最终的目的是单窗口单ip!

看了很多的教程,发现wfp好像就是专门干这个事情的. (不是wpf!!!)

最后了解下来发现wfp是驱动开发. 分用户模式和内核模式. 内核模式是以.sys为后缀的文件. 用户模式是以.dll为后缀的文件. 要启动驱动还挺麻烦.

我也在网络上找到了一些单窗口单ip的工具, 我在这些工具安装后,并没有发现以.sys为后缀的文件. 双击exe也就能启动并且能工作.,能针对指定程序的进程进行网络代理.

我的问题是:
我看了很多的教程还不好理解:
1. 单窗口单ip可以用用户模式驱动开发吗
2. 有没有更简单的方法?
3. 教程看了不少,始终无法让vs自动部署调试驱动代码,vs2015+vm(win10)
4. 无从下手,不知道该怎么开始


WFP 标注驱动程序开发路线图
参考链接:
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/network/roadmap-for-developing-wfp-callout-drivers
...全文
475 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
QQ1289671197 2021-07-23
  • 打赏
  • 举报
回复

目前来前,驱动代理还是很不错的,比hook和lsp的要好,驱动里拦截网络数据我,交给应用层。应用层通过pid来区分进程,用socks5代理协议转发出去,这样就可以实现每个进程不同IP.

smwhotjay 2020-06-09
  • 打赏
  • 举报
回复

网络过滤有几种。应用级的spi ,驱动级wfp.
还可以针对目标程序hook 网络通信函数来实现转发过滤的。
简单方法?我觉得搞网络编程没有简单的啊。都很蛋疼

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧