NetCutter is a GUI application built using GTK4 and Adwaita libraries in Python. It provides network scanning and ARP spoofing for network analysis and security testing.
-
Network Scanning:
- Performs comprehensive network scans (both ARP and ping scans) to detect all devices on the local network.
- Displays detected devices with IP addresses, MAC addresses, and hostnames (when available).
- Quick refresh option for updating the device list.
-
ARP Spoofing:
- Enables selective ARP spoofing on user-chosen devices.
- Redirects target devices' traffic through the user's machine.
- Includes a fail-safe to restore normal network state.
-
Customization:
- Adjustable thread count for optimized network scanning performance.
- "Select All" switch for bulk enabling/disabling of spoofing targets.
-
Logging and Status Reporting:
- Comprehensive logging for debugging and monitoring.
- Real-time status updates in the GUI.
- Python 3.6 or higher
- Root/Administrator privileges (required for ARP spoofing)
-
Clone the repository:
git clone https://github.com/youcefzaid/netcutter.git cd netcutter
-
Install the required dependencies:
pip install -r requirements.txt
-
Launch NetCutter:
sudo python3 main.py
Note: Root privileges are necessary for ARP spoofing functionality.
-
The application will initiate a full network scan and display detected devices.
-
Use the "Select All" switch or individual toggles to choose spoofing targets.
-
Click "Start Spoofing" to begin the ARP spoofing process.
-
Click "Stop Spoofing" to cease the attack and restore normal network operation.
-
Use the refresh button for a quick network rescan.
-
Adjust thread count in the settings menu to optimize scanning performance.
NetCutter relies on the following Python libraries:
gi
(GTK4 and Adwaita integration)scapy
(Network scanning and ARP spoofing)netifaces
(Network interface detection)ipaddress
(IP address manipulation)
For a complete list of dependencies, refer to the requirements.txt
file.
NetCutter is designed for educational and ethical testing purposes only. Ensure you have explicit permission before using this tool on any network or devices you do not own or have the right to test. Unauthorized use of this tool may be illegal and is strictly prohibited.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the GPL-3.0 License.
If you encounter any issues or have questions, please file an issue on the GitHub issue tracker.