【问题标题】:Identify fake UDP Packet识别假UDP数据包
【发布时间】:2011-11-11 22:44:05
【问题描述】:

我想识别其源 IP 地址被伪造的 UDP 或 TCP 数据包。我的猜测是,即使数据包是用具有 hping 的程序伪造的,所有伪造数据包的 MAC src 地址仍然相同,这是正确的吗?

如果我的想法不正确,我该如何识别这些被伪造的数据包,并且看起来每个数据包都有不同的来源?

谢谢。

【问题讨论】:

    标签: networking tcp udp spoofing


    【解决方案1】:

    MAC 地址也可以伪造。

    使用 TCP,很容易识别/处理这个问题。您将使用 SYN-ACK 回复虚假的 SYN 数据包。如果它是一个真正的客户端,它会回复一个 ACK​​ 来完成握手。唯一需要注意的是,您必须实现 syn-cookie,这样您就不会在等待 ACK 时创建状态并耗尽资源。

    对于 UDP,没有办法知道,因为协议是无连接的。如果您向虚假数据包发送回复,则不能保证“真实”客户端的回复。所以没有办法辨别真假。

    【讨论】:

      【解决方案2】:

      在我看来,UDP 和 TCP 与此无关。您只谈论第 2 层 (MAC) 和第 3 层 (IP)。即使那样,您也无法知道,因为源 MAC 地址应该是离接收者最近的路由器的地址(假设数据包不是来自您的子网。)所以​​您应该看到大多数情况下相同的 MAC 地址入站数据包(同样,仅限互联网流量)。

      现在有像 p0f 这样的分析工具可以处理数据包的签名,您可以尝试根据该信息进行一些启发式分析,但无法确定非常具体的内容。

      【讨论】:

      • 是的,它肯定是 IP 层,但您能告诉我这些工具如何分析数据以识别吗?也许检查数据包数量并查看有多少源以及与数据包相比源地址数量之间的检查比率?
      【解决方案3】:

      您可以从数据包中获取最近节点的 MAC 地址。是的,您可以将 ACK 数据包发送到虚假源地址(IP),然后使用 Traceroute 命令知道源数据包的路径,这样您至少可以找到原始数据包的位置。它在 TCP 中运行良好,您也可以得到确认。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-11-27
        • 2015-06-30
        • 2017-12-31
        • 2011-02-17
        • 2011-11-25
        • 2016-08-07
        • 2017-08-18
        • 2016-02-09
        相关资源
        最近更新 更多