最近我的一台机器感染了恶意软件,使用IRC与其命令和控制中心进行通信。
这引起了我内心的兴趣,看看我是否可以在C#中创建一个能够监控TCP流量的程序,其中包含PONG / NICK / USER等字符串(irc rfc需要通信的字符串),以及然后可以告诉我流量来自的过程。
对我来说这将是一次有趣的学习经历,这是我想要尝试的事情。
我做了一些研究,我发现了一些确实使用WinPcap的东西,但我想如果可能的话我想避免使用pcap的解决方案,任何人都可以按照我的方式发送任何建议吗?
我知道我可以使用 System.Net.NetworkInformation.TcpConnectionInformation 以及可能 IPGlobalProperties 查看我的计算机与其他主机之间的连接但我不确定是否无论如何,我可以实时查看信息,或者轻松地将其追溯到我的PC上的进程。
谢谢。
答案 0 :(得分:2)
这很难。您需要的API是原生的,Windows Filtering Platform (WFP)。根据Microsoft的说法,无法从C#访问,您必须首先将其包装在C ++ / CLI中。