A collection of scripts and configurations to enable centralized logging of red team infrastructure.
- cobaltstrike
- filebeat - filebeat configurations for cobalt strike
- json_log.cna - An aggressor script to create a structured json log of beacon events
- There's a known issue where this script will bomb out with a Java StackOverflow error if the logging directory doesn't exist. Be sure to run
mkdir /var/log/cobaltstrike
before you start the logger. - If there's an event type with no match, the event gets printed to the console and written to the ironically named
notlogged.log
. - Each log message is tagged with a role based on the username running the script. Example roles might be working, longhaul, test, dev, etc. The role is defined by grabbing the second array element when splitting the name by an underscore. For example,
logbot_test
would create a key:value pair of"role":"test"
in the log entry. - The variables
$log_*
are used to enable/disable logging of those event types. Tweak these to your needs. - The
attack
hash map is generated using themitre_cs.py
script. As the ATT&CK Matrix gets updated this will need to be updated.
- There's a known issue where this script will bomb out with a Java StackOverflow error if the logging directory doesn't exist. Be sure to run
- event_spy.cna - test script to print all events to the screen
- mitre_cs.py - script to generate aggressor code for enriching tactic IDs with their phase
- packetbeat
- packetbeat.yml - configuration for logging HTTP and DNS C2
- Red Team Telemetry Part 1 - https://zachgrace.com/posts/red-team-telemetry-part-1/
- DerbyCon 8
- CobaltSplunk
- RedELK
- RedTeamSIEM