0

各位网络冒险家大家好,

我正在实施网络攻击,ARP 欺骗网关和受害者,过滤 HTTP 数据并在我的浏览器中重新组合网页。也称为网络间谍。

但是,我在使用 libpcap 时遇到了一些问题。当我收到包含 HTTP 数据的 TCP 段的数据包时,其中一些比 MTU 大!像 1922、2878 甚至 4909 字节。

起初,我认为这些是内核给出的重组 HTTP 数据包。但是,根据这篇文章,libpcap 不会重新组装数据包,因此它不会为我带来一个完整的、格式良好的数据包,其中包含来自给定请求的所有 HTTP 响应。

为了测试,我打印了所有这些大于 MTU 的数据包。所有这些都包含普通数据(CSS、JS、HTML、图像……)。

那么到底是怎么回事?这些大人物是什么?我为此苦苦挣扎了几天。

奖励问题:我真的需要自己重新组装所有这些 HTTP 数据吗?

4

1 回答 1

0

但是,我在使用 libpcap 时遇到了一些问题。当我收到包含 HTTP 数据的 TCP 段的数据包时,其中一些比 MTU 大!像 1922、2878 甚至 4909 字节。

您的网络适配器可能充当TCP 卸载引擎,重新组装多个传入的 TCP 段并将一个重新组装的段交给主机。至少在 Linux 上,网络堆栈可能正在执行Large Receive Offload,如果在将数据包交给“tap”(Linux 上 libpcap 使用的 PF_PACKET 套接字)之前完成,您将获得重新组装的段。

对于您的程序,这应该不是问题,因为...

我真的需要自己重新组装所有这些 HTTP 数据吗?

...您将需要重新组装 HTTP 请求的所有组件或自己回复。

于 2015-08-08T23:14:49.620 回答