Una backdoor su Linux bypassa il firewall per ottenere l’accesso remoto

DiMarco Nisticò

PUBBLICATO IL 14 Mag 2022 ALLE 19:35 - AGGIORNATO IL 13 Maggio 2022 ALLE 19:36 #linux, #sicurezza

BPFDoor è il nome di una backdoor scoperta recentemente e che per oltre 5 anni è rimasta insediata all’interno del sistema operativo Linux. Questo malware permette a un possibile attaccante di eseguire l’accesso da remoto a una shell come root, ottenendo il massimo dei privilegi sulla macchina della vittima e prendendone il pieno controllo.

Il nome della backdoor deriva dal fatto che sfrutta lo sniffer di pacchetti Berkeley Packet Filter, che opera a livello di interfaccia network per tracciare tutto il traffico e reindirizzare i pacchetti verso qualunque destinazione. Essendo inoltre una backdoor passiva, è in grado di rimanere in ascolto su diverse porte in attesa di traffico, che può essere sfruttato per inviare degli specifici comandi al sistema. Operando a così basso livello, riesce a bypassare qualunque protezione via firewall, diventando di fatto pericolosa.

Il ricercatore di sicurezza Kevin Beaumont, che ha pubblicato un post relativo BPFdoor, ha confermato che gli operatori usano una password “magica” per controllare le azioni dell’impianto. BPFdoor analizza solo i pacchetti ICMP, UDP e TCP, controllando per un valore di dati specifico e anche una password per gli ultimi due tipi di pacchetti. Ciò che distingue BPFDoor è che può monitorare qualsiasi porta per il pacchetto contenente questa informazione “magica”, anche se tali porte sono utilizzate da altri servizi legittimi, come server web, FTP o SSH. Se i pacchetti TCP e UDP hanno i dati “magici” giusti e una password corretta, la backdoor entra in azione eseguendo un comando supportato, come l’impostazione di una shell bind o reverse.

bpfdoor backdoor diagramma

Il ricercatore ha inoltre scoperto che i pacchetti ICMP non hanno bisogno di password, in quanto si tratta di pacchetti semplicemente informativi, perciò è stato possibile usare una semplice funzione di ping (che richiede solamente l’indirizzo IP e la porta di destinazione) per verificare se il sistema di destinazione fosse stato colpito o meno da BPFDoor.

Il ricercatore Craig Rowland, che si occupa della gestione intrusioni su sistemi Linux, ha pubblicato un lungo articolo piuttosto tecnico che descrive dettagliatamente come la backdoor è in grado di bypassare il firewall, che noi cercheremo di semplificare per rendere più chiara la lettura. Ecco quindi le azioni che la backdoor intraprende per riuscire ad evadere i controlli:

  • Risiede nella memoria di sistema e implementa l’azione anti-forense, cancellando l’ambiente di processo
  • Carica uno sniffer BPF (Berkeley Packet Filter) che gli consente di lavorare davanti a qualsiasi firewall in esecuzione localmente per visualizzare i pacchetti
  • Modifica le regole “iptables” quando si riceve un pacchetto pertinente per consentire la comunicazione dell’utente malintenzionato attraverso il firewall locale
  • Maschera il pacchetto binario con un nome simile a un comune daemon di sistema Linux
  • Rinomina il pacchetto e lo esegue come /dev/shm/kdmtmpflush
  • Modifica la data del pacchetto binario (timestomping) al 30 ottobre 2008, prima di eliminarlo

Rowland ritiene che una spiegazione per il timestomping, come tecnica anti-forense in questo caso, potrebbe essere che l’attaccante potrebbe cercare di proteggere il binario nel caso in cui la sua cancellazione fallisca oppure per proteggersi da eventuali scansioni basate sulla ricerca per file recenti.

bpfdoor ssh shell

L’aspetto più importante è proprio la modifica delle impostazioni del firewall, che permettono alla backdoor di agire indisturbata e controllare il traffico senza che tale azioni venga rilevata come sospetta. Quando la vittima riceve il pacchetto desiderato, la backdoor modifica le impostazioni di reindirizzamento, portando quindi il pacchetto verso la porta dedicata alla shell. In questo caso viene usato il protocollo TCP con porta 443 (criptata) mentre una volta ottenuto il controllo viene disabilitata ogni protezione del traffico.

Per chiarire ancora di più, Rowland afferma che per una shell locale, il malware modifica la configurazione “iptables” per reindirizzare tutto il traffico proveniente dall’attaccante attraverso una porta legittima a un intervallo di porte definito nel malware. In questo modo, l’utente malintenzionato può scegliere una connessione su qualsiasi porta perché verrebbe instradata alla shell dietro il firewall.

La backdoor BPFDoor sembra abbia origine in Cina, secondo quanto comunicato dai ricercatori della PricewaterhouseCoopers che hanno subito un attacco proprio da questo malware. L’autore dell’attacco è un certo Red Menshen, che ha sfruttato diversi tool di penetration testing per eseguire l’intrusione.

Di Marco Nisticò

Sviluppatore informatico, cerco sempre di stare al passo con i tempi in un mondo ormai circondato dalla tecnologia.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.