MEGR-APT is an advanced and scalable system designed for hunting Advanced Persistent Threats (APTs) by identifying suspicious subgraphs that align with specific attack scenarios, as described in Cyber Threat Intelligence (CTI) reports.
Its primary functionality revolves around two key processes: memory-efficient extraction of suspicious subgraphs and fast subgraph matching using Graph Neural Networks (GNNs) and attack representation learning.
The system takes kernel audit logs stored in a PostgreSQL database and attack query graphs in JSON format as inputs.
It operates through a modular architecture comprising Python scripts for core functions, Bash scripts for orchestration, and directories for logs, models, datasets, and technical documentation. Key components include:
construct_pg_cadets.py and stores them in RDF graph engines such as Stardog.extract_rdf_subgraphs_cadets.py and matches them with attack query graphs via pre-trained GNN models using main.py.For training its GNN-based graph matching models:
extract_rdf_subgraphs_[dataset].py.main.py script.The system includes a Jupyter notebook (Investigation_Reports.ipynb) to analyze detected subgraphs and generate reports for analysts. This notebook demonstrates scenarios with real-world datasets like DARPA TC3 CADETS host data.
To deploy MEGR-APT:
requirements.txt and torch_requirements.txt.load_to_stardog.sh).setup_environment.sh script to configure the environment.MEGR-APT is particularly suited for organizations aiming to enhance their cybersecurity defenses by detecting APTs early. Its ability to process large-scale data efficiently makes it a powerful tool for threat intelligence and forensic investigations.
Pip is the official package manager for Python and the standard way to install libraries from…
R is an open-source programming language and environment built for statistical computing and data visualization. It…
Jenkins is an open-source automation server that makes it easy to build CI/CD pipelines. Continuous integration…
Android Studio is the official IDE for Android development, built on JetBrains' IntelliJ IDEA platform. It…
GitLab is a web-based, open-source Git repository manager written in Ruby. It includes built-in tools for…
Anaconda is the most widely used Python distribution for data science and machine learning. It bundles…