lysS
V2EX  ›  问与答

如何发送伪造源 IP 的数据包?

  •  
  •   lysS · Apr 19, 2021 · 2352 views
    This topic created in 2026 days ago, the information mentioned may be changed or developed.
    我需要在 VPS 上发送伪造源 IP 的数据包。

    功能已经实现了,把封装好的 IP 包注入到数据链路层,使用的是 pcap 。

    在本地能成功请求到服务器,不过源 IP 被 NAT 网关篡改了,wireshark 抓包是正常的;在一个拥有公网 IP 的 VPS 请求服务器,此数据包不能到达。

    按理说伪造源 IP 的数据包是可行的,VPS 上数据拦截可能是由于安全的原因?
    gesse
    gesse
    Apr 19, 2021
    1
    你在同一个局域网里, 是二层通讯,就是 mac 地址通讯。 你到公网上,伪造了源 IP 地址的包发送到服务器上, 服务器返回的包会被路由到伪造的源 IP,要么被真正拥有这个 IP 的服务器丢弃,要么地址不可达。
    lysS
    lysS
    OP
    Apr 19, 2021
    2
    @gesse 我不要服务器的回复,就直接是看的服务器请求记录
    mingl0280
    mingl0280
    Apr 19, 2021
    3
    稍微有一点网络常识就知道:如果你要伪造源 IP 产生数据包,你的数据包必然不能在 NAT 后面。如果你的数据包要经过互联网,那么互联网上的各种防火墙、交换设备发现来源 IP 地址不是我这个段的搞不好根本不给你转发直接丢包……
    所以要玩这个你得要找个没防火墙的,直接接入公网而且上层不检查地址来源的接入点,例如专线什么的,要么你用 UDP 这种无连接的。
    willis
    willis
    Apr 19, 2021
    4
    上层路由和运营商的路由都会验证源 IP 真实性的,伪造的 IP 包一很会丢弃的
    lysS
    lysS
    OP
    Apr 19, 2021
    5
    @mingl0280
    @willis
    确实有 ISP 拦截的原因,叫做出口过滤 Egress Filtering
    我现在尝试购买一些国外的 VPS,看看能不能碰着个能用的

    https://stackoverflow.com/questions/2493384/how-to-fake-source-ip-address-of-a-udp-packet
    https://security.stackexchange.com/questions/100903/is-ip-spoofing-still-a-threat-in-the-internet
    lysS
    lysS
    OP
    Apr 19, 2021
    6
    @mingl0280 还有就是它拦截是在网络层,UDP 同样也不行
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1475 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 17:49 · PVG 01:49 · LAX 09:49 · JFK 12:49
    ♥ Do have faith in what you're doing.