NetIDS

Python

Network Attack & Intrusion Detection System

using Raw Socket Handling (CN Project)

Description:

Network Attack & Intrusion Detection System (NETIDS) is built using Python socket programming. It simulates and detects common network attacks such as DDoS, Port Scanning, and IP Spoofing in real-time. The system consists of an IDS server that monitors network traffic and a client that receives alerts. Attack simulations are done using custom-built attackers, and detection is handled without any third-party libraries. It supports multiple clients and servers, uses separate channels for control and data, and ensures smooth, error-free communication.

Filetree:

netids/
├── README.md
├── requirements.txt
├── run_ids_client.sh
├── run_ids_server.sh
├── ids/
│   ├── server.py
│   ├── client.py
│   ├── parser.py
│   ├── logger.py
│   └── detector/
│       ├── ddos.py
│       ├── port_scan.py
│       ├── spoofing_detector.py
│       └── __init__.py
├── attacker/
   ├── ddos.py
   ├── port_scan.py
   ├── spoofed_packet_sender.py
   └── __init__.py

How to Run

# Start the server
chmod +x run_ids_server.sh
sudo ./run_ids_server.sh

# In another terminal, start a client
chmod +x run_ids_client.sh
sudo ./run_ids_client.sh