我正在运行一些需要使用非标准TCP套接字的安全测试,以生成正常TCP堆栈不会遵循的行为。我使用原始套接字来产生这样的流量。当使用原始套接字进行TCP通信时,请保持内核不接收传入数据包
当收到来自另一端的回复时,内核不知道TCP连接并发出RESET。为了防止这种情况的发生,通常的解决方案是定义一个iptables规则,它删除所有的输出RESET(例如iptables -A OUTPUT -p tcp -dport 50000 -tcp-flags RST RST -j DROP)。
但是,在我的特殊情况下,RESET也是测试过程中生成的有效段。我需要的是一种过滤掉连接中的所有段的方法,这样内核TCP堆栈就不会涉及,并且可以访问原始套接字中的所有段。 任何想法我怎么能做到这一点?这可能与iptables?
在此先感谢 路易斯
使用浴缸设备的问题是,交通将在箱子内部,我需要从外部测试仪箱测试到被测系统。出于这个原因,我需要一种方法来从测试器盒中生成这些TCP段,包括一个RESET。 –