This project is a packet sniffer tool designed to capture and analyze network packets on a selected network interface. It uses the scapy
library to sniff packets and display them in a user-friendly format. The tool provides basic functionalities such as starting, pausing, and resuming packet sniffing.
Note: This project is currently under development. Some features may be subject to changes or improvements in future versions.
[] ,----.___
__||_/___ '.
/ O|| /| )
/ "" / / =._/
/________/ /
|________|/ dew
- Capture packets on a selected network interface.
- Filter packets based on protocol (e.g., TCP, UDP, IP).
- Pause and resume sniffing as needed.
- Display packet summaries and details.
- Start and stop sniffing with a clean user interface built using
Tkinter
.
- Python 3.x
scapy
librarypsutil
librarytkinter
library (included with Python standard library)
-
Clone the repository:
git clone https://github.com/Maha1503/PacketSniffer.git
-
Navigate to the project directory:
cd PacketSniffer
-
Install the required dependencies:
pip install -r requirements.txt
-
Run the application:
python main.py
-
Select a network interface from the dropdown list.
-
Enter a packet filter (e.g.,
tcp
,udp
,ip
). -
Click Start Sniffing to begin capturing packets.
-
Use the Pause button to pause sniffing and the Resume button to continue.
-
Click Stop Sniffing to stop the packet sniffing process.
Upon starting the sniffing process, the application will display captured packet details:
Starting sniffing...
Sniffing on interface Wi-Fi with filter: tcp
Packet captured: <Packet Summary>
<Packet Details>
----------------------------------------
- Fork the repository.
- Create a new branch (
git checkout -b feature-name
). - Make your changes and commit them (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature-name
). - Create a new Pull Request.