@_L1nux 在 windows平台抓包,并获取进程、线程信息 中发帖
需求场景
系统上有恶意程序外联,例如频繁发起DNS请求。需要定位发起这个DNS请求的进程和线程。
之所以想要获取线程信息,是因为有时获取到的是系统进程system(PID=4),但是实际上是其中的某个线程发起的DNS请求。
考虑到的解决方案
现有的工具是有办法定位的,但是要么需要多个工具配合比较麻烦,要么工具比较复杂,太重了。因此想写一个小程序实现定位DNS请求进程、线程信息。
但是本人对windows开发不太熟悉,参考网上资料和询问大模型的获取的信息,找到了以下几个方案:
1. ETW监控
使用ETW 追踪 MS-Windows-DNS-Client 相关的事件
优点:
可以获取到进程信息
开发难度低
缺点:
不依赖操作系统解析的应用程序不受 ETW 追踪 MS-Windows-DNS-Client 影响
可能会出现 PID=4 (System 伪进程) 的 DNS 解析
...