I need to intercept network traffic (IPS mode) and drop selected packets, accordingly to specific needs.
I've got two ethernet NIC eth0 and eth1 in promiscuous mode, and I need to retrieve packets from eth0, drop some packets accordingly to specific rules, and forward selected packets to ethic.
I know that IPS systems such as Snort allows to intercept and filter packets, but I'd prefer to do that using a Python program, using Scapy library, if possible.
How can I intercept and forward network traffic using two NIC in promiscuous mode with Scapy?
Use Scapy as IPS for intercepting, selecting and forwarding packets
1.5k Views Asked by auino At
1
There are 1 best solutions below
Related Questions in PYTHON
- new thread blocks main thread
- Extracting viewCount & SubscriberCount from YouTube API V3 for a given channel, where channelID does not equal userID
- Display images on Django Template Site
- Difference between list() and dict() with generators
- How can I serialize a numpy array while preserving matrix dimensions?
- Protractor did not run properly when using browser.wait, msg: "Wait timed out after XXXms"
- Why is my program adding int as string (4+7 = 47)?
- store numpy array in mysql
- how to omit the less frequent words from a dictionary in python?
- Update a text file with ( new words+ \n ) after the words is appended into a list
- python how to write list of lists to file
- Removing URL features from tokens in NLTK
- Optimizing for Social Leaderboards
- Python : Get size of string in bytes
- What is the code of the sorted function?
Related Questions in NETWORKING
- kernel module does not print packet info
- Packet drops in multicast when multiple instance of listner are running
- Timing packets on a traffic server
- How to use Espresso Idling Resource for network calls
- Dummynet does not match on flows
- Sending a notification from OS X to iOS
- Swift ios viewDidLoad or viewDidAppear
- Update player list on all clients on new connection
- Issues regarding multiplayer networking: input
- nmap does not show all open ports
- Getting and Sending Data between a Server and Client
- Read file from local PC from network deployed app to InputStream
- Does iOS block a URL if we couldn't connect to the URL for 'n' times?
- Is Socket.Available guaranteed to throw a SocketException on disconnect?
- android out of cell service
Related Questions in SCAPY
- Using scapy with wifi
- Python doesn't print with import scapy
- SCAPY PYTHON - Get 802.11 DS Status
- Python pyreadline cmd/PyCharm
- Python Scapy gnuplot issue
- Python Scapy vs dpkt
- Strange Payload when generating raw packet with Scappy
- Python Scapy - Loading HTTP from a file
- Scapy: Adding more fields to fields_desc
- Python - Scapy - Sniffing local network
- Why I'm not seeing wireless data requests
- Malformed DNS packet scapy
- Arp Scanner built on Scapy doesn't return all clients
- Tap interface is not receiving packets
- Scapy dns request behind router
Related Questions in PACKET-CAPTURE
- kernel module does not print packet info
- filter packet data based on the type of content they carry
- Why I'm not seeing wireless data requests
- Unrelated packets in TCP communication capturing results
- Winpcap code - Capture loses packets in loop
- What's the best way to capture packets sent and received by my own android app?
- Trying to understand packets captured with tcpdump
- C Program to receive and send the same packets out over another interface
- Python Scapy Intercept Packets before sending them on
- Modifying TCP packets on the fly
- How can I merge 'split/partial' packets with libpcap?
- Decoding ARP packets using jnetpcap library
- scapy - http header list over wlan
- Get TCP Flags with Scapy
- How to get the data from TcpPacket in a readable format using SharpPcap?
Related Questions in NETWORK-TRAFFIC
- Youtube usage calculation using TrafficStats
- Capture Live Video Statistics
- use of Scapy to generate network load on mininet
- Routing table and splitting traffic in Omnet++
- Android app produces a lot of network traffic
- tc command to enqueue TCP packets but randomly drop UDP packets
- Analyze Local Network Traffic, Update Quota with tshark and BASH
- EC2 instance types's exact network performance?
- Create a Linux packet splitter
- How-to setup a traffic control server
- Download file to null (Windows CLI)
- How to make receiving node to stop automatically after one connection in D-ITG Traffic Receiver
- Which Dynamic Management View exposes network traffic from/to one SPID?
- How do I monitor traffic between a Flash object and a server?
- Use Scapy as IPS for intercepting, selecting and forwarding packets
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
You cannot "intercept" packets from Scapy.
When Snort do that, it stops being an IDS (that sniffs the network) and becomes an IPS (basically, a firewall that looks at the application layer as well as the network layers to make its decisions).
To do what you want, you'll need Netfilter, the NFQUEUE target of Iptables and the Python bindings for nfqueue (python-nfqueue package under Debian based distributions).
Scapy may only help you to dissect the packets (to "understand" them and optionally tamper them).
Anyway, this is probably going to be very slow, so unless you are working on a PoC, you probably want to use Snort or Suricata.