Ogni 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:
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:
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]
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.
A volte capita, anche a me ha colto di sorpresa, grazie per il commento