
# Vulnerabilità di verifica del server di aggiornamento firmware su Buffalo LS210D versione 1.78-0.03
Christopher J. Pace e Ryan Miller
Il Buffalo LS210D è un server Network Attached Storage (NAS) progettato e commercializzato per piccole imprese e privati. All'interno dell'LS210D è presente la funzionalità di scaricare e installare da remoto un aggiornamento firmware. L'LS210D è vulnerabile a un attacco "Adversary in the Middle", o AitM, in questa funzionalità. Un attaccante che controlla la connessione a monte di una vittima sarà in grado di fornire un nome DNS errato per il server di aggiornamento, oppure di reindirizzare il traffico dal server di aggiornamento a un server dannoso. Questo può portare all'esecuzione di comandi come utente root, o all'installazione diretta di malware.
Il file /etc/init.d/update_notifications.sh viene chiamato dallo script lato server dell'aggiornamento firmware in /www/buffalo/www/dynamic/system/update/BufUpdate.pm. All'interno di update_notifications.sh è presente la seguente riga:

L'apertura di questo file xml rivela che il file XML stesso punta anche a una connessione solo HTTP:

Inoltre, anche questo file zip non è crittografato. Ricerche precedenti su questo modello ci hanno indirizzato verso il download di un'utilità manuale di aggiornamento firmware, che includeva un file zip protetto da password. Il file linkstation_series_1.75-0.01.zip non contiene queste protezioni. All'interno dell'archivio è presente il file hddrootfs.buffalo.updated, che contiene l'archivio hddrootfs.buffalo, che contiene il filesystem root per l'LS120D. Un attaccante può visualizzare e modificare direttamente questo file zip per includere il proprio malware o leggere file sensibili.

Una volta che un attaccante ha eseguito un attacco AitM, il router offrirà volentieri di installare il firmware aggiornato. Ecco un esempio di tale attacco, con lo schermo a destra che mostra le modifiche necessarie a fw_info2.xml, ovvero l'aggiunta di 0x0000001D al tag productId e l'incremento del tag del tipo di versione a una versione superiore a quella del firmware della vittima (1.78-0.04 in questo caso).

