Vulnerabilità in pppd e lwIP che consente l'esecuzione di codice remoto con privilegi di root

Nel pacchetto pppd identificato vulnerabilità (CVE-2020-8597), consentendoti di eseguire il tuo codice inviando richieste di autenticazione appositamente progettate ai sistemi che utilizzano il protocollo PPP (Point-to-Point Protocol) o PPPoE (PPP over Ethernet). Questi protocolli vengono solitamente utilizzati dai provider per organizzare le connessioni tramite Ethernet o DSL e vengono utilizzati anche in alcune VPN (ad esempio pptpd e openfortivpn). Per verificare se i tuoi sistemi sono interessati dal problema preparato sfruttare il prototipo.

La vulnerabilità è causata da un buffer overflow nell'implementazione del protocollo di autenticazione EAP (Extensible Authentication Protocol). L'attacco può essere effettuato in fase di pre-autenticazione inviando un pacchetto di tipo EAPT_MD5CHAP, contenente un nome host molto lungo che non entra nel buffer allocato. A causa di un bug nel codice per il controllo della dimensione del campo rhostname, un utente malintenzionato potrebbe sovrascrivere i dati all'esterno del buffer sullo stack e ottenere l'esecuzione remota del proprio codice con diritti di root. La vulnerabilità si manifesta sul lato server e lato client, ad es. Non solo il server può essere attaccato, ma anche un client che tenta di connettersi a un server controllato dall'aggressore (ad esempio, un utente malintenzionato può prima hackerare il server sfruttando una vulnerabilità e quindi iniziare ad attaccare i client che si connettono).

Il problema riguarda le versioni ppp da 2.4.2 a 2.4.8 compreso ed eliminato nel modulo toppa. Anche la vulnerabilità colpisce pila lwIP, ma la configurazione predefinita in lwIP non abilita il supporto EAP.

Lo stato della risoluzione del problema nei kit di distribuzione può essere visualizzato in queste pagine: Debian, Ubuntu, RHEL, Fedora, SUSE, OpenWRT, Arco, NetBSD. Su RHEL, OpenWRT e SUSE, il pacchetto pppd è creato con la protezione "Stack Smashing Protection" abilitata (la modalità "-fstack-protector" in gcc), che limita lo sfruttamento al fallimento. Oltre che nelle distribuzioni, la vulnerabilità è stata confermata anche in alcuni prodotti Cisco (Gestore delle chiamate) TP-LINK e Synology (DiskStation Manager, VisualStation VS960HD e Router Manager) utilizzando il codice pppd o lwIP.

Fonte: opennet.ru

Aggiungi un commento