sridharchary42/cybersecurity-network-monitoring
GitHub: sridharchary42/cybersecurity-network-monitoring
Stars: 1 | Forks: 0
# Cybersecurity Network Monitoring (Capstone)
## Overview
A network security monitoring system combining **Snort IDS/IPS rule engineering** and **Python-based packet analysis** to detect, correlate, and report suspicious traffic patterns in a simulated data center environment.
### What It Detects
| Threat Category | Techniques Covered |
|---|---|
| Reconnaissance | SYN scan, NULL scan, XMAS scan, UDP scan, SNMP probing |
| Brute Force | SSH, RDP, Telnet credential attacks |
| Malware / C2 | DNS tunneling, IRC C2, HTTP beaconing |
| Data Exfiltration | Large outbound transfers, anomalous DNS payload sizes |
| DoS / DDoS | ICMP flood detection |
| Policy Violations | Telnet access, unauthorized NETCONF, unencrypted management traffic |
## Project Structure
cybersecurity-network-monitoring/
├── snort_rules/
│ └── local.rules # Custom Snort IDS/IPS detection rules
├── wireshark_analysis.py # PCAP parser & suspicious traffic correlator (Scapy)
├── alert_monitor.py # Real-time Snort alert log monitor (terminal dashboard)
├── requirements.txt
└── README.md
## Quick Start
### 1. Run the Wireshark PCAP Analyzer
pip install scapy
# Demo mode (no real PCAP needed — great for showcasing)
python wireshark_analysis.py --demo --summary
# Analyze a real capture file
python wireshark_analysis.py --pcap capture.pcap --summary --output report.json
**Sample output:**
══════════════════════════════════════════════════
TRAFFIC ANALYSIS SUMMARY
══════════════════════════════════════════════════
Total Findings : 5
CRITICAL : 1
HIGH : 3
MEDIUM : 1
DNS Queries : 248
[CRITICAL] BRUTE_FORCE | 203.0.113.45 → 10.0.1.10
SSH brute force: 87 SYN packets to port 22
[HIGH ] PORT_SCAN | 192.168.1.200 → 10.0.1.0/24
Source probed 47 unique ports in 3 seconds
[HIGH ] DNS_TUNNELING | 10.0.1.55 → 8.8.8.8
Oversized DNS query: 312 bytes — possible exfiltration
### 2. Run the Real-time Snort Monitor
# Demo mode
python alert_monitor.py --demo
# Watch live Snort output (requires Snort running)
python alert_monitor.py --log /var/log/snort/alert
### 3. Deploy Snort with Custom Rules
# Install Snort on Ubuntu
sudo apt-get install snort
# Copy custom rules
sudo cp snort_rules/local.rules /etc/snort/rules/
# Add to /etc/snort/snort.conf:
# include $RULE_PATH/local.rules
# Run Snort in IDS mode
sudo snort -A console -c /etc/snort/snort.conf -i eth0
## Lab Environment
Tested in a VirtualBox virtual network with:
- **Kali Linux** — attack workstation (running Nmap, Metasploit)
- **Ubuntu Server** — target (SSH, Apache, SNMP enabled)
- **Snort VM** — monitoring host (promiscuous mode NIC)
- **Wireshark** — packet capture on the monitoring interface
## Security Best Practices Implemented
1. **Defense-in-depth** — Snort IDS positioned behind the firewall to catch lateral movement
2. **Threshold-based rules** — Reduces false positives while catching sustained attacks
3. **Severity classification** — Rules classified by impact (CRITICAL/HIGH/MEDIUM/LOW)
4. **Provisioning protection** — Custom rules protecting NETCONF/SNMP management plane
5. **Audit logging** — All alerts timestamped and persisted for RCA / forensic review
## Skills Demonstrated
- Snort IDS/IPS rule writing and tuning
- Packet capture analysis with Scapy (Python)
- Network threat detection and classification
- Real-time log monitoring and alerting
- Cybersecurity lab environment setup (VirtualBox, Kali, Snort)
- Data center infrastructure security best practices