Giter Club home page Giter Club logo

go-atomic's Introduction

Go runner for atomic red team test cases

Build

git clone https://github.com/ejohn/go-atomic.git
cd go-atomic
go build github.com/ejohn/go-atomic/cmd/go-atomic

Usage guide

Usage of go-atomic:
  -arg value
    	pass argument to test [ex foo=bar], set multiple times for different arguments
  -cleanup
    	run only cleanup
  -debug
    	show debug logs
  -dependency
    	check prerequisites and get them if needed
  -dry-run
    	build test and display what will be executed when the test is run
  -guid string
    	test case guids separated by comma
  -name string
    	name of the test to run
  -num string
    	test case number [1-N]
  -path string
    	path to atomics folder
  -prereq
    	check if prerequisites for test are met
  -run
    	run dependencies, test commands and cleanup for all tests selected
  -tech string
    	list of technique id's [ex T1002,T1003]
  -test
    	run only the test, disables dependencies and cleanup
  -timeout string
    	timeout for commands [ex 1s, 2m]

Example usage

List all tests

go-atomic -path atomic-red-team/atomics/ | jq .Name

Filter tests with technique id and name

go-atomic -path atomic-red-team/atomics/ -tech T1082 -name "Hostname Discovery"

Run test

go-atomic -path atomic-red-team/atomics/ -tech T1082 -name "Hostname Discovery" -run

Pass arguments

go-atomic -path atomic-red-team/atomics/ -guid f8aab3dd-5990-4bf8-b8ab-2226c951696f -arg path=/tmp/loot.txt

Dry run to see what will get executed

go-atomic -path atomic-red-team/atomics/ -tech T1087 -num 1 --dry-run

Run a test with timeout

go-atomic -path atomic-red-team/atomics/ -tech T1082 -num 2 -run -timeout 1m

Check if prerequisites are satisfied for a test

go-atomic -path atomic-red-team/atomics/ -tech T1009 -num 1 -arg "file_to_pad=/bin/ls" -prereq

go-atomic's People

Contributors

ejohn avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.