【问题标题】:WinDivert - Modify packet data/payload contentsWinDivert - 修改数据包数据/有效负载内容
【发布时间】:2017-11-30 01:51:38
【问题描述】:

我已经看到了 WinDivert 的示例和示例代码用于修改数据包的属性,例如它们的目标地址。

但我已经非常努力地搜索,在重新注入之前找不到任何修改数据包的实际有效负载的文档或示例。

这是我目前的代码:

HANDLE handle;          // WinDivert handle
    WINDIVERT_ADDRESS addr; // Packet address
    char packet[MAXBUF];    // Packet buffer
    UINT packetLen;

    handle = WinDivertOpen("...", 0, 0, 0);   // Open some filter
    if (handle == INVALID_HANDLE_VALUE)
    {
        // Handle error
        exit(1);
    }

    // Main capture-modify-inject loop:
    while (TRUE)
    {
        if (!WinDivertRecv(handle, packet, sizeof(packet), &addr, &packetLen))
        {
            // Handle recv error
            continue;
        }

        // Modify packet.

        if (!WinDivertSend(handle, packet, packetLen, &addr, NULL))
        {
            // Handle send error
            continue;
        }
    }

在 //修改数据包。步骤我需要执行有效负载修改。具体来说,我希望用新字符串替换或完全覆盖数据。

在 WinDivert 文档中,我唯一能找到的处理数据包数据的方法是解析数据包的方法:

BOOL WinDivertHelperParsePacket(
    __in PVOID pPacket,
    __in UINT packetLen,
    __out_opt PWINDIVERT_IPHDR *ppIpHdr,
    __out_opt PWINDIVERT_IPV6HDR *ppIpv6Hdr,
    __out_opt PWINDIVERT_ICMPHDR *ppIcmpHdr,
    __out_opt PWINDIVERT_ICMPV6HDR *ppIcmpv6Hdr,
    __out_opt PWINDIVERT_TCPHDR *ppTcpHdr,
    __out_opt PWINDIVERT_UDPHDR *ppUdpHdr,
    __out_opt PVOID *ppData,
    __out_opt UINT *pDataLen
);

ppData:指向数据包数据/有效负载的输出指针。

但是我不确定这是否可以让我修改数据(也许可以?),因为它似乎只会让我检索数据包数据以进行输出。

那么我将如何编辑有效负载?

【问题讨论】:

    标签: c++ c payload man-in-the-middle packet-injection


    【解决方案1】:

    https://github.com/basil00/Divert/issues/16 视频和源用户windivert。

    【讨论】:

      【解决方案2】:

      如果将来有人正在寻找一种非常简单的方法来做到这一点,那么我使用了一个名为“pydivert”的 WinDivert 的 Python 包装器。很简单。

      链接:https://github.com/ffalcinelli/pydivert

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-08-27
        • 1970-01-01
        • 1970-01-01
        • 2016-05-24
        • 2011-09-30
        • 1970-01-01
        • 1970-01-01
        • 2011-05-17
        相关资源
        最近更新 更多