
Avviso di sicurezza per la vulnerabilità di buffer overflow in TOTOLINK a720r
Fornitore: TOTOLINK
Sito web del fornitore: TOTOLINK
Modello: A720R
Versione del firmware: V4.1.5cu.630_B20250509
Indirizzo di download del firmware: TOTOLINK
Punteggio base CVSS v4.0: 9.4 (Critico)
Vettore: CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:P
Nel binario del firmware cstecgi.cgi è presente un buffer overflow basato sullo stack che consente a un amministratore autenticato di dirottare il flusso di controllo del processo ed eseguire percorsi di codice esistenti all'interno del binario. La vulnerabilità può essere attivata inviando una richiesta appositamente costruita al gestore setMacFilterRules contenente un valore eccessivamente lungo del parametro desc, che viene copiato in un buffer di stack a dimensione fissa tramite strcpy() senza alcun controllo dei limiti, sovrascrivendo l'indirizzo di ritorno salvato.

Il codice vulnerabile si trova all'interno del binario cstecgi.cgi, dove il valore fornito di desc viene copiato in un buffer di stack senza validazione della lunghezza, consentendo di sovrascrivere l'indirizzo di ritorno salvato e di reindirizzare il flusso di controllo del programma. Poiché il binario è compilato senza stack canary e senza PIE, l'overflow passa inosservato e l'esecuzione può essere reindirizzata in modo affidabile verso codice residente a indirizzi fissi all'interno del binario.


Sovrascrivendo l'indirizzo di ritorno salvato, il flusso di controllo è stato reindirizzato verso funzioni esistenti all'interno del binario. Ciò è stato dimostrato invocando una chiamata sleep(2) (confermando il controllo affidabile del puntatore all'istruzione tramite un ritardo misurabile nella risposta del dispositivo), la routine di riavvio del sistema, la funzione di logout della sessione e la routine di cancellazione dei log.


Il flusso di controllo è stato ulteriormente reindirizzato verso la routine responsabile dell'avvio del servizio Telnet, abilitando Telnet sul dispositivo.

Di conseguenza, un attaccante autenticato con accesso di rete al dispositivo di destinazione può dirottare il flusso di esecuzione del processo cstecgi.cgi ed eseguire percorsi di codice arbitrari all'interno del binario, compromettendo la riservatezza, l'integrità e la disponibilità del dispositivo.
Queste vulnerabilità sono state segnalate da Nicola Giuffrida.