Salta ai contenuti

Atomic Red Team

ComandoDescrizione
git clone https://github.com/redcanaryco/atomic-red-team.gitClona repository di Atomic Red Team
cd atomic-red-teamVai al repository
Install-Module -Name invoke-atomicredteam,powershell-yaml -Scope CurrentUserInstallare moduli PowerShell
Import-Module "C:\AtomicRedTeam\invoke-atomicredteam\Invoke-AtomicRedTeam.psd1" -ForceImporta modulo PowerShell
Invoke-AtomicTest T1003.001 -ShowDetailsMostra dettagli test
ComandoDescrizione
Get-AtomicTechniqueElenca tutte le tecniche disponibili
Get-AtomicTechnique -Path "C:\AtomicRedTeam\atomics"Elenca tecniche dal percorso specifico
`Get-AtomicTechnique \Where-Object {$_.DisplayName -match “credential”}`
Get-AtomicTechnique T1003Ottieni dettagli per tecnica specifica
ComandoDescrizione
Invoke-AtomicTest T1566.001Allegato di Spearphishing
Invoke-AtomicTest T1566.002Spearphishing Link
Invoke-AtomicTest T1190Sfruttare Applicazione Esposta Pubblicamente
Invoke-AtomicTest T1133Servizi Remoti Esterni
Invoke-AtomicTest T1200Aggiunte Hardware
ComandoDescrizione
Invoke-AtomicTest T1059.001Esecuzione di PowerShell
Invoke-AtomicTest T1059.003Windows Command Shell
Invoke-AtomicTest T1059.004Unix Shell
Invoke-AtomicTest T1059.006Esecuzione Python
Invoke-AtomicTest T1053.005Attività/Job pianificata
ComandoDescrizione
Invoke-AtomicTest T1547.001Chiavi di Esecuzione del Registry
Invoke-AtomicTest T1053.005Attività Pianificata
Invoke-AtomicTest T1543.003Servizio Windows
Invoke-AtomicTest T1136.001Creazione Account Locale
Invoke-AtomicTest T1098Manipolazione Account
ComandoDescrizione
Invoke-AtomicTest T1548.002Bypassa Controllo Account Utente
Invoke-AtomicTest T1055Process Injection
Invoke-AtomicTest T1134Manipolazione del Token di Accesso
Invoke-AtomicTest T1068Sfruttamento per Escalation dei Privilegi
ComandoDescrizione
Invoke-AtomicTest T1027File o Informazioni Offuscati
Invoke-AtomicTest T1070.004Eliminazione File
Invoke-AtomicTest T1562.001Disabilita o Modifica Tools
Invoke-AtomicTest T1218.010Regsvr32
Invoke-AtomicTest T1036Mascheramento
ComandoDescrizione
Invoke-AtomicTest T1003.001Dump della memoria di LSASS
Invoke-AtomicTest T1003.002Security Account Manager
Invoke-AtomicTest T1003.003NTDS.dit
Invoke-AtomicTest T1110.001Password Spraying
Invoke-AtomicTest T1555.003Credenziali dai Browser Web
ComandoDescrizione
Invoke-AtomicTest T1087.001Individuazione Account Locali
Invoke-AtomicTest T1087.002Individuazione Account di Dominio
Invoke-AtomicTest T1018Scoperta di Sistema Remoto
Invoke-AtomicTest T1083Individuazione di File e Directory
Invoke-AtomicTest T1057Scoperta del Processo
ComandoDescrizione
Invoke-AtomicTest T1021.001Remote Desktop Protocol
Invoke-AtomicTest T1021.002SMB/Windows Admin Shares
Invoke-AtomicTest T1021.003Distributed Component Object Model
Invoke-AtomicTest T1021.006Windows Remote Management
Invoke-AtomicTest T1550.002Pass the Hash
ComandoDescrizione
Invoke-AtomicTest T1005Dati dal Sistema Locale
Invoke-AtomicTest T1039Dati da Network Shared Drive
Invoke-AtomicTest T1113Cattura dello schermo
Invoke-AtomicTest T1123Cattura Audio
Invoke-AtomicTest T1115Dati Clipboard
ComandoDescrizione
Invoke-AtomicTest T1071.001Protocolli Web
Invoke-AtomicTest T1071.004DNS
Invoke-AtomicTest T1090.003Proxy Multi-hop
Invoke-AtomicTest T1573.002Crittografia Asimmetrica
ComandoDescrizione
Invoke-AtomicTest T1041Esfiltrazione su Canale C2
Invoke-AtomicTest T1048.003Esfiltrazione su Protocollo Non-C2 Non Crittografato/Offuscato
Invoke-AtomicTest T1567.002Esfiltrazione su Cloud Storage
ComandoDescrizione
Invoke-AtomicTest T1485Distruzione dei Dati
Invoke-AtomicTest T1486Dati Crittografati per Impact
Invoke-AtomicTest T1490Inibisci Recovery del Sistema
Invoke-AtomicTest T1498Denial of Service di Rete
ComandoDescrizione
Invoke-AtomicTest T1003.001 -InputArgs @{"output_file"="C:\temp\lsass.dmp"}Passa parametri personalizzati
Invoke-AtomicTest T1087.001 -InputArgs @{"username"="testuser"}Specificare il parametro username
ComandoDescrizione
Invoke-AtomicTest T1003.001,T1003.002,T1003.003Esegui più test
`Get-AtomicTechnique \ForEach-Object {Invoke-AtomicTest $_.Technique}`
ComandoDescrizione
Invoke-AtomicTest T1003.001 -LoggingModule "Attire-ExecutionLogger"Abilitare la registrazione
Invoke-AtomicTest T1003.001 -ExecutionLogPath "C:\logs\atomic.log"Specificare il percorso del log
Invoke-AtomicTest T1003.001 -TimeoutSeconds 60Imposta timeout di esecuzione
# 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

VariabileDescrizione
$env:ATOMIC_RED_TEAM_PATHPercorso della directory di Atomic Red Team
$env:ATOMIC_LOG_PATHPercorso per i log di esecuzione
$env:ATOMIC_TIMEOUTTimeout predefinito per i test

Linux/macOS Usage

Installation

ComandoDescrizione
git clone https://github.com/redcanaryco/atomic-red-team.gitClona repository
cd atomic-red-teamVai nella directory
chmod +x atomics/*/src/*Rendere gli script eseguibili

Execution

ComandoDescrizione
bash atomics/T1059.004/src/T1059.004.shEsegui test basati su bash
python3 atomics/T1059.006/src/T1059.006.pyEsegui test basati su Python
./atomics/T1083/src/T1083-1.shEsegui variante di test specifica

Integration with SIEM

Splunk Integration

ComandoDescrizione
Invoke-AtomicTest T1003.001 -LoggingModule "Splunk"Log su Splunk
index=atomic_red_team technique=T1003.001Cerca Splunk per risultati di test

ELK Stack Integration

ComandoDescrizione
Invoke-AtomicTest T1003.001 -LoggingModule "Elasticsearch"Log su Elasticsearch

Custom Test Development

Test Structure

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

ComandoDescrizione
Invoke-AtomicTest -AtomicsFolder "C:\CustomAtomics" T9999.001Esegui test personalizzato

Reporting and Analysis

ComandoDescrizione
Get-AtomicTestResultsOttieni risultati di esecuzione
Export-AtomicTestResults -Format CSV -Path "results.csv"Esporta risultati in CSV
Get-AtomicCoverageMostra la copertura MITRE ATT&CK
Show-AtomicTestMatrixVisualizza matrice di test

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

ComandoDescrizione
Start-AtomicContinuousTesting -Techniques @("T1003.001","T1087.001") -Interval 3600Esegui test ogni ora

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

ComandoDescrizione
Get-Help Invoke-AtomicTest -FullOttieni aiuto dettagliato
Test-AtomicTestInputArgs T1003.001Convalidare gli argomenti di input
Get-AtomicTestPrerequisites T1003.001Verificare i prerequisiti
Repair-AtomicTest T1003.001Cerca di risolvere i problemi dei test

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