是否有一个WMI查询来监控网络连接;不是网络适配器连接/断开,也不是wifi网络连接/断开,而是类似于netstat ~ 5-tuple:(source IP address, source IP port, destination IP address, destination IP port, process ID)的输出,通过指定一些事件回调,而不是重复(定期轮询然后执行diff),或者嗅探网络数据包?我好像找不到一个。
发布于 2018-02-14 11:37:02
我不确定是否有任何API可以为您提供回调,而且任何解决方案都将基于轮询。
然而,
您可以编写一个Dll injection实用程序作为Windows Service,它挂钩一些目标WinSock2函数,如Connect等,并存储您需要的信息,然后可以通过某种类型的IPC访问这些信息。
Windows Sockets 2 (Windows) - MSDN - Microsoft
Interprocess Communications (Windows) - MSDN - Microsoft
有几个顾虑是
一旦你的钩子架构完成,你就可以公开某种IPC,这样你的用户模式监视器就可以提取它需要的信息……
我在以前的工作中遇到过类似的问题,当时我们必须为32和64个应用程序挂接打印功能,以监控打印作业和指标。简而言之,如果您不介意使用一点C++,这是完全可能的,实际上也不是很难做到
大部分工作都可以在Libs的帮助下完成,比如Mathias Rauen开发的madCodeHook。他已经开发了驱动程序和一个很棒的API,用于跟踪进程和DLL注入的各种技巧。
不管怎样,祝你好运
https://stackoverflow.com/questions/48778889
复制相似问题