• This repository has been archived on 11/Jul/2021
  • Stars
    star
    107
  • Rank 323,587 (Top 7 %)
  • Language
    Python
  • Created almost 6 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Repo containing docker-compose files and setup scripts without having to clone the individual reternal components

RE:TERNAL


Drawing

version


Note: Still under development, only use for testing and do not expose interfaces! Current compose doesn't work yet, only try when you know what you're doing

RE:TERNAL is a centralised purple team orchestration service to manage third-party C2 frameworks. Agents are installed on endpoints to to execute various known red-teaming techniques in order to test blue-teaming capabilities. The simulations are mapped to the MITRE ATT&CK framework. This repo contains the compose file in order to set up the reternal platform via docker.

There is a public preview available running the latest version @ https://reternal.d3vzer0.com (Github login required). Executing/saving campaigns and interacting with the C2 modules is disabled (for obvious reasons ;)).

Reternal components

Component Description Code Build
API Administrative API to schedule tasks Python Build Status
UI VueJS-based UI buildscript and NGinx webserver VueJS Build Status
C2 Distributed tasks to interact with external C2 frameworks Python Build Status
Search Distributed tasks to execute search queries (ie. Splunk/Elasticsearch) for ATT&CK coverage rating Python Build Status
Mitre Repository containing already existing mapped techniques for reternal
Component Description Build
Total Stack Build verifying entire stack via docker-compose in this repository TODO

Install and Configuration

This repository contains Ansible deployment playbooks to automate the local or remote installation and configuration for Reternal. The guide can be found on the repo's Wiki @ https://github.com/d3vzer0/reternal-quickstart/wiki.

Developers and Contact

Joey Dreijer < [email protected] >
Yaleesa Borgman < [email protected] >

Whats up with the name?

This project has been re-developed so many times, it will probably never really finish. Hence RE (Redo) and Ternal (Eternal).

Special Thanks

Examples and screenshots

All of the features will be documented on the Welcome page of the Wiki @ https://github.com/d3vzer0/reternal-quickstart/wiki. Below are a few examples of the main components.

Actor / Technique mapping

Reternal automatically maps available commands and techniques to actors. You can directly add all the techniques commonly used by actors to your set of tasks. actor_mapping

Recipe / Graph builder

Scheduling tasks to be run on an agent is called a graph. You can add manual commands to a graph or select one of the existing mapped techniques or actor TTPs. You can drag/drop to change the order of the tasks in your graph.

campaign

C2 interaction

Reternal acts as a piece of middleware and interacts with external C2 frameworks. An example is shown below how Reternal manages external listeners and generates stagers. actor_mapping

actor_mapping

Coverage rating (based on Rabo DeTTECT)

Automatically synchronise the available datasources with your Splunk environment or add logsources manually. Reternal will suggest specific campaigns to execute based on your coverage rating.

actor_mapping

With an overview of your coverage compared to all the ATT&CK techniques: attck_archive

Integrated Hunts

Additionally a list of Splunk queries are included to automatically validate simulations. Soon (tm) the scheduled campaign will automatically run relevant queries and present a detailed report containing the findings (ie. time when attack was performed vs. time of detection etc)

attck_archive

Campaign state and dashboard

The main dashboard displays the state of your running campaigns and displays the expected coverage of your datasources vs techniques

attck_archive

More Repositories

1

faust-transparency

Turbocharged Certificate Transparency monitor + enrichment using Faust
Python
13
star
2

streamio

Faust Streaming engine for simple keyword domain monitoring
13
star
3

cnc-relay

Docker projects to retain beacon source IPs using C2 relaying infra
Dockerfile
11
star
4

reternal-backend

Back-end API for the reternal framework
Python
7
star
5

reternal-ui

VueJS UI for the reternal platform
Vue
5
star
6

splunk-bots-docker

Minimal bash script and compose file to deploy standalone Splunk instance with the BoTSv3 dataset + required apps
Shell
4
star
7

applied_data_science_amsterdam

Applied Data Science for Cyber Security - Amsterdam
Jupyter Notebook
4
star
8

decon-content

Content repository for search mirror
Shell
4
star
9

reternal-c2

Fork of reternal-backend repo to split admin API in favor or seperate agent command and control container
Python
4
star
10

splunk-buildtools

Container to package, validate and upload Splunk apps in CICD pipelines
Python
3
star
11

mch2022-workshop-streaming

Streaming component of MCH2022 workshop
Python
3
star
12

mch2022-workshop-cloud

Terraform and Ansible playbooks to deploy cloud environment for MCH2022 workshop
HCL
2
star
13

reternal-mitre

Repository containing configuration files to map MITRE technique with reternal recipes
2
star
14

reternal-nodes

Python
1
star
15

kickstart-flask-vuejs

Python
1
star
16

streamio-ui

UI (Vue) component of the streamio monitor
Vue
1
star
17

xsoar-hackathon-pack

Python
1
star
18

reternal-search

Distributed workers to validate/search tasks run via reternal
Python
1
star
19

reternal-agent

Agent compiler tasks for the reternal framework
Go
1
star
20

streamio-search-api

Public search API for streamio
1
star
21

xsoar-transparency

Certificate transparency docker image for the Demisto Automation Hackathon
1
star
22

streamio-faust

Streaming Faust component of the streamio monitor
Python
1
star
23

vulnerabilities-pipeline

Dagster pipeline to cross correlate vulnerabilities from different public source types (rss vs twitter vs CVE / NVD)
Python
1
star
24

prevalidate

Prevalidation scripts PoC
Python
1
star