有人知道一个数据包生成器吗?

时间:2020-03-06 14:49:32  来源:igfitidea点击:

我们有一个联网的设备,我们想对它如何处理格式错误的数据包进行一些测试。

有没有可以生成任意数据包和数据包序列的产品?
我希望能够指定一组TCP / IP负载,它将打开一个连接并发送数据。显然,应该正确计算TCP / IP校验和,等等。

有点像反向的wireshark。

请注意,我对网络加载和爆炸数百万个数据包不感兴趣。

解决方案

Scapy应该能够做你想做的

这是我所听说的。无法评论他们有多好。

  • 净花
  • 帕根
  • 扭曲

我们也可以始终自己编写。 PCAP文件格式已记录在案,并不十分复杂。

tcpreplay可以修改和重放pcaps。它不会凭空生成完整的协议交换,但是给定协议的pcap文件,它可以调整,修改和复制该交换以测试产品中的特殊情况。

nmap应该能够生成一些更普通的垃圾数据包。除此之外,我们还可以使用LibNet滚动自己的垃圾数据包。

我也喜欢Denton&Andrew关于重放PCAP格式数据包的建议。

我建议从Ixia这样的地方买一个硬件盒。他们的" Smartbits"框可能就是我们想要进行这种测试的地方。此类硬件工具可以进行负载测试,但也具有许多功能,可以进行功能测试和协议边界情况测试等。

我发现Colaso​​ft的Packet Player适用于简单的任务。

http://www.colaso​​ft.com/packet_player/

仅供参考:在安全和测试领域,这种类型的工具通常称为"模糊器"。

Taof是一种可能有趣的开源软件。

这是一个致力于模糊测试的整​​个网站,其中提供了模糊测试工具的列表。在该页面上查看QueFuzz和ProtoFuzz。

我知道这是一个老话题,但是为了人们从搜索引擎来这里...

我刚刚发布了一个开源,跨平台的数据包生成器/分析器Ostinato

http://ostinato.googlecode.com/

由于Wireshark是建立在WinPcap / Libpcap之上的GUI。

对于C使用WinPcap / libpcap
对于Cuse SharpPcap
对于Java,请使用JPcap

如果我们使用其他语言,请找到该语言的正确包装。

我不了解其他库,但是我知道使用SharpPcap生成数据包相对容易。 TCP的主要困难是破坏有效负载并正确处理段。由于我们将手动执行此操作,因此我们需要对TCP协议的工作原理有更深入的了解。