• This repository has been archived on 08/May/2023
  • Stars
    star
    129
  • Rank 271,337 (Top 6 %)
  • Language Jinja
  • License
    Apache License 2.0
  • Created almost 4 years ago
  • Updated about 1 year ago

Reviews

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

Repository Details

Build a attack range in your local machine

Attack Range Local Has been Deprecated and Archived in Favor of https://github.com/splunk/attack_range

Thank you to all of our users for their feedback, bug reports, and contributions to the project. As of May 8, 2023, Attack Range Local has been deprecated and archived.

But I Still Want to Run a Local Attack Range!

Great News! https://github.com/splunk/attack_range now supports deploying Attack Range Locally (just like this repo used to). It's a one-stop-shop for all of your simulation needs. That repo brings the functionality of Attack Range Local and Attack Range Cloud into the Attack Range Repo. It is actively maintained and in use by the Splunk Threat Research Team on a daily basis.

Splunk Attack Range Local (Do Not Use for New Projects)⚔️

Purpose 🛡

The Attack Range is a detection development platform, which solves three main challenges in detection engineering. First, the user is able to build quickly a small lab infrastructure as close as possible to a production environment. Second, the Attack Range performs attack simulation using different engines such as Atomic Red Team or Caldera in order to generate real attack data. Third, it integrates seamlessly into any Continuous Integration / Continuous Delivery (CI/CD) pipeline to automate the detection rule testing process.

Building 👷‍♂️

Attack Range can be built in three different ways:

Installation 🏗

For Ubuntu 18.04

For MacOS

Architecture 🏯

Logical Diagram

The virtualized deployment of Attack Range consists of:

  • Windows Domain Controller
  • Windows Server
  • Windows Workstation
  • A Kali Machine
  • Splunk Server
  • Phantom Server
  • Caldera Server

Which can be added/removed/configured using attack_range_local.conf. More machines such as Phantom, Linux server, Linux client, MacOS clients are currently under development.

Logging

The following log sources are collected from the machines:

  • Windows Event Logs (index = win)
  • Sysmon Logs (index = win)
  • Powershell Logs (index = win)
  • Network Logs with Splunk Stream (index = main)
  • Attack Simulation Logs from Atomic Red Team and Caldera (index = attack)

Running 🏃‍♀️

Attack Range supports different actions:

  • Build Attack Range
  • Perform Attack Simulation
  • Destroy Attack Range
  • Stop Attack Range
  • Resume Attack Range
  • Dump Attack Data

Build Attack Range Local

  • Build Attack Range Local
python attack_range_local.py -a build

Perform Attack Simulation

  • Perform Attack Simulation
python attack_range_local.py -a simulate -st T1003.001 -t attack-range-windows-domain-controller

Show Attack Range Status

  • Show Attack Range Status
python attack_range_local.py -lm

Destroy Attack Range Local

  • Destroy Attack Range Local
python attack_range_local.py -a destroy

Stop Attack Range Local

  • Stop Attack Range Local
python attack_range_local.py -a stop

Resume Attack Range Local

  • Resume Attack Range Local
python attack_range_local.py -a resume

Dump Attack Data

  • Dump Attack Range Data
python attack_range_local.py -a dump -dn dump_data_folder

Features 💍

  • Splunk Server

    • Indexing of Microsoft Event Logs, PowerShell Logs, Sysmon Logs, DNS Logs, ...
    • Preconfigured with multiple TAs for field extractions
    • Out of the box Splunk detections with Enterprise Security Content Update (ESCU) App
    • Preinstalled Machine Learning Toolkit (MLTK)
    • Splunk UI available through port 8000 with user admin
    • ssh connection over configured ssh key
  • Bring Your Own Splunk Server

    • Send events to your own Splunk Server instance
    • Allows integration of automated attacks into your own detection engineering lifecycle
  • Splunk Enterprise Security

  • Splunk Phantom

  • Windows Domain Controller & Window Server & Windows 10 Client

    • Can be enabled, disabled and configured over attack_range_local.conf
    • Collecting of Microsoft Event Logs, PowerShell Logs, Sysmon Logs, DNS Logs, ...
    • Sysmon log collection with customizable Sysmon configuration
    • RDP connection over port 3389 with user Administrator
  • Atomic Red Team

    • Attack Simulation with Atomic Red Team
    • Will be automatically installed on target during first execution of simulate
    • Atomic Red Team already uses the new Mitre sub-techniques
  • Caldera

    • Adversary Emulation with Caldera
    • Installed on the Splunk Server and available over port 8888 with user admin
    • Preinstalled Caldera agents on windows machines
  • Kali Linux

    • Preconfigured Kali Linux machine for penetration testing
    • ssh connection over configured ssh key

Support 📞

Please use the GitHub issue tracker to submit bugs or request features.

If you have questions or need support, you can:

Contributing 🥰

We welcome feedback and contributions from the community! Please see our contribution guidelines for more information on how to get involved.

Author

Contributors

License

Copyright 2020 Splunk Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

More Repositories

1

attack_range

A tool that allows you to create vulnerable instrumented local or cloud environments to simulate attacks against and collect the data into Splunk
Jinja
1,983
star
2

