Skip to content
Commitpedia
Log in Join & edit

Atomic Red Team: small tests that check whether your detections fire

Atomic Red Team is a library of tiny, documented tests, each reproducing one attacker technique from MITRE ATT&CK, that defenders run in their own lab to confirm their monitoring notices it.

Drafted with AI from official documentation. Scripts were run in a test environment and repository links verified. Awaiting a human check. Did it work for you? Last edited Outdated?

Edit history of Atomic Red Team: small tests that check whether your detections fire: 1 recorded edit
Edit history · 1 edit
Type
Repo
Edits
1
Editors
1
First issued
15 Oct 2026
Last edit
15 Oct 2026
Source
redcanaryco/atomic-red-team

redcanaryco/atomic-red-team

Stars
12.7k
Forks
3.2k
Language
C
Licence
MIT
Last push
13 Oct 2026

On GitHub: Small and highly portable detection tests based on MITRE's ATT&CK.

Open on GitHub

Atomic Red Team (about 13,000 stars on GitHub) is an open library of security tests maintained by Red Canary, a managed detection and response company, since 2017. Each test, called an atomic, is a short, self contained action that imitates one technique real attackers use, mapped to the corresponding entry in the MITRE ATT&CK catalogue. Examples are creating a scheduled task, dumping a credential file, clearing an event log or adding a user to the administrators group. The library covers Windows, Linux, macOS and some cloud and container environments, and holds well over a thousand tests.

What problem it solves

A monitoring stack is only useful if it actually alerts when an attack happens, and most teams never find out until a real incident. Atomic Red Team gives defenders a cheap way to check. You pick a technique you believe you can detect, run the matching atomic on a lab machine that your tools monitor, and then look at your SIEM, EDR or Wazuh dashboard to see whether the expected alert appeared. If it did not, you have found a gap before an attacker did. Because every test is small and documented, the exercise takes minutes rather than the days of a full penetration test, and it can be repeated after every change to rules or agents.

How the repository is organised

Tests live under the atomics/ directory, one folder per ATT&CK technique identifier, for example T1053.005 for scheduled tasks on Windows. Each folder contains a YAML file that defines the tests and a generated Markdown page that describes them in plain language. A test lists the platforms it supports, the command it runs, any prerequisites, and a cleanup command that reverses its effect. A separate project from the same team, Invoke-AtomicRedTeam, is a PowerShell module that runs the tests from the YAML definitions, checks prerequisites and performs cleanup. The library is also integrated into several commercial breach and attack simulation products.

How to try it

Clone the repository and read the Markdown page for a technique; the documentation alone is valuable as a catalogue of what attacker behaviour looks like on a host. To execute tests, install the PowerShell runner on a lab machine; it works on Windows, Linux and macOS:

git clone --depth 1 https://github.com/redcanaryco/atomic-red-team.git
ls atomic-red-team/atomics | head

The project site has a getting started guide and a browser for the full test catalogue, and the companion Atomic Red Team learning material explains how to turn test results into detection improvements.

Use it responsibly

The tests perform real actions that attackers perform, and some of them disable logging, change permissions or download tooling. Run them only on systems you own or have written permission to test, and never on production machines without explicit approval from whoever is responsible for them. Use a dedicated lab virtual machine that is monitored by the same tools as production, take a snapshot first, and run the cleanup command after each test. Tell your security team before you start so that the alerts you deliberately trigger are not mistaken for a real incident.

Credit

Atomic Red Team is maintained by Red Canary with contributions from hundreds of community members. The content and tooling are released under the MIT licence.

Did this work for you?

No votes yet. Be the first.

If it did not work, the report form below tells the editors what went wrong.

See also

  • 0322 Fix: user is not in the sudoers file sudo refuses because your account is not allowed to use it. Add the user to the sudo group (Debian, Ubuntu) or wheel… Beginner · Fixes an error · Linux, macOS Article Server hardening · Users, sudo & hardening 15 Oct 2026
  • 0352 Harden a fresh Linux server in 30 minutes The baseline for any new Debian, Ubuntu or RHEL-family server: updates on, a non-root user with sudo, SSH keys only, a firewall… Beginner · Step by step · Linux Article Server hardening · Users, sudo & hardening 15 Oct 2026
  • 0353 fail2ban: block repeated failed logins Install fail2ban, enable the sshd jail with sane ban times, whitelist your own address, read the ban list, unban someone, and add… Intermediate · Step by step · Linux Article Server hardening · SSH 15 Oct 2026
  • 0358 SSH server audit script: print risky sshd settings A read-only bash script that asks sshd for its effective configuration, compares the important settings with safe values, flags config.d files that… Intermediate · Cheat sheet · Linux Script Server hardening · SSH 15 Oct 2026
  • 0443 Security monitoring explained: IDS, SIEM, EDR and where the logs go A plain language map of the security monitoring tool families, what each one watches, how they feed one another, and where the… Beginner · Explains an idea · Any system Article Detection & threat hunting · Logs 15 Oct 2026
  • 0455 Which security tool does what? A map for beginners A beginner's map of open source security tool families: vulnerability scanners, secret detection, static analysis, host audits, web application testing, network inventory… Beginner · Explains an idea · Any system Article Security resources & detection · Server hardening 15 Oct 2026

History

Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.

  1. Dominik +3,343 chars

Report a problem

Something wrong, unsafe or copied? Tell the editors.
What is wrong?