gpt4 book ai didi

python - 使用Scapy作为IPS来拦截、选择和转发数据包

转载 作者:太空宇宙 更新时间:2023-11-03 18:03:32 27 4
gpt4 key购买 nike

我需要根据特定需求拦截网络流量(IPS 模式)并丢弃选定的数据包。
我有两个处于混杂模式的以太网网卡 eth0eth1,我需要从 eth0 检索数据包,根据特定情况丢弃一些数据包规则,并将选定的数据包转发至 ethic
我知道 IPS 系统(例如 Snort)允许拦截和过滤数据包,但我更愿意使用 Python 程序(如果可能的话)使用 Scapy 库来执行此操作。
如何使用 Scapy 在混杂模式下使用两个 NIC 拦截和转发网络流量?

最佳答案

您无法“拦截”来自 Scapy 的数据包。

当 Snort 这样做时,它就不再是一个 IDS(嗅探网络),而是成为一个 IPS(基本上,一个防火墙,通过查看应用程序层和网络层来做出决策)。

要做你想做的事,你需要 Netfilter、Iptables 的 NFQUEUE 目标和 Python bindings for nfqueue (基于 Debian 的发行版下的 python-nfqueue 软件包)。

Scapy 可能只会帮助您剖析数据包(“理解”它们并选择性地篡改它们)。

无论如何,这可能会非常慢,所以除非您正在开发 PoC,否则您可能需要使用 Snort 或 Suricata。

关于python - 使用Scapy作为IPS来拦截、选择和转发数据包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27301492/

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