Skip to content
Jared Atkinson edited this page Feb 23, 2018 · 20 revisions

ACE is mainly comprised of three parts: a messaging system for handling result data, a database for storing ACE information, and a web interface to manage and task the platform. These three parts have been made available as Docker Containers in the ACE-Docker repository. For specific instructions on provisioning the ACE containers please see below.

Generic Setup

Requirements

Operating System

  • Ubuntu 14.04 (Server or Desktop)
    • 4 GB RAM
  • Windows 10

Application

  • Git

First Steps

  • Identify the IP Address of both systems (Ubuntu and Windows 10)

Docker

ACE is composed of 3 services, RabbitMQ, MSSQL, and Nginx. ACE comes with a Docker image for each of these services. For more information about each Docker image please visit the individual image's page on Docker Hub:

Components

MSSQL Server. This database provides a backend to keep track of all of the data ACE needs to do its job. This includes User, Credential, Computer, Script, and Schedules.

RabbitMQ Messaging System. ACE's enrichment pipeline is built on a robust messaging system that guides each scan result through data enrichments, like Virus Total hash lookups, all the way to ingestion into a SIEM.

NGINX HTTP(S) Reverse Proxy. Proxy's access to the ACE Web Application and provides SSL Certificates for those connections.

Docker Component Setup

  1. git clone https://github.com/Invoke-IR/ACE.git
  2. chmod +x ./ACE/ACE-Docker/start.sh
  3. chmod +x ./ACE/ACE-Docker/settings.sh
  4. Edit ace.env (this provides adjustable settings for all docker images)
  5. ./ACE/ACE-Docker/start.sh

Web Service

The ACEWebService is an ASP.NET Web Application that is the heart and soul of the ACE stack.

ACEWebServer Setup

  1. Visit the release page (