security_content

Splunk Security Content
Python
1,131
star
3

splunk-sdk-python

Splunk Software Development Kit for Python
Python
649
star
4

attack_data

A repository of curated datasets from various attacks
Python
537
star
5

docker-splunk

Splunk Docker GitHub Repository
Python
410
star
6

eventgen

Splunk Event Generator: Eventgen
Python
354
star
7

splunk-ansible

Ansible playbooks for configuring and managing Splunk Enterprise and Universal Forwarder deployments
Python
344
star
8

splunk-connect-for-kubernetes

Helm charts associated with kubernetes plug-ins
Python
341
star
9

botsv2

Splunk Boss of the SOC version 2 dataset.
340
star
10

docker-splunk-legacy

Docker Splunk *** LEGACY IMAGES - PLEASE SEE https://github.com/splunk/docker-splunk INSTEAD ***
Shell
304
star
11

botsv1

302
star
12

pion

Pion Network Library (Boost licensed open source)
C++
299
star
13

splunk-operator

Splunk Operator for Kubernetes
Go
197
star
14

splunk-sdk-javascript

Splunk Software Development Kit for JavaScript
JavaScript
185
star
15

botsv3

Splunk Boss of the SOC version 3 dataset.
163
star
16

melting-cobalt

A Cobalt Strike Scanner that retrieves detected Team Server beacons into a JSON object
Python
162
star
17

qbec

configure kubernetes objects on multiple clusters using jsonnet
Go
157
star
18

splunk-connect-for-syslog

Splunk Connect for Syslog
Python
142
star
19

splunk-sdk-java

Splunk Software Development Kit for Java
Java
138
star
20

splunk-library-javalogging

Splunk logging appenders for popular Java Logging frameworks
Java
131
star
21

ansible-role-for-splunk

Splunk@Splunk's Ansible role for installing Splunk, upgrading Splunk, and installing apps/addons on Splunk deployments (VM/bare metal)
Jinja
131
star
22

SA-ctf_scoreboard

Python
115
star
23

splunk-platform-automator

Ansible framework providing a fast and simple way to spin up complex Splunk environments.
Python
114
star
24

splunk-aws-cloudformation

AWS CloudFormation templates for Splunk distributed cluster deployment
Shell
107
star
25

securitydatasets

Home for Splunk security datasets.
97
star
26

splunk-aws-project-trumpet

Python
95
star
27

splunk-app-examples

App examples for Splunk Enterprise
JavaScript
93
star
28

splunk-demo-collector-for-analyticsjs

Example Node.js based backend collector for client-side data
JavaScript
93
star
29

terraform-provider-splunk

Terraform Provider for Splunk
Go
93
star
30

fluent-plugin-splunk-hec

This is the Fluentd output plugin for sending events to Splunk via HEC.
Ruby
83
star
31

network-explorer

C++
82
star
32

mltk-algo-contrib

Python
82
star
33

kafka-connect-splunk

Kafka connector for Splunk
Java
82
star
34

vscode-extension-splunk

Visual Studio Code Extension for Splunk
Python
82
star
35

splunk-javascript-logging

Splunk HTTP Event Collector logging interface for JavaScript
JavaScript
81
star
36

splunk-reskit-powershell

Splunk Resource Kit for Powershell
PowerShell
80
star
37

corona_virus

This project includes an app that allows users to visualize and analyze information about COVID-19 using data made publicly-available by Johns Hopkins University. For more information on legal disclaimers, please see the README.
Python
79
star
38

observability-workshop

To get started, please proceed to The Splunk Observability Cloud Workshop Homepage.
Shell
78
star
39

salo

Synthetic Adversarial Log Objects: A Framework for synthentic log generation
Python
70
star
40

docker-itmonitoring

Get Started with Streaming your Docker Logs and Stats in Splunk!
HTML
68
star
41

splunk-sdk-csharp-pcl

Splunk's next generation C# SDK
C#
65
star
42

docker-logging-plugin

Splunk Connect for Docker is a Docker logging plugin that allows docker containers to send their logs directly to Splunk Enterprise or a Splunk Cloud deployment.
Go
64
star
43

contentctl

Splunk Content Control Tool
Python
63
star
44

attack-detections-collector

Collects a listing of MITRE ATT&CK Techniques, then discovers Splunk ESCU detections for each technique
Python
59
star
45

splunk-aws-serverless-apps

Splunk AWS Serverless applications and Lambda blueprints
JavaScript
54
star
46

splunk-connect-for-ethereum

Splunk Connect for Ethereum
TypeScript
52
star
47

ShellSweep

ShellSweeping the evil.
PowerShell
52
star
48

splunk-webframework

Splunk Web Framework
Python
51
star
49

splunk-app-splunkgit

GitHub App
Python
49
star
50

pytest-splunk-addon

A Dynamic test tool for Splunk Technology Add-ons
Python
47
star
51

splunk-mltk-container-docker

Splunk App for Data Science and Deep Learning - container images repository
Jupyter Notebook
44
star
52

splunk-cloud-sdk-go

The Splunk Cloud SDK for Go, contains libraries for building apps for the Splunk Cloud Services Platform.
Go
43
star
53

rba

RBA is Splunk's method to aggregate low-fidelity security events as interesting observations tagged with security metadata to create high-fidelity, low-volume alerts.
42
star
54

splunk-app-testing

sample app along with a CICD pipeline for testing multiple versions of splunk
Shell
42
star
55

vault-plugin-secrets-gitlab

Vault Plugin for Gitlab Project Access Token
Go
40
star
56

rwi_executive_dashboard

Splunk Remote Work Insights - Executive Dashboard
HTML
38
star
57

splunk-sdk-ruby

Splunk Software Development Kit for Ruby
Ruby
36
star
58

splunk-shuttl

Splunk app for archive management, including HDFS support.
Java
35
star
59

addonfactory-ucc-generator

A framework to generate UI-based Splunk Add-ons.
Python
34
star
60

splunk-for-securityHub

Python
34
star
61

attack_range_cloud

Attack Range to test detection against nativel serverless cloud services and environments
Python
34
star
62

cloud-datamodel-security-research

A data model for cloud providers (AWS, GCP, Azure) based on security use cases
34
star
63

dashboard-conf19-examples

Splunk new dashboard framework examples .conf 2019
JavaScript
30
star
64

github_app_for_splunk

A collection of dashboards and knowledge objects for Github data
JavaScript
29
star
65

azure-functions-splunk

Azure Functions for getting data in to Splunk
JavaScript
28
star
66

splunk-connect-for-snmp

Python
28
star
67

jupyterhub-istio-proxy

JupyterHub proxy implementation for kubernetes clusters running istio service mesh
Go
27
star
68

twinclams

because twin clams are better than one clam?
Python
26
star
69

lightproto

Protobuf compatible code generator
Java
26
star
70

splunk-app-twitter

Twitter application for Splunk
Python
25
star
71

splunk-library-dotnetlogging

Support for logging from .NET Tracing and ETW / Semantic Logging ApplicationBlock to Splunk.
C#
25
star
72

observability-content-contrib

Contribution repository for Splunk Observability Content (e.g. Dashboards, Detectors, Examples, etc)
HCL
24
star
73

splunkrepl

An awesome little REPL for issuing SPLUNK queries
JavaScript
24
star
74

splunk-ref-pas-code

Splunk Reference App - Pluggable Auditing System (PAS) - Code Repo
Python
22
star
75

vault-plugin-splunk

Vault plugin to securely manage Splunk admin accounts and password rotation
Go
22
star
76

splunk-sdk-php

Splunk Software Development Kit for PHP
PHP
22
star
77

fluent-plugin-kubernetes-objects

This is the Fluentd input plugin which queries Kubernetes API to collect Kubernetes objects (like Nodes, Namespaces, Pods, etc.)
Ruby
22
star
78

splunk-heatwave-viz

A heatmap vizualization of bucketed ranged data over time.
JavaScript
21
star
79

pipelines

Concurrent processing pipelines in Go.
Go
21
star
80

splunk-gcp-functions

Python
20
star
81

splunk-tableau-wdc

Splunk Tableau Web Data Connector (WDC) Example
JavaScript
20
star
82

splunkforjenkins

Java
19
star
83

minecraft-app

Splunking Minecraft with the App Framework
JavaScript
19
star
84

splunk-add-on-jira-alerts

Splunk custom alert action for Atlassian JIRA
Python
19
star
85

splunk-bunyan-logger

A Bunyan stream for Splunk's HTTP Event Collector
JavaScript
18
star
86

splunk-3D-graph-network-topology-viz

Plot relationships between objects with force directed graph based on ThreeJS/WebGL.
JavaScript
18
star
87

public-o11y-docs

Splunk Observability Cloud docs
HTML
18
star
88

dashpub

Generate next.js apps to publish Splunk dashboards
JavaScript
18
star
89

SA-ctf_scoreboard_admin

Python
18
star
90

slack-alerts

Splunk custom alert action for sending messages to Slack channels
Python
17
star
91

vale-splunk-style-guide

Splunk Style Guide for the Vale linter
17
star
92

acs-privateapps-demo

Demo of private-apps ci/cd integration into splunkcloud using the admin config service
Go
17
star
93

splunk-cloud-sdk-python

The Splunk Cloud SDK for Python, contains libraries for building apps for the Splunk Cloud Services Platform.
Python
17
star
94

fabric-logger

Logs blocks, transactions and events from Hyperledger Fabric to Splunk.
TypeScript
17
star
95

terraform-provider-scp

Splunk Terraform Provider to manage config resources for Splunk Cloud Platform
Go
16
star
96

PEAK

Security Content for the PEAK Threat Hunting Framework
Jupyter Notebook
16
star
97

deep-learning-toolkit

Deep Learning Toolkit for Splunk
Python
15
star
98

k8s-yaml-patch

jsonnet library to patch objects loaded from yaml
Go
15
star
99

TA-osquery

A Splunk technology add-on for osquery
14
star
100

ml-toolkit-docs

ML Toolkit & Showcase application documents
14
star