Aller au contenu

Équipe rouge atomique

Copier toutes les commandes Générer PDF

Atomic Red Team est une bibliothèque d'essais cartographiée au cadre MITRE ATT&CK que les équipes de sécurité peuvent utiliser pour tester rapidement, de façon portable et reproductible leur environnement.

Installation et configuration

Command Description
git clone https://github.com/redcanaryco/atomic-red-team.git Clone Atomic Red Team repository
cd atomic-red-team Navigate to repository
Install-Module -Name invoke-atomicredteam,powershell-yaml -Scope CurrentUser Install PowerShell modules
Import-Module "C:\AtomicRedTeam\invoke-atomicredteam\Invoke-AtomicRedTeam.psd1" -Force Import PowerShell module
Invoke-AtomicTest T1003.001 -ShowDetails Show test details

Utilisation de base

Command Description
Invoke-AtomicTest T1003.001 Execute specific atomic test
Invoke-AtomicTest T1003.001 -TestNumbers 1 Execute specific test number
Invoke-AtomicTest T1003.001 -ShowDetails Show test details without executing
Invoke-AtomicTest T1003.001 -CheckPrereqs Check prerequisites
Invoke-AtomicTest T1003.001 -GetPrereqs Install prerequisites
Invoke-AtomicTest T1003.001 -Cleanup Run cleanup for test

Découverte d'essai

Command Description
Get-AtomicTechnique List all available techniques
Get-AtomicTechnique -Path "C:\AtomicRedTeam\atomics" List techniques from specific path
Get-AtomicTechnique \| Where-Object {$_.DisplayName -match "credential"} Search techniques by keyword
Get-AtomicTechnique T1003 Get details for specific technique

MITRE ATT&CK Techniques

Accès initial

Command Description
Invoke-AtomicTest T1566.001 Spearphishing Attachment
Invoke-AtomicTest T1566.002 Spearphishing Link
Invoke-AtomicTest T1190 Exploit Public-Facing Application
Invoke-AtomicTest T1133 External Remote Services
Invoke-AtomicTest T1200 Hardware Additions

Exécution

Command Description
Invoke-AtomicTest T1059.001 PowerShell execution
Invoke-AtomicTest T1059.003 Windows Command Shell
Invoke-AtomicTest T1059.004 Unix Shell
Invoke-AtomicTest T1059.006 Python execution
Invoke-AtomicTest T1053.005 Scheduled Task/Job

Persistance

Command Description
Invoke-AtomicTest T1547.001 Registry Run Keys
Invoke-AtomicTest T1053.005 Scheduled Task
Invoke-AtomicTest T1543.003 Windows Service
Invoke-AtomicTest T1136.001 Local Account creation
Invoke-AtomicTest T1098 Account Manipulation

Escalade des privilèges

Command Description
Invoke-AtomicTest T1548.002 Bypass User Account Control
Invoke-AtomicTest T1055 Process Injection
Invoke-AtomicTest T1134 Access Token Manipulation
Invoke-AtomicTest T1068 Exploitation for Privilege Escalation

Évasion de la défense

Command Description
Invoke-AtomicTest T1027 Obfuscated Files or Information
Invoke-AtomicTest T1070.004 File Deletion
Invoke-AtomicTest T1562.001 Disable or Modify Tools
Invoke-AtomicTest T1218.010 Regsvr32
Invoke-AtomicTest T1036 Masquerading

Accès aux titres de créance

Command Description
Invoke-AtomicTest T1003.001 LSASS Memory dump
Invoke-AtomicTest T1003.002 Security Account Manager
Invoke-AtomicTest T1003.003 NTDS.dit
Invoke-AtomicTest T1110.001 Password Spraying
Invoke-AtomicTest T1555.003 Credentials from Web Browsers

Découverte

Command Description
Invoke-AtomicTest T1087.001 Local Account Discovery
Invoke-AtomicTest T1087.002 Domain Account Discovery
Invoke-AtomicTest T1018 Remote System Discovery
Invoke-AtomicTest T1083 File and Directory Discovery
Invoke-AtomicTest T1057 Process Discovery

Mouvement latéral

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

Recouvrement

Command Description
Invoke-AtomicTest T1005 Data from Local System
Invoke-AtomicTest T1039 Data from Network Shared Drive
Invoke-AtomicTest T1113 Screen Capture
Invoke-AtomicTest T1123 Audio Capture
Invoke-AtomicTest T1115 Clipboard Data

Commande et contrôle

Command Description
Invoke-AtomicTest T1071.001 Web Protocols
Invoke-AtomicTest T1071.004 DNS
Invoke-AtomicTest T1090.003 Multi-hop Proxy
Invoke-AtomicTest T1573.002 Asymmetric Cryptography

Exfiltration

Command Description
Invoke-AtomicTest T1041 Exfiltration Over C2 Channel
Invoke-AtomicTest T1048.003 Exfiltration Over Unencrypted/Obfuscated Non-C2 Protocol
Invoke-AtomicTest T1567.002 Exfiltration to Cloud Storage

Impact

Command Description
Invoke-AtomicTest T1485 Data Destruction
Invoke-AtomicTest T1486 Data Encrypted for Impact
Invoke-AtomicTest T1490 Inhibit System Recovery
Invoke-AtomicTest T1498 Network Denial of Service

Utilisation avancée

Paramètres personnalisés

Command Description
Invoke-AtomicTest T1003.001 -InputArgs @{"output_file"="C:\temp\lsass.dmp"} Pass custom parameters
Invoke-AtomicTest T1087.001 -InputArgs @{"username"="testuser"} Specify username parameter

Exécution par lots

Command Description
Invoke-AtomicTest T1003.001,T1003.002,T1003.003 Execute multiple tests
Get-AtomicTechnique \| ForEach-Object {Invoke-AtomicTest $_.Technique} Execute all available tests

Enregistrement et sortie

Command Description
Invoke-AtomicTest T1003.001 -LoggingModule "Attire-ExecutionLogger" Enable logging
Invoke-AtomicTest T1003.001 -ExecutionLogPath "C:\logs\atomic.log" Specify log path
Invoke-AtomicTest T1003.001 -TimeoutSeconds 60 Set execution timeout

Configuration

Fichier de configuration (config.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

Variables d'environnement

Variable Description
$env:ATOMIC_RED_TEAM_PATH Path to Atomic Red Team directory
$env:ATOMIC_LOG_PATH Path for execution logs
$env:ATOMIC_TIMEOUT Default timeout for tests

Utilisation Linux/macOS

Installation

Command Description
git clone https://github.com/redcanaryco/atomic-red-team.git Clone repository
cd atomic-red-team Navigate to directory
chmod +x atomics/*/src/* Make scripts executable

Exécution

Command Description
bash atomics/T1059.004/src/T1059.004.sh Execute bash-based test
python3 atomics/T1059.006/src/T1059.006.py Execute Python-based test
./atomics/T1083/src/T1083-1.sh Execute specific test variant

Intégration avec SIEM

Intégration de spunk

Command Description
Invoke-AtomicTest T1003.001 -LoggingModule "Splunk" Log to Splunk
index=atomic_red_team technique=T1003.001 Search Splunk for test results

ELK Intégration des piles

Command Description
Invoke-AtomicTest T1003.001 -LoggingModule "Elasticsearch" Log to Elasticsearch

Développement de tests personnalisés

Structure d'essai

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_

Exécution du test personnalisé

Command Description
Invoke-AtomicTest -AtomicsFolder "C:\CustomAtomics" T9999.001 Execute custom test

Rapports et analyse

Command Description
Get-AtomicTestResults Get execution results
Export-AtomicTestResults -Format CSV -Path "results.csv" Export results to CSV
Get-AtomicCoverage Show MITRE ATT&CK coverage
Show-AtomicTestMatrix Display test matrix

Automatisation et calendrier

PowerShell programmé Emploi

powershell $trigger = New-JobTrigger -Daily -At "2:00 AM" Register-ScheduledJob -Name "AtomicRedTeam" -Trigger $trigger -ScriptBlock { Import-Module Invoke-AtomicRedTeam Invoke-AtomicTest T1003.001 -Cleanup }_

Essais en continu

Command Description
Start-AtomicContinuousTesting -Techniques @("T1003.001","T1087.001") -Interval 3600 Run tests every hour

Considérations en matière de sécurité

  • Effectuer des essais dans des environnements isolés seulement
  • Assurer un nettoyage approprié après l'exécution des essais
  • Surveiller les faux positifs dans les outils de sécurité
  • Documenter toutes les exécutions expérimentales aux fins de conformité
  • Utiliser les principes de moindre privilège
  • Mettre en place des contrôles d'accès appropriés
  • Sauvegarde régulière avant le test
  • Coordination avec le centre d'opérations de sécurité

Meilleures pratiques

  • Commencez par des techniques à faible impact
  • Toujours effectuer les vérifications préalables d'abord
  • Utiliser les fonctions de nettoyage après essai
  • Documenter les résultats des essais et les observations
  • Coordonner avec les activités de l'équipe bleue
  • Essai dans les environnements hors production d'abord
  • Mettre en œuvre une exploitation et un suivi appropriés
  • Mises à jour régulières pour tester la bibliothèque
  • Valider les capacités de détection
  • Créer des tests personnalisés pour des environnements spécifiques

Dépannage

Command Description
Get-Help Invoke-AtomicTest -Full Get detailed help
Test-AtomicTestInputArgs T1003.001 Validate input arguments
Get-AtomicTestPrerequisites T1003.001 Check prerequisites
Repair-AtomicTest T1003.001 Attempt to fix test issues

Questions communes

  • Interactions antivirus avec l'exécution des tests
  • Prérequis ou dépendances manquants
  • Privilèges insuffisants pour l'exécution des essais
  • Problèmes de connectivité réseau pour les ressources externes
  • Questions liées au cheminement des différents systèmes d'exploitation