Shellshock su QNAP. Verifica e rimozione del malware

shellshockerOgni tanto capita qualche sfiga. Capita anche ai migliori. Bash per esempio è la shell di default su praticamente qualunque sistema GNU/Linux. Lo è dalla sua nascita, fai una quindicina d’anni va’.

Da qualche tempo è uscita fuori una vulnerabilità grave di Bash (Bourne Again Shell) che consente ad un malintenzionato con una particolare sequenza di caratteri di scalare la piramide dei privilegi di un sistema a cui non ha accesso.

Verifica

Se il vostro QNAP ha una versione < 4.1.1 build 1003 del firmware potreste essere stati vittima di qualche malware che sfrutta la vulnerabilità chiamata Shellshock.

Per verificare se il vostro sistema è stato infettato dovreste verificare alcune cose, nell’ordine:

  •  Ottenere un prompt dei comandi nella forma [admin@NAS-NAME ~] al posto di [~] quando ci si connette via SSH (ssh admin@ip.del.nas)
  • Esiste una cartella optware nella cartella del volume principale (di solito /share/MD0_DATA/ )
  • Ci sono uno o più utenti che hanno strani nomi nel sistema (tipo “request”), che si evincono da un:
    cat /etc/shadow
    cat /etc/passwd

    entrambi con  privilegi di root.

  • Processi in esecuzione perlomeno sospetti, a seguito di un:
    ps |grep cgi

    che nel mio caso ha restituito la seguente lista:


Se non avete accesso a SSH perché ottenete connection refused allora forse dovestre leggere il suggerimento qua.

Se avete riscontrato questa serie di stranezze state pur certi di essere vittima di un malware che sfrutta ShellShock per infettare la macchina.

Azioni Correttive

Per ripristinare una condizione di normalità è possibile agire in maniera manuale o automatica. La prima consente di rimuovere il malware e di ripristinare il software aggiornato, la seconda di backuppare i dati e ripulire la macchina con un’installazione pulita del “ab initio“.

Mi rendo conto che la seconda via sia la più sicura e sicuramente l’affronteremo, ma per lo meno per adesso mettiamo il culo in cassaforte vedendo cosa ha infettato la macchina e rimuovendo tutte le parti potenzialmente nocive.

Prima di tutto montiamo la partizione su una directory temporanea

mount /dev/mtdblock5 /tmp/config

Ora controlliamo il file autorun.sh alla ricerca di informazioni potenzialmente dannose:

Mmmm…sembra proprio che il malware abbia riscritto le informazioni più importanti della macchina in maniera quantomeno inquietante. La prospettiva di sapere che i miei dati sono potenzialmente alla mercé di chicchessia non è proprio edificante…
Operiamo subito un

rm /tmp/config/autorun.sh

Poi questo verrà ripristinato non appena aggiorneremo il firmware.
Ora possiamo smontare il file system

umount /tmp/config

e rimuovere la cartella sospetta con un veloce:

rm -r /share/MD0_DATA/optware

La cartella dovrebbe esistere (come abbiamo verificato al punto precedente).

Ora dovreste rimuovere tutti gli utenti non desiderati del sistema dall’interfaccia di amministrazione del NAS. Da Impostazioni Provilegi->Utenti dovreste trovarvi uno o più utenti chiamati “request”. Selezionate e rimuovete con i relativi dati associati, come in figura:

Lista utenti QNAP

Lista utenti QNAP

Ora potete riavviare il server, anche dall’interfaccia web.
Ora dovreste essere perlomeno al sicuro, ma non basta: è fondamentale che aggiorniate il QNAP quanto prima alla versione >= 4.1.1 build 1103. Per fare questo potete dirigervi dall’interfaccia web in Impostazioni Sistema->Aggiornamento Firmware e fare tutto in automatico oppure scaricare il firmware da qua e caricarlo manualmente.

Al riavvio del sistema (operazione che nel mio caso è durata circa un’oretta) dovreste trovare tutto come prima compresa la possibilità di loggarvi via SSH.

Suggerimento

Qualora, come è successo a me, non doveste essere in grado di connettervi alla macchina via SSH (il malware ha inibito anche questo accesso che era attivo al momento dell’infezione) pregate di avere disattivo almeno Telnet (io lo tengo off per ovvie ragioni di sicurezza). In tal caso attivatelo sulla porta 13131 come in figura:

Come attivare telnet

Come attivare telnet

A questo punto, potete loggarvi sul vostro nas con:

telnet ip.del.nas 13131

dovreste essere in grado di loggarvi. Al termine della procedura ricordate di disabilitare l’accesso via Telnet che, ricordo avviene in modalità non criptata, e quindi potenzialmente non sicura nel caso in cui il QNAP abbia dei servizi esposti all’esterno della vostra LAN.

Fonte [QNAP Security Bulletin]

2 thoughts on “Shellshock su QNAP. Verifica e rimozione del malware

  1. Grazie per l’articolo: proprio oggi il mio QNAP mi ha suggerito di installare un “malware remover” della QNAP. Terminata l’esecuzione mi ha detto che ha messo in quarantine DUE malware (non uno … due!). Avevo l’ultimo firmware; installato appena l’appliance me lo ha suggerito …

    Diavolo.

Leave a Reply

Your email address will not be published. Required fields are marked *