2014-12-04 125 views
1

我需要攔截網絡流量(IPS模式)並丟棄選定的數據包,以滿足特定需求。
我有兩個以太網網卡eth0eth1在混雜模式,我需要從eth0檢索數據包,相應地丟棄一些數據包到特定的規則,並將選定的數據包轉發到ethic
我知道像Snort這樣的IPS系統可以攔截和過濾數據包,但如果可能的話,我更願意使用Python程序來使用Scapy庫。
如何使用Scapy在混雜模式下使用兩個NIC攔截和轉發網絡流量?使用Scapy作爲IPS攔截,選擇和轉發數據包

回答

1

您不能「截取」Scapy的數據包。

當Snort做到這一點時,它不再是一個IDS(嗅探網絡)併成爲一個IPS(基本上是一個防火牆,它可以查看應用層以及網絡層來做出決定)。

要做你想做的事,你需要Netfilter,NFQUEUE的Iptables目標和Python bindings for nfqueue(基於Debian的發行版的python-nfqueue包)。

Scapy可能只會幫助你剖析數據包(「理解」它們並可選擇篡改它們)。

無論如何,這很可能是非常慢因此,除非您正在使用PoC,否則您可能需要使用Snort或Suricata。