
Vulnerabilità di escalation dei privilegi sui router ASKEY
CVE-2022-47040
Vulnerabilità di escalation dei privilegi sui router ASKEY
Dispositivo: ASKEY RTF3505VW-N1
Firmware: BR_SV_g000_R3505VMN1001_s32_7 (non testato in altre versioni)
Versione CLI: Reduced_CLI_HGU_v13
Exploit:
I dispositivi ASKEY RTF3505VW-N1 forniscono l'accesso tramite ssh a una shell predefinita ristretta:

La shell ristretta ha accesso a una "Reduced_CLI" e l'ambiente è limitato per evitare l'esecuzione della maggior parte dei comandi linux/unix.

Il comando "tcpdump" è presente nella shell ristretta e non gestisce correttamente il flag -z, quindi può essere utilizzato per escalare i privilegi creando un file locale nella directory /tmp del router e iniettando pacchetti attraverso la porta 80 (usata per la GUI Web del router) con la stringa ";/bin/bash" in modo che venga eseguita da "-z sh". Utilizzando ";/bin/bash" come stringa iniettata possiamo avviare una console busybox/ash.
Come si vede nelle immagini successive, impostiamo una "nc" in ascolto sulla porta 4444 ed eseguiamo uno script Bash/Expect con l'exploit:

La reverse shell viene creata per ottenere una connessione stabile con il router:

È quindi possibile escalare i privilegi avviando una console completamente interattiva con privilegi di root (vedi immagine successiva):

Tramite questa escalation possiamo modificare il contenuto di /etc/passwd (/var/passwd), creare nuovi utenti, accedere a dati/file riservati o modificare in modo permanente qualsiasi altra risorsa di sistema.
L'utente "support" è stampato sul retro del router. In alcuni casi, questi router utilizzano credenziali predefinite.