Um especialista da Microsoft descobriu vulnerabilidades em sistemas Linux, cuja exploração permite obter rapidamente direitos de superusuário.
No total, duas vulnerabilidades foram descobertas (CVE-2022-29799 e CVE-2022-29800) e unidos sob o nome comum Nimbuspwn.
Problemas são encontrados no componente networkd-dispatcher de muitas distribuições Linux, que despacha alterações de status da rede e pode executar vários scripts para responder ao novo status. Quando o sistema do computador está ligado, networkd-dispatcher começa com direitos de superusuário.
Por falar nisso, nós escrevemos isso O Google oferece até $91,000 para vulnerabilidades do Linux …ei, Cara da Microsoft, O dinheiro do Google está aqui!
As vulnerabilidades descobertas combinam passagem de diretório, corrida de link simbólico, e a TOCTOU (tempo de verificação tempo de uso) erro. Depois de examinar o código-fonte do networkd-dispatcher, O pesquisador da Microsoft, Jonathan Bar Or, notou que o “_run_hooks_for_state” componente implementa a seguinte lógica:
- Encontra a lista de scripts disponíveis usando o método get_script_list para chamar um método scripts_in_path separado para retornar todos os arquivos armazenados no “/etc/networkd-dispatcher/.d” diretório.
- Classifica a lista de scripts.
- Executa cada script com um processo subprocess.Popen e fornece variáveis de ambiente personalizadas.
Você também pode estar interessado nas seguintes informações: Lista de especialistas 15 vulnerabilidades Linux mais atacadas.
Run_hooks_for_state expõe sistemas Linux à vulnerabilidade de passagem de diretório (CVE-2022-29799) porque nenhuma das funções que ele usa limpa adequadamente os estados usados para construir o caminho correto do script a partir de entradas maliciosas. Os hackers podem usar a vulnerabilidade para sair do “/etc/networkd-dispatcher” diretório.
Run-hooks_for_state também contém um CVE-2022-29800 vulnerabilidade que torna os sistemas vulneráveis a uma condição de corrida TOCTOU, pois um determinado período de tempo decorre entre a detecção de scripts e sua execução. Um invasor pode usar esta vulnerabilidade para substituir scripts que o networkd-dispatcher acredita pertencerem ao usuário root, com scripts maliciosos.
O pesquisador também encontrou vários processos em execução como usuário da rede systemd, que tem permissão para usar o nome do barramento necessário para executar código arbitrário a partir de locais graváveis.
Os processos vulneráveis incluem vários plug-ins gpgv que são executados quando o apt-get é instalado ou atualizado, e o daemon Erlang Port Mapper, que permite que código arbitrário seja executado em alguns scripts.
A vulnerabilidade no networkd-dispatcher foi corrigida, mas não se sabe quando e em que versão. Usuários Linux é altamente recomendável atualizar para a versão mais recente.