Internal Network Threat Detection & Monitoring
ThreatHound is a scalable, containerized security monitoring solution for internal enterprise networks. It leverages the Wazuh Security Information and Event Management (SIEM) platform integrated with the ELK Stack (Elasticsearch, Logstash, Kibana) to collect logs in real time, detect internal and external threat vectors, and provide visual analytics and alerting.
-
Real‑time Log Collection & Indexing Deploys Wazuh agents and ELK Stack services via Docker Compose for consistent, portable environments.
-
Custom Threat Detection Rules XML‑based Wazuh rules tailored for SSH brute‑force, port scans, anomalous logins, and other insider/outsider activities.
-
Threat Simulation Automated Hydra scripts for SSH brute‑force and Nmap reconnaissance to validate alert pipelines and dashboards.
-
Visual Analytics & Alerts Pre‑built Kibana dashboards for attack trends, geo‑IP visualizations, and customizable alerting rules.
-
DevSecOps Pipeline GitLab CI/CD with Trivy scanning ensures container images meet security benchmarks before deployment.
-
Self‑Healing & Health Monitoring Docker Compose healthchecks and restart policies maintain uptime under simulated attack loads.
- Agents collect system logs and forward them to the Wazuh Manager.
- Manager applies detection rules and forwards events to Logstash.
- Logstash parses and enriches logs for Elasticsearch.
- Elasticsearch stores and indexes events.
- Kibana visualizes data; AlertManager orchestrates notifications.
- Docker & Docker Compose (v2.x)
- Git (v2.x)
- (Optional) Hydra & Nmap for threat simulation scripts
-
Clone the repository:
git clone https://github.com/3llimi/ThreatHound.git cd ThreatHound -
Configure environment variables (see
env.example):cp env.example .env # Edit .env to set passwords, network ranges, etc. -
Start the stack:
docker-compose up -d
-
Verify health:
docker ps
-
Access the UI:
- Kibana: http://localhost
-
Creating an agent:
- Now, you will see Kibana interface. Navigate to wazuh dashboard in kibana where informatoin about agents will be displayed. Create new agent with relevant configuration.
-
Monitor your network
-
SSH Brute‑Force (Hydra):
cd scripts chmod +x ssh_bruteforce.sh ./ssh_bruteforce.sh -
Port Scanning (Nmap):
cd scripts chmod +x port_scan.sh ./port_scan.sh
Alerts and events appear in Kibana within ~25 seconds on average.
ThreatHound/
├── .github/
│ └── workflows/ # GitHub Actions CI definitions
├── elasticsearch/ # Elasticsearch index templates & config
├── kibana/ # Kibana dashboards & settings
├── logstash/ # Logstash pipeline configurations
├── nginx/ # Nginx reverse‑proxy config
├── scripts/ # Attack simulation & helper scripts
├── wazuh/ # Wazuh manager rules & decoders
├── .env # Environment variables (ignored by Git)
├── README.md # Project overview and docs
└── docker-compose.yml # Docker‑Compose service definitions
- Ahmed Baha Eddine Alimi
- Egor Lazutkin
- Yusuf Abdughafforzoda
- Anvar Gelimov
Demo Video & Report: Link