嗅探选定端口上的数据- c#

本文关键字:数据 嗅探 | 更新日期: 2023-09-27 18:16:39

我有一个在特定端口上运行的应用程序。我没有访问这个应用程序,但我知道它是做什么的。现在这个应用程序正在监听一个特定的端口,并处理来自该端口的数据

现在我被分配了记录该端口上接收到的所有数据包和所有数据细节的任务。我已经使用了wireshark,可以应用过滤器来检查该特定端口上的数据。所以我假设在这里,我已经被困在创建这种剪切程序,所以我可以得到所有的数据包细节。我搜索了堆栈溢出并找到了

  1. 代码项目
  2. 堆栈溢出

现在我已经评估了样本,可以看到它给了我数据包,但它侦听系统的所有端口。不是在特定的端口上。有人能帮助我实现我的解决方案吗?基本上,如果我将监听所有端口,那么有很多应用程序/程序在服务器上运行,所以它可能会遇到瓶颈。谢谢大家。

嗅探选定端口上的数据- c#

在MJsniffer。MJsnifferForm类你有ParseData方法-在第一步,它将接收到的字节转换为IPHeader对象,然后在协议类型字段上有一个巨大的SWITCH-CASE。在SWITCH中有TCPHeader或UDPHeader被创建并添加到TreeView中,在那里你可以通过SourcePort/DestinationPort字段TCPHeader/UDPHeader过滤包。

如果你已经熟悉WireShark,那么你可以很容易地切换到Pcap。. NET包装器(它们使用相同的包捕获库- WinPcap)