Zum Inhalt springen

Atomic Red Team

BefehlBeschreibung
git clone https://github.com/redcanaryco/atomic-red-team.gitClone Atomic Red Team Repository
cd atomic-red-teamNavigieren Sie zum Repository
Install-Module -Name invoke-atomicredteam,powershell-yaml -Scope CurrentUserPowerShell-Module installieren
Import-Module "C:\AtomicRedTeam\invoke-atomicredteam\Invoke-AtomicRedTeam.psd1" -ForcePowerShell-Modul importieren
Invoke-AtomicTest T1003.001 -ShowDetailsTest-Details anzeigen
BefehlBeschreibung
Get-AtomicTechniqueAlle verfügbaren Techniken auflisten
Get-AtomicTechnique -Path "C:\AtomicRedTeam\atomics"Techniken aus bestimmtem Pfad auflisten
`Get-AtomicTechnique \Where-Object {$_.DisplayName -match “credential”}`
Get-AtomicTechnique T1003Details für spezifische Technik abrufen
BefehlBeschreibung
Invoke-AtomicTest T1566.001Spearphishing-Anhang
Invoke-AtomicTest T1566.002Spearphishing-Link
Invoke-AtomicTest T1190Exploit Public-Facing Application
Invoke-AtomicTest T1133Externe Remote Services
Invoke-AtomicTest T1200Hardware-Ergänzungen
BefehlBeschreibung
Invoke-AtomicTest T1059.001PowerShell-Ausführung
Invoke-AtomicTest T1059.003Windows Command Shell
Invoke-AtomicTest T1059.004Unix Shell
Invoke-AtomicTest T1059.006Python-Ausführung
Invoke-AtomicTest T1053.005Geplante Aufgabe/Job
BefehlBeschreibung
Invoke-AtomicTest T1547.001Registry-Ausführungsschlüssel
Invoke-AtomicTest T1053.005Geplante Aufgabe
Invoke-AtomicTest T1543.003Windows-Dienst
Invoke-AtomicTest T1136.001Lokale Kontoerstellung
Invoke-AtomicTest T1098Account-Manipulation
BefehlBeschreibung
Invoke-AtomicTest T1548.002Umgehen der Benutzerkontensteuerung
Invoke-AtomicTest T1055Process Injection
Invoke-AtomicTest T1134Access Token Manipulation
Invoke-AtomicTest T1068Ausnutzung zur Rechteausweitung

Erster Zugang

BefehlBeschreibung
Invoke-AtomicTest T1027Verschleierte Dateien oder Informationen
Invoke-AtomicTest T1070.004Datei-Löschung
Invoke-AtomicTest T1562.001Tools deaktivieren oder ändern
Invoke-AtomicTest T1218.010Regsvr32
Invoke-AtomicTest T1036Maskerade

Ausführung

BefehlBeschreibung
Invoke-AtomicTest T1003.001LSASS Speicherabbild
Invoke-AtomicTest T1003.002Security Account Manager
Invoke-AtomicTest T1003.003NTDS.dit
Invoke-AtomicTest T1110.001Passwort-Spraying
Invoke-AtomicTest T1555.003Anmeldeinformationen aus Webbrowsern

Persistenz

BefehlBeschreibung
Invoke-AtomicTest T1087.001Lokale Kontoermittlung
Invoke-AtomicTest T1087.002Domain Account Discovery
Invoke-AtomicTest T1018Remote System Discovery
Invoke-AtomicTest T1083Datei- und Verzeichnissuche
Invoke-AtomicTest T1057Prozess-Entdeckung

Berechtigungserweiterung

BefehlBeschreibung
Invoke-AtomicTest T1021.001Remote Desktop Protocol
Invoke-AtomicTest T1021.002SMB/Windows Admin-Freigaben
Invoke-AtomicTest T1021.003Distributed Component Object Model
Invoke-AtomicTest T1021.006Windows Remote Management
Invoke-AtomicTest T1550.002Pass the Hash

Verteidigung umgehen

BefehlBeschreibung
Invoke-AtomicTest T1005Daten vom lokalen System
Invoke-AtomicTest T1039Daten vom Network Shared Drive
Invoke-AtomicTest T1113Bildschirmaufnahme
Invoke-AtomicTest T1123Audio Capture
Invoke-AtomicTest T1115Zwischenablage-Daten

Zugangsdaten-Zugriff

BefehlBeschreibung
Invoke-AtomicTest T1071.001Web-Protokolle
Invoke-AtomicTest T1071.004DNS
Invoke-AtomicTest T1090.003Multi-hop Proxy
Invoke-AtomicTest T1573.002Asymmetrische Kryptographie

Erkundung

BefehlBeschreibung
Invoke-AtomicTest T1041Exfiltration über C2-Kanal
Invoke-AtomicTest T1048.003Exfiltration über unverschlüsseltes/verschleiertes Nicht-C2-Protokoll
Invoke-AtomicTest T1567.002Exfiltration zu Cloud-Speicher

Seitliche Bewegung

BefehlBeschreibung
Invoke-AtomicTest T1485Datenlöschung
Invoke-AtomicTest T1486Daten verschlüsselt für Impact
Invoke-AtomicTest T1490System Recovery verhindern
Invoke-AtomicTest T1498Netzwerk-Denial of Service

Sammlung

BefehlBeschreibung
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

BefehlBeschreibung
Invoke-AtomicTest T1003.001,T1003.002,T1003.003Mehrere Tests ausführen
`Get-AtomicTechnique \ForEach-Object {Invoke-AtomicTest $_.Technique}`

Exfiltration

BefehlBeschreibung
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 60Ausfü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

BefehlBeschreibung
Invoke-AtomicTest -AtomicsFolder "C:\CustomAtomics" T9999.001Benutzerdefinierten Test ausführen

Reporting and Analysis

BefehlBeschreibung
Get-AtomicTestResultsAusführungsergebnisse abrufen
Export-AtomicTestResults -Format CSV -Path "results.csv"Exportiere Ergebnisse als CSV
Get-AtomicCoverageMITRE ATT&CK Abdeckung anzeigen
Show-AtomicTestMatrixTest-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

BefehlBeschreibung
Start-AtomicContinuousTesting -Techniques @("T1003.001","T1087.001") -Interval 3600Tests 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

BefehlBeschreibung
Get-Help Invoke-AtomicTest -FullDetaillierte Hilfe erhalten
Test-AtomicTestInputArgs T1003.001Eingabeargumente validieren
Get-AtomicTestPrerequisites T1003.001Voraussetzungen prüfen
Repair-AtomicTest T1003.001Versuchen, 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