An open API service indexing awesome lists of open source software.

https://github.com/rajm012/netsentinel

Real-time Network Traffic Monitoring and Threat Detection Platform Built using React, FastAPI, Scapy, and modern data visualization tools.
https://github.com/rajm012/netsentinel

fastapi javascript python

Last synced: about 2 months ago
JSON representation

Real-time Network Traffic Monitoring and Threat Detection Platform Built using React, FastAPI, Scapy, and modern data visualization tools.

Awesome Lists containing this project

README

          

# ๐Ÿ›ก๏ธ NetSentinel

> Real-time Network Traffic Monitoring and Threat Detection Platform Built using **React**, **FastAPI**, **Scapy**, and **modern data visualization tools**.

---

## ๐ŸŒ Overview

NetSentinel is a full-stack cybersecurity dashboard for real-time and historical network analysis. From live packet capture to behavioral threat intelligence and PCAP testbeds, NetSentinel aims to offer a modular, interactive, and extendable NIDS-like system with a beautiful UI and intuitive controls.

---

## ๐Ÿš€ Features at a Glance

- ๐ŸŒ **Real-time network traffic visualization**
- ๐Ÿ“ฆ **Upload and analyze PCAPs**
- ๐Ÿ” **Behavioral & fingerprint-based threat detection**
- ๐Ÿง  **AI/ML-enabled traffic analysis (WIP)**
- ๐Ÿ“Š **Dashboards with live charts, GeoMaps, and protocol breakdowns**
- ๐Ÿงช **Built-in packet testbed for simulation & replay**
- ๐Ÿ”ง **Fully configurable via UI panel**
- ๐ŸŒ™ **Dark/light theme support**

---

## ๐Ÿ—๏ธ Web Structure & Views

### ๐Ÿ  Home Page (Landing Page)

**URL:** `/`
The gateway to the platform, includes:

- Project name, logo, and description
- CTA buttons:
- โžก๏ธ Dashboard
- ๐Ÿ“œ View Docs
- ๐Ÿ” Admin/Login (optional)

---

### ๐Ÿ“Š Dashboard Layout

**URL:** `/dashboard`
Your main workspace.

#### ๐Ÿงญ Sidebar Navigation:

- ๐ŸŸข Real-Time View
- ๐Ÿ“ Historical Data
- ๐Ÿง  Threat Intel
- โš™๏ธ Configuration
- ๐Ÿงช Packet Testbed
- ๐Ÿ“ฆ Raw Logs / PCAP Upload
- ๐Ÿ“œ Docs
- ๐Ÿ‘ค Profile

#### ๐Ÿ” Top Bar Controls:

- Capture status (live/offline)
- Interface selector
- Notification bell
- Timestamp
- Dark/light theme toggle

---

### ๐Ÿ”ด Real-time View

**URL:** `/dashboard/realtime`
A live window into your network:

- Packet stream viewer (filterable)
- ๐Ÿšจ Alert Feed
- ๐ŸŒ GeoMap of IP origins
- ๐Ÿฅง Protocol distribution chart
- ๐Ÿ“ˆ Time-series flow chart
- ๐ŸŽ›๏ธ Capture control bar
- Toggle: Raw packets โ†”๏ธ Flow-based view

**Tech Used:**
- WebSocket + Redux
- FastAPI + Scapy/tshark backend

---

### ๐Ÿงพ Historical View

**URL:** `/dashboard/historical`
Inspect past logs, alerts, and flows.

- Load from PCAP or JSON logs
- Use `FilterBuilder.jsx` to query
- Export sessions or alerts
- Inspect historical packet sequences

---

### ๐Ÿ” Threat Intelligence

**URL:** `/dashboard/threatintel`
AI and rule-based threat breakdown:

- Behavior-based detection (e.g., scanning, burst patterns)
- Device and protocol fingerprinting (TLS/HTTP/etc.)
- Known threat tool detection (Metasploit, CobaltStrike)
- Severity filters: ๐Ÿ”ต Low | ๐ŸŸก Medium | ๐Ÿ”ด High
- Drill-down per alert โ†’ View associated packets

---

### ๐Ÿ› ๏ธ Configuration Panel

**URL:** `/dashboard/config`

Modify how your engine behaves:

- Detection thresholds & toggles
- Capture interface selection
- Logging format, location & frequency
- Alert channels (email/webhook)
- Time ranges (`TimeRangeSelector.jsx`)

---

### ๐Ÿงช Testbed / Packet Replay

**URL:** `/dashboard/testbed`
Simulate attacks and test detection logic:

- Upload PCAPs
- Replay through detector engine
- Compare triggered alerts vs ground truth

---

### ๐Ÿ“ฆ Packet Details View

**URL:** `/packet/:id` (or modal popup)

Whenever a packet or alert is clicked:

- Layered packet parsing (Ethernet, IP, TCP, etc.)
- Hex dump view
- Associated alerts/anomalies
- Source/Dest GeoIP
- Timeline correlation with other packets

---

## โš™๏ธ Tech Stack

| Layer | Stack |
| ------------ | -------------------------------- |
| Frontend | React + Tailwind + Recharts |
| Backend | FastAPI + Scapy/tshark |
| Real-Time | WebSocket + Redux |
| Visualization| GeoMap (Leaflet/D3), Recharts |
| Data Format | PCAP, JSON, Parquet (ML) |
| Auth (Opt.) | JWT / OAuth (planned) |

---

## ๐Ÿงช Running the App (Dev Mode)

```bash
# Backend
cd backend
uvicorn main:app --reload

# Frontend
cd frontend
npm install
npm run dev
```

---

## ๐Ÿ“ˆ Future Plans

- โœ… Packet-level anomaly detection using ML/DL
- ๐Ÿ” DPI and App-layer analytics
- ๐Ÿ” Admin dashboard and audit logs
- ๐Ÿ“Š Elasticsearch or ClickHouse backend for scalable storage
- ๐Ÿง  Integrate Deep Learning models like FNO for traffic prediction

---

## ๐Ÿ“œ License

MIT License โ€” feel free to fork, contribute, and make it your own!

---