| Befehl | Beschreibung |
|---|
git clone https://github.com/redcanaryco/atomic-red-team.git | Clone Atomic Red Team Repository |
cd atomic-red-team | Navigieren Sie zum Repository |
Install-Module -Name invoke-atomicredteam,powershell-yaml -Scope CurrentUser | PowerShell-Module installieren |
Import-Module "C:\AtomicRedTeam\invoke-atomicredteam\Invoke-AtomicRedTeam.psd1" -Force | PowerShell-Modul importieren |
Invoke-AtomicTest T1003.001 -ShowDetails | Test-Details anzeigen |
| Befehl | Beschreibung |
|---|
Get-AtomicTechnique | Alle verfügbaren Techniken auflisten |
Get-AtomicTechnique -Path "C:\AtomicRedTeam\atomics" | Techniken aus bestimmtem Pfad auflisten |
| `Get-AtomicTechnique \ | Where-Object {$_.DisplayName -match “credential”}` |
Get-AtomicTechnique T1003 | Details für spezifische Technik abrufen |
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1566.001 | Spearphishing-Anhang |
Invoke-AtomicTest T1566.002 | Spearphishing-Link |
Invoke-AtomicTest T1190 | Exploit Public-Facing Application |
Invoke-AtomicTest T1133 | Externe Remote Services |
Invoke-AtomicTest T1200 | Hardware-Ergänzungen |
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1059.001 | PowerShell-Ausführung |
Invoke-AtomicTest T1059.003 | Windows Command Shell |
Invoke-AtomicTest T1059.004 | Unix Shell |
Invoke-AtomicTest T1059.006 | Python-Ausführung |
Invoke-AtomicTest T1053.005 | Geplante Aufgabe/Job |
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1547.001 | Registry-Ausführungsschlüssel |
Invoke-AtomicTest T1053.005 | Geplante Aufgabe |
Invoke-AtomicTest T1543.003 | Windows-Dienst |
Invoke-AtomicTest T1136.001 | Lokale Kontoerstellung |
Invoke-AtomicTest T1098 | Account-Manipulation |
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1548.002 | Umgehen der Benutzerkontensteuerung |
Invoke-AtomicTest T1055 | Process Injection |
Invoke-AtomicTest T1134 | Access Token Manipulation |
Invoke-AtomicTest T1068 | Ausnutzung zur Rechteausweitung |
Erster Zugang
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1027 | Verschleierte Dateien oder Informationen |
Invoke-AtomicTest T1070.004 | Datei-Löschung |
Invoke-AtomicTest T1562.001 | Tools deaktivieren oder ändern |
Invoke-AtomicTest T1218.010 | Regsvr32 |
Invoke-AtomicTest T1036 | Maskerade |
Ausführung
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1003.001 | LSASS Speicherabbild |
Invoke-AtomicTest T1003.002 | Security Account Manager |
Invoke-AtomicTest T1003.003 | NTDS.dit |
Invoke-AtomicTest T1110.001 | Passwort-Spraying |
Invoke-AtomicTest T1555.003 | Anmeldeinformationen aus Webbrowsern |
Persistenz
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1087.001 | Lokale Kontoermittlung |
Invoke-AtomicTest T1087.002 | Domain Account Discovery |
Invoke-AtomicTest T1018 | Remote System Discovery |
Invoke-AtomicTest T1083 | Datei- und Verzeichnissuche |
Invoke-AtomicTest T1057 | Prozess-Entdeckung |
Berechtigungserweiterung
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1021.001 | Remote Desktop Protocol |
Invoke-AtomicTest T1021.002 | SMB/Windows Admin-Freigaben |
Invoke-AtomicTest T1021.003 | Distributed Component Object Model |
Invoke-AtomicTest T1021.006 | Windows Remote Management |
Invoke-AtomicTest T1550.002 | Pass the Hash |
Verteidigung umgehen
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1005 | Daten vom lokalen System |
Invoke-AtomicTest T1039 | Daten vom Network Shared Drive |
Invoke-AtomicTest T1113 | Bildschirmaufnahme |
Invoke-AtomicTest T1123 | Audio Capture |
Invoke-AtomicTest T1115 | Zwischenablage-Daten |
Zugangsdaten-Zugriff
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1071.001 | Web-Protokolle |
Invoke-AtomicTest T1071.004 | DNS |
Invoke-AtomicTest T1090.003 | Multi-hop Proxy |
Invoke-AtomicTest T1573.002 | Asymmetrische Kryptographie |
Erkundung
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1041 | Exfiltration über C2-Kanal |
Invoke-AtomicTest T1048.003 | Exfiltration über unverschlüsseltes/verschleiertes Nicht-C2-Protokoll |
Invoke-AtomicTest T1567.002 | Exfiltration zu Cloud-Speicher |
Seitliche Bewegung
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1485 | Datenlöschung |
Invoke-AtomicTest T1486 | Daten verschlüsselt für Impact |
Invoke-AtomicTest T1490 | System Recovery verhindern |
Invoke-AtomicTest T1498 | Netzwerk-Denial of Service |
Sammlung
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1003.001 -InputArgs @{"output_file"="C:\temp\lsass.dmp"} | Benutzerdefinierte Parameter übergeben |
Invoke-AtomicTest T1087.001 -InputArgs @{"username"="testuser"} | Benutzernamen-Parameter angeben |
Befehl und Kontrolle
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1003.001,T1003.002,T1003.003 | Mehrere Tests ausführen |
| `Get-AtomicTechnique \ | ForEach-Object {Invoke-AtomicTest $_.Technique}` |
Exfiltration
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest T1003.001 -LoggingModule "Attire-ExecutionLogger" | Logging aktivieren |
Invoke-AtomicTest T1003.001 -ExecutionLogPath "C:\logs\atomic.log" | Log-Pfad angeben |
Invoke-AtomicTest T1003.001 -TimeoutSeconds 60 | Ausführungs-Timeout festlegen |
Auswirkung```yaml
Atomic Red Team Configuration
atomics_folder: “C:\AtomicRedTeam\atomics”
log_folder: “C:\AtomicRedTeam\logs”
default_timeout: 120
check_prereqs: true
get_prereqs: false
cleanup: true
### Environment Variables
| Variable | Beschreibung |
|---------|-------------|
| `$env:ATOMIC_RED_TEAM_PATH` | Pfad zum Atomic Red Team-Verzeichnis |
| `$env:ATOMIC_LOG_PATH` | Pfad für Ausführungsprotokolle |
| `$env:ATOMIC_TIMEOUT` | Standard-Timeout für Tests |
## Linux/macOS Usage
### Installation
| Befehl | Beschreibung |
|---------|-------------|
| `git clone https://github.com/redcanaryco/atomic-red-team.git` | Repository klonen |
| `cd atomic-red-team` | Wechseln Sie in das Verzeichnis |
| `chmod +x atomics/*/src/*` | Skripte ausführbar machen |
### Execution
| Befehl | Beschreibung |
|---------|-------------|
| `bash atomics/T1059.004/src/T1059.004.sh` | Bash-basierten Test ausführen |
| `python3 atomics/T1059.006/src/T1059.006.py` | Python-basierten Test ausführen |
| `./atomics/T1083/src/T1083-1.sh` | Spezifische Testvariante ausführen |
## Integration with SIEM
### Splunk Integration
| Befehl | Beschreibung |
|---------|-------------|
| `Invoke-AtomicTest T1003.001 -LoggingModule "Splunk"` | In Splunk protokollieren |
| `index=atomic_red_team technique=T1003.001` | Suche Splunk nach Testergebnissen |
### ELK Stack Integration
| Befehl | Beschreibung |
|---------|-------------|
| `Invoke-AtomicTest T1003.001 -LoggingModule "Elasticsearch"` | Log to Elasticsearch |
## Custom Test Development
### Test Structure
```yaml
attack_technique: T1003.001
display_name: "LSASS Memory"
atomic_tests:
- name: Dump LSASS.exe Memory using ProcDump
auto_generated_guid: 0be2230c-9ab3-4ac2-8826-3199b9a0ebf8
description: |
The memory of lsass.exe is often dumped for offline credential theft attacks.
supported_platforms:
- windows
input_arguments:
output_file:
description: Path where resulting dump should be placed
type: Path
default: C:\Windows\Temp\lsass_dump.dmp
executor:
command: |
procdump.exe -accepteula -ma lsass.exe #{output_file}
name: command_prompt
Custom Test Execution
| Befehl | Beschreibung |
|---|
Invoke-AtomicTest -AtomicsFolder "C:\CustomAtomics" T9999.001 | Benutzerdefinierten Test ausführen |
Reporting and Analysis
| Befehl | Beschreibung |
|---|
Get-AtomicTestResults | Ausführungsergebnisse abrufen |
Export-AtomicTestResults -Format CSV -Path "results.csv" | Exportiere Ergebnisse als CSV |
Get-AtomicCoverage | MITRE ATT&CK Abdeckung anzeigen |
Show-AtomicTestMatrix | Test-Matrix anzeigen |
Automation and Scheduling
PowerShell Scheduled Jobs
$trigger = New-JobTrigger -Daily -At "2:00 AM"
Register-ScheduledJob -Name "AtomicRedTeam" -Trigger $trigger -ScriptBlock {
Import-Module Invoke-AtomicRedTeam
Invoke-AtomicTest T1003.001 -Cleanup
}
Continuous Testing
| Befehl | Beschreibung |
|---|
Start-AtomicContinuousTesting -Techniques @("T1003.001","T1087.001") -Interval 3600 | Tests jede Stunde ausführen |
Security Considerations
- Run tests in isolated environments only
- Ensure proper cleanup after test execution
- Monitor for false positives in security tools
- Document all test executions for compliance
- Use least privilege principles
- Implement proper access controls
- Regular backup before testing
- Coordinate with security operations center
Best Practices
- Start with low-impact techniques
- Always run prerequisite checks first
- Use cleanup functions after testing
- Document test results and observations
- Coordinate with blue team activities
- Test in non-production environments first
- Implement proper logging and monitoring
- Regular updates to test library
- Validate detection capabilities
- Create custom tests for specific environments
Troubleshooting
| Befehl | Beschreibung |
|---|
Get-Help Invoke-AtomicTest -Full | Detaillierte Hilfe erhalten |
Test-AtomicTestInputArgs T1003.001 | Eingabeargumente validieren |
Get-AtomicTestPrerequisites T1003.001 | Voraussetzungen prüfen |
Repair-AtomicTest T1003.001 | Versuchen, Testprobleme zu beheben |
Common Issues
- Antivirus interference with test execution
- Missing prerequisites or dependencies
- Insufficient privileges for test execution
- Network connectivity issues for external resources
- Path-related issues on different operating systems