0

我正在尝试从服务器内部获取与本地 http 服务器建立本地连接的进程的 PID。例如:Chrome-> HTTPREQ -> httpServer:8080。所以从 httpServer 我可以知道哪个进程正在建立连接,在这种情况下是 Chrome。

我可以使用带有 TCP_TABLE_OWNER_MODULE_ALL 的 GetExtendedTcpTable 查询所有 tcp 连接,然后检查每一行并使用 row->dwOwningPid

8080 == ntohs(row->dwRemotePort) &&
row->dwLocalAddr == inet_addr("127.0.0.1") && 
row->dwRemoteAddr == inet_addr("127.0.0.1")

问题似乎是因为我安装了一个正在拦截我的流量的 AV,我得到的是 AV 的 PID,而不是启动连接的原始应用程序。

chrome -> av wfp -> httpserver

在不向 AV 添加排除项的情况下,有没有办法可以检索启动请求的原始进程的 PID,而不是像 AV 网络过滤器这样的转发器?

提前致谢。

4

1 回答 1

0

回答我自己的问题:

Chrome -> AV -> WFP

如果 AV (Xport) -> (Yport)WFP

通常:

铬(Xport -1)-> WFP。

这对我有用。

于 2017-03-09T08:58:24.873 回答