SecOpsAI is an AI-powered Security Operations platform designed to detect, analyze, and respond to malicious activities in network environments.
The platform processes network traffic, converts it into structured security telemetry, extracts relevant features, and applies machine learning techniques to identify suspicious behaviors.
SecOpsAI combines network analysis, machine learning, event streaming, automated alert processing, and security monitoring to provide an end-to-end threat detection workflow.
Modern security environments generate large volumes of network events that require automated analysis and prioritization.
SecOpsAI addresses this challenge by integrating:
- Network traffic analysis
- Behavioral threat detection
- Machine learning-based classification
- Real-time event processing
- Automated alert enrichment
- Security monitoring dashboards
The platform follows a modular architecture where components can be independently developed, tested, and deployed.
The SecOpsAI platform consists of the following components:
Responsible for:
- Threat analysis requests
- Model inference communication
- Security event processing
- Health monitoring
Responsible for:
- Network telemetry collection
- Data normalization
- Feature extraction
- Event preparation
Responsible for:
- Security event consumption
- Alert enrichment
- Threat prioritization
- Notification workflows
Responsible for:
- Feature processing
- Behavioral analysis
- Threat classification
- Model inference
Provides:
- Metrics collection
- Infrastructure monitoring
- Security visibility
Provides visualization of:
- Threat detection activity
- Alert severity
- Detection trends
- System performance metrics
PCAP Files
↓
Zeek Processing
↓
Structured JSON Logs
↓
Kafka Topics
↓
Feature Engineering
↓
Machine Learning Models
↓
Threat Detection Alerts
↓
Monitoring Dashboard
SecOpsAI follows a defense-in-depth security approach.
Security principles include:
- Network telemetry is treated as untrusted input.
- Zeek runs with only required analyzers enabled.
- Security alerts are separated from raw telemetry.
- Kafka communication is designed to support message integrity validation.
- API services implement security controls.
- Threat detection focuses on behavioral indicators rather than only signatures.
Current detection objectives include:
- Command-and-control activity
- DNS tunneling
- Lateral movement attempts
- Suspicious network behaviors
Implemented security capabilities include:
- Secure API endpoints
- Input validation
- Authentication and authorization controls
- Rate limiting
- Audit logging
- Secure event processing pipeline
- Automated threat scoring
- Real-time monitoring
- ML-based threat classification
git clone https://github.com/Adnanmardini/SecOpsAI.git
cd SecOpsAICore Application
Install the main runtime dependencies:
pip install -r requirements.txtDevelopment Environment
Install development dependencies:
pip install -r requirements-dev.txtMachine Learning Environment
Install ML-related dependencies:
pip install -r requirements-ml.txtSecOpsAI uses environment variables for configuration.
Create a .env file in the project root:
touch .envExample configuration:
# API Configuration
API_HOST=0.0.0.0
API_PORT=8000
# Kafka Configuration
KAFKA_BOOTSTRAP_SERVERS=localhost:9092
# Database Configuration
DATABASE_URL=
# Machine Learning Configuration
MODEL_PATH=
Important: Do not commit sensitive information. Do not upload API keys, credentials, or private configuration files. Large ML model files should be stored separately.
Start required services using Docker:
docker compose up -dMain infrastructure components include:
- Kafka
- PostgreSQL
- Redis
- Prometheus
- Grafana
python app.pypython alert_pipeline/alert_consumer.pypython scripts/generate_demo_traffic.pyThe machine learning engine performs behavioral threat detection through:
- Feature engineering
- Data preprocessing
- Model inference
- Threat scoring
Example model artifacts:
models/
├── xgboost_hardened.json
├── scaler.joblib
└── label_encoder.joblib
Model files should not be pushed to GitHub if they contain sensitive or large binary artifacts.
SecOpsAI provides real-time monitoring dashboards displaying:
- Threat Detection Rate
- Average Threat Score
- Active Alerts by Severity
- Detection Timeline
- API Inference Latency
- Model Performance Metrics
Monitoring stack:
- Prometheus
- Grafana
SecOpsAI/
├── api/
├── alert_pipeline/
├── ml_engine/
├── data_pipeline/
├── monitoring/
├── scripts/
├── models/
├── docker-compose.yml
├── requirements.txt
├── requirements-dev.txt
├── requirements-ml.txt
└── README.md
The project was organized into specialized security and engineering teams.
Responsibilities:
- Security design
- Architecture decisions
- Threat modeling
Responsibilities:
- Data pipelines
- Kafka infrastructure
- Container deployment
Responsibilities:
- Feature engineering
- ML model development
- Threat classification
Responsibilities:
- Security testing
- Attack simulation
- Automated response workflows
The project follows a Git-based workflow:
main
↓
dev
↓
feature branches
Development changes should be tested and reviewed before merging into the main branch.
This project is provided for educational and research purposes.