[Aggiornamento del 4-9-2009]
L’advisory 975191 è stato aggiornato, come segnalato nel post del MSRC, per tener conto di nuovi fattori di rischio:
Tutto questo porta a dire che l’unico workaround efficace per proteggersi da qualunque tipologia di attacco è, in questo momento, la disabilitazione del servizio FTP o l’installazione di FTP 7.5 ove possibile.
Gli altri workaround sono in grado di prevenire la Remote Code Execution ma non il Denial of Service.
Maggiori informazioni sulle versioni di FTP disponibili sono presenti sul blog di IIS.
Integrando le varie informazioni, la tabella seguente dovrebbe riassumere i possibili impatti:
Andrea
[Post del 2-9-2009]
In nottata è stato pubblicato il Microsoft Security Advisory (975191) - Vulnerability in Internet Information Services FTP Service Could Allow for Remote Code Execution".
Si tratta di un advisory relativo ad una vulnerabilità del servizio FTP di Internet Information Services, nelle versioni presenti su Windows 2000, Windows XP e Windows 2003.
La vulnerabilità, che purtroppo è già stata resa nota pubblicamente con tanto di codice dettagliato per l’exploit, è legata uno stack buffer overflow nel servizio FTP che non valida correttamente le richieste di nomi di directory particolarmente lunghe e codificate appropriatamente. I privilegi ottenibili dall’utente che sfrutta la vulnerabilità sono quelli con cui gira il servizio FTP, quindi normalmente Local System.
La vulnerabilità è sfruttabile solo in particolari configurazioni (anche se non particolarmente difficili da riscontrare normalmente presso i clienti):
Se questi due fattori sono verificati allora un utente (autenticato o meno a seconda che sul servizio FTP sia disabilitato o meno l’accesso anonimo) che ha accesso al servizio FTP può tentare di sfruttare con successo la vulnerabilità.
A prima vista i sistemi più esposti sono quelli che utilizzano Windows 2000, dove di default il servizio FTP attivo, anche se, sempre nella configurazione di default, non è permesso l’accesso in scrittura.
L’installazione di FTP su Windows XP non dovrebbe risultare prassi comune.
Infine su Windows Server 2003 il rischio è mitigato dalla compilazione del prodotto tramite l’opzione /GS, che protegge dall’exploit tramite l’interruzione del servizio FTP nel momento in cui il sistema è soggetto all’overflow causato dall’attacco.
Un dubbio che potrebbe sorgere è legato al fatto che l’exploit richiede che l’utente abbia prima accesso al servizio FTP autenticandosi al servizio stesso, quindi si potrebbe pensare che il rischio sia legato solo a possibili attacchi da parte di utenti con credenziali valide. In realtà, poichè normalmente l’autenticazione su FTP avviene trasmettendo in chiaro le credenziali, si preferisce spesso abilitare l’accesso anonimo (meglio sarebbe proteggere il traffico FTP con un canale protetto e criptato).
I possibili workaround per proteggersi dalla vulnerabilità sono dettagliati nell’advisory 975191 e nell’eccellento post del blog Security Reserche & Defense che vi invito caldamente a consultare. I workaround sono volti a prevenire la scrittura di directory su FTP, e si possono così riassumere:
Dei tre workaround il secondo è sicuramente quello più fine e meno invasivo poichè permette comunque di continuare ad accedere al servizio FTP e di fare upload di file, negando la sola possibilità di creare directory.
Il tutto, ovviamente, in attesa del rilascio di un aggiornamento di sicurezza.
Risorse utili:
· Microsoft Security Advisory 975191 - Vulnerability in Internet Information Services FTP Service Could Allow for Remote Code Execution: http://www.microsoft.com/technet/security/advisory/975191.mspx
· Microsoft Knowledge Base Article 975191: http://support.microsoft.com/kb/975191
· Microsoft Security Response Center (MSRC) Blog: http://blogs.technet.com/msrc/
· Microsoft Security Research & Defense (SRD) Blog: http://blogs.technet.com/srd/