网络或传输层模糊测试

San*_*nta 7 networking transport fuzzing fuzzer

如何执行模糊测试策略来强调网络堆栈,特别是在第三层和第四层(网络和传输)?我已经看过生成模糊器的框架,比如SPIKE,但在我看来,它们主要集中在应用程序层及以上?是否有任何众所周知的技术来模糊这些层中的众所周知的协议,比如TCP?

谢谢.

use*_*835 8

看看Scapy.它允许您在网络和传输层模糊.该fuzz函数将模糊您在IP或TCP层中未明确指定的任何内容(您可以单独将其应用于每个层).这为您提供了一系列的能力,从随机生成IP地址和端口对到制作和发送无意义的数据包.

您可能还想看看Fragroute.这将扭转TCP/IP使用各种规避技术,但可能会揭示网络堆栈中隐藏的错误/漏洞.

此外,如果您的组织不反对,您可以设置Tor出口节点并从中捕获流量.我发现它对测试正确的TCP连接状态跟踪很有用.虽然您的连接结束是众所周知且不变的,但是存在各种各样的服务器以及有趣的网络拥塞问题.它基本上是无穷无尽的流量来源.请务必与您的高层进行核实,因为您的组织可能会反对成为恶意流量的潜在来源(尽管有一个强烈的非责任先例).我通过在家里运行/捕获,然后引入pcaps来解决这个问题.