Skip to content

This project automates SOC workflows using open-source tools like Wazuh, Shuffle, and TheHive. It aims to streamline event collection, alerting, and incident response to enhance SOC efficiency.

Notifications You must be signed in to change notification settings

Mitesh2020/SOC-Automation-Project

Repository files navigation

SOC Automation Project

This project automates SOC workflows using open-source tools like Wazuh, Shuffle, and TheHive. It aims to streamline event collection, alerting, and incident response to enhance SOC efficiency.


Project Design

The project integrates multiple tools and systems to automate and enhance SOC operations. Below is the design layout for reference:

design


System Requirements

To ensure the smooth functioning and optimal performance of the SOC Automation system, the following system requirements must be met:

Requirement Specification
Storage 150 GB (SSD Recommended)
RAM 32 GB (Cloud PC Recommended for < 32 GB RAM)
OS Windows 11 (Primary)



Software/Tools Usage

Name Usage
VMware/VirtualBox Virtualization software for creating and managing virtual machines.
Windows 11 Primary operating system serving as the Wazuh agent host.
Ubuntu Server 22.04 Lightweight OS for hosting Wazuh and TheHive on separate VMs.
Sysmon Windows system monitor for detailed logging of process activities.
Mimikatz Penetration testing tool to simulate security breaches.
SquareX Browser extension for disposable email usage.
Draw.io Tool for creating project architecture and design diagrams.
Wazuh Manager Centralized agent-based monitoring and analysis solution.
Wazuh Dashboard Visualization and management interface for Wazuh.
Wazuh Indexer Backend storage and search engine for Wazuh.
TheHive Incident response platform for managing alerts and cases.
Cassandra Database used as a backend for TheHive.
Elasticsearch Search engine for indexing and querying TheHive data.
VirusTotal Online file and URL analysis service for threat detection.
Ngrok Port forwarding to connect local TheHive setup with Shuffle cloud.
UFW Firewall configuration to manage network traffic.
Shuffler.io Workflow automation platform for SOC processes.



Project Workflow

  1. Day 1 - Design:

    • Create a logical diagram of the project using draw.io.
    • Diagram includes the architecture and flow between Wazuh, TheHive, Shuffle, and email.
    • Watch Design Video
  2. Day 2 - Install:

  3. Day 3 - Configure:

  4. Day 4 - Telemetry:

  5. Day 5 - SOAR:

    • Create an automated workflow between Wazuh, TheHive, Shuffle, and email to notify SOC analysts when alerts are triggered.
    • The workflow will automatically send alerts to TheHive and email them to SOC analysts.
    • Fork thehive app to configure create alert api from /api/v1/alert to /api/alert.
    • Create an account on https://ngrok.com/ for port forwarding thehive local setup as Shuffle is unable to send alerts to our local setup thehive from Cloud Shuffle setup.
    • Watch SOAR Automation Video
    • Create Account on Shuffle
    • Create Account on VirusTotal


Automation Workflow

image

Step 1: Wazuh Detection

  • Wazuh monitors logs and security events from various endpoints.
  • When potential threats are detected, Wazuh generates alerts that notify security teams about possible issues.

Step 2: SHA256 Extraction

  • Alerts generated by Wazuh are processed by a SHA256 REGEX component.
  • This component extracts SHA256 hash values from the alerts, which are crucial for identifying files involved in the potential threats.

Step 3: Alert Notification (Email)

  • An email notification (Email 1) is automatically sent out if a threat is identified.
  • The email alerts the relevant parties (e.g., security analysts or response teams) to investigate the potential threat.

Step 4: Malware Analysis with VirusTotal

  • The extracted SHA256 hash values are sent to VirusTotal for malware analysis.
  • VirusTotal checks the hash values against its database of known malware to determine if they are flagged as malicious.

Step 5: Incident Management in TheHive 5

  • Based on the results from VirusTotal, an incident is automatically created in TheHive 5.
  • Security analysts and response teams can investigate and respond to the incident within TheHive 5, which provides tools for managing and tracking the progress of investigations.


Project Walkthrough

Video


Learnings

While working on this project, I gained valuable knowledge and skills, including:

  1. SIEM and XDR: Learned about SIEM and XDR concepts using Wazuh.
  2. Case Management:
    • Explored case management systems through TheHive.
    • Learned about backend database systems like Elasticsearch and Cassandra, which power TheHive.
  3. SOAR:
    • Understood SOAR workflows by integrating Shuffle.
    • Built integrations between Wazuh, Shuffle, TheHive, and VirusTotal:
      • Wazuh: Generates alerts for potential security events.
      • Shuffle: Automates workflows, such as sending Wazuh alerts to TheHive for case management.
      • TheHive: Manages cases for incidents triggered by Wazuh alerts.
      • VirusTotal: Provides file and URL reputation analysis for enhanced incident investigation.
    • Email Integration: Configured email notifications in Shuffle to send alerts directly to SOC analysts, ensuring they are informed in real-time about critical security events.
  4. Virtual Machine Configurations: Configured virtual machines, including network adapters, memory, CPU cores, and storage.
  5. Firewall Configuration: Set up and managed firewalls using UFW.
  6. Security Breach Simulation: Simulated security breaches using Mimikatz.
  7. Port Forwarding: Learned port forwarding through Ngrok to connect TheHive (local) with Shuffle (cloud).
  8. System Monitoring: Understood system monitoring mechanisms with Sysmon.
  9. Memory Management: Managed memory resources effectively while running resource-heavy servers like Wazuh and TheHive alongside testing on Windows 11.
  10. Patience and Research:
    • Faced several challenges, such as memory shortages, dependency issues, networking errors, and firewall configuration problems.
    • Kept patience, researched solutions, and overcame frustrations.
    • The project was initially expected to be completed in 7 days, but due to unforeseen difficulties, it took 14 days.
  11. Helping Others: I created this GitHub repository to document what I have learned and help others save time and effort when building a similar project.



Contact

If you have any queries or need assistance with the project, feel free to reach out:
Email: miteshofficial007@gmail.com

About

This project automates SOC workflows using open-source tools like Wazuh, Shuffle, and TheHive. It aims to streamline event collection, alerting, and incident response to enhance SOC efficiency.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published