Мне нужно перехватывать сетевой трафик (режим IPS) и отбрасывать выбранные пакеты в соответствии с конкретными потребностями.
У меня есть два сетевых адаптера Ethernet eth0
и eth1
в неразборчивом режиме, и мне нужно получить пакеты от eth0
, отбросить некоторые пакеты в соответствии с определенными правилами и пересылать выбранные пакеты на ethic
.
Я знаю, что системы IPS, такие как Snort, позволяют перехватывать и фильтровать пакеты, но я бы предпочел делать это с помощью программы Python, используя библиотеку Scapy, если это возможно .
Как я могу перехватывать и пересылать сетевой трафик, используя два сетевых адаптера в неразборчивом режиме с помощью Scapy?
Используйте Scapy в качестве IPS для перехвата, выбора и пересылки пакетов
Ответы (1)
Вы не можете «перехватывать» пакеты от Scapy.
Когда Snort делает это, он перестает быть IDS (который обнюхивает сеть) и становится IPS (по сути, брандмауэром, который смотрит на прикладной уровень, а также на сетевые уровни, чтобы принять решение).
Чтобы делать то, что вы хотите, вам понадобится Netfilter, цель NFQUEUE для Iptables и Привязки Python для nfqueue (пакет python-nfqueue в дистрибутивах на базе Debian).
Scapy может только помочь вам проанализировать пакеты (чтобы «понять» их и, возможно, подделать их).
В любом случае, это, вероятно, будет очень медленным, поэтому, если вы не работаете над PoC, вы, вероятно, захотите использовать Snort или Suricata.
person
Pierre
schedule
05.12.2014