gpt4 book ai didi

c - 如何在主机将它们发送到网络之前修改数据包 header (IP header ,TCP header )

转载 作者:太空宇宙 更新时间:2023-11-03 23:52:42 29 4
gpt4 key购买 nike

我想在主机将它们发送到网络之前修改数据包头(IP 头、TCP 头)。

例如,如果我使用 firefox 进行浏览,那么我想拦截所有来自 firefox 的数据包并修改 IP/TCP header ,然后将它们发送到网络中。

基本上,有两个要求:1 拦截来自 firefox 的所有数据包(但不是其他程序)。如果这不可能,是否可以拦截来自特定端口或 ip/端口对的数据包

2 修改IP/TCP头,然后注入(inject)网络

有什么方法、API 可以实现这一点?libpcap 怎么样?是否有类似的源代码片段?我正在使用 linux c

谢谢!

最佳答案

要修改数据包,最好将修改后的数据包注入(inject)到您的网络中。C 有一个库 libnet,它可以做所有与数据包注入(inject)相关的事情。Python 有 scapy 来注入(inject)数据包。

现在您可以使用 libent 和 scapy 做一些非常有趣的事情,而不是修改您的数据包 ip/tcp header ,执行 arp 欺骗然后注入(inject)伪造数据包并将它们重定向到受害者。

libpcap 用于抓包,不用于修改包。因此,您可以使用 libpcap 构建自己的嗅探器,但要注入(inject)/修改您需要使用 libnet 的数据包。

为了让生活更简单,有像 burp suite 等工具。你可以在转发之前修改 http header 。

关于c - 如何在主机将它们发送到网络之前修改数据包 header (IP header ,TCP header ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15428694/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com