Nel pacchetto pppd (), che consente di eseguire il proprio codice inviando richieste di autenticazione appositamente formattate ai sistemi che utilizzano il protocollo PPP (Point-to-Point Protocol) o PPPoE (PPP over Ethernet). Questi protocolli sono comunemente utilizzati dai provider per gestire le connessioni tramite Ethernet o DSL, e sono anche utilizzati in alcune VPN (ad esempio, pptpd e ). Per verificare la vulnerabilità dei propri sistemi prototipo dell'exploit.
La vulnerabilità è causata da un buffer overflow nell'implementazione del protocollo di autenticazione EAP (Extensible Authentication Protocol). L'attacco può essere effettuato prima dell'autenticazione inviando un pacchetto di tipo EAPT_MD5CHAP, contenente un nome host molto lungo, che non rientra nel buffer allocato. A causa di un errore nel codice di controllo della dimensione del campo rhostname, l'attaccante può sovrascrivere i dati oltre il buffer nello stack e ottenere l'esecuzione remota del proprio codice con privilegi di root. La vulnerabilità si manifesta sia dal lato server che dal lato client, ovvero può essere attaccato non solo il server, ma anche il client che cerca di connettersi a un server controllato dall'attaccante (ad esempio, l'attaccante può prima compromettere un server tramite la vulnerabilità e poi iniziare a colpire i clienti che si connettono).
Il problema riguarda le versioni dalla 2.4.2 alla 2.4.8 inclusa ed è stato risolto nella forma . La vulnerabilità si presenta anche in lo stack , ma nella configurazione predefinita in lwIP, il supporto per EAP non è abilitato.
Lo stato della risoluzione del problema nelle distribuzioni può essere visualizzato a queste pagine: , , , , , , , . In RHEL, OpenWRT e SUSE, il pacchetto pppd è compilato con l'attivazione della protezione "Stack Smashing Protection" (modalità "-fstack-protector" in gcc), che limita l'exploitation attraverso i crash. Oltre alle distribuzioni, la vulnerabilità è stata confermata anche in alcuni prodotti. (CallManager), e Synology (DiskStation Manager, VisualStation VS960HD e Router Manager), che utilizzano il codice pppd o lwIP.
Fonte: opennet.ru
