DivyanshuGairwal/Mini-SIEM

GitHub: DivyanshuGairwal/Mini-SIEM

Stars: 0 | Forks: 0

# 🛡 Mini SIEM — Security Information and Event Management System A lightweight Security Operations Centre (SOC) platform that detects, analyzes, and visualizes cyber threats using a combination of rule-based detection and machine learning. ## 🚀 Overview Mini SIEM simulates a real-world SOC environment where security analysts monitor logs, detect anomalies, and investigate threats. The system processes multiple cybersecurity datasets, applies detection logic, and presents insights through an interactive dashboard. ## ⚙️ Features * 🔍 Rule-based threat detection (SQLi, XSS, DDoS, etc.) * 🤖 Machine learning anomaly detection (Isolation Forest + LOF) * 🧠 SHAP-based explainability for model decisions * 🗂 SQLite database for alert storage * 📊 Interactive Streamlit dashboard (SOC-style UI) * 🧑‍💻 Analyst workbench for investigation and alert management hello hey ## 🧱 Architecture Raw Data → Cleaning → Rule Detection → ML Models → Explainability → Database → Dashboard ## 🛠 Tech Stack * **Language:** Python * **Data Processing:** Pandas, NumPy * **Machine Learning:** Scikit-learn * **Explainability:** SHAP * **Database:** SQLite * **Frontend:** Streamlit * **Visualization:** Plotly ## 📂 Project Structure mini-siem/ ├── dashboard/ # Streamlit dashboard ├── src/ # Core logic (cleaning, detection, ML, DB) ├── pipeline.py # Main pipeline ├── requirements.txt └── README.md ## ▶️ How to Run Locally # Create virtual environment python -m venv .venv # Activate .venv\Scripts\activate # Install dependencies pip install -r requirements.txt # Run pipeline python pipeline.py --clean # Launch dashboard streamlit run dashboard/app.py ## ⚠️ Note on Data Due to large dataset sizes, raw and processed data files are not included in this repository. ## 🎯 My Contribution * Designed and developed the SOC dashboard using Streamlit * Implemented alert visualization and filtering system * Integrated SQLite database with frontend * Built analyst workflow interface for alert investigation ## 📌 Future Improvements * Real-time log ingestion (Kafka / APIs) * User authentication system * Cloud deployment with scalable backend ## 🌐 Deployment This project can be deployed using **Streamlit Cloud**: 1. Push code to GitHub 2. Go to [https://share.streamlit.io](https://share.streamlit.io) 3. Connect your repository 4. Set entry point: `dashboard/app.py` 5. Deploy ## 📣 About A practical implementation of a SIEM system demonstrating cybersecurity analytics, anomaly detection, and SOC workflows.