A Microsoft descobriu várias vulnerabilidades que afetam computadores desktop Linux. as vulnerabilidades, coletivamente apelidado de Nimbuspwn, podem ser encadeados para alcançar a elevação de privilégios e, posteriormente, executar vários payloads maliciosos, como um backdoor raiz, via execução remota de código raiz arbitrário. Identificado como CVE-2022-29799 e CVE-2022-29800, as falhas poderiam ser usadas como vetor para acesso root em mais ataques sofisticados, incluindo malware e ransomware.
Como a Microsoft descobriu as explorações do Nimbuspwn?
A Microsoft descobriu as vulnerabilidades ouvindo mensagens no barramento do sistema enquanto revisava o código e realizava análises dinâmicas em serviços executados como root. Foi assim que os pesquisadores notaram “um padrão estranho em uma unidade systemd chamada networkd-dispatcher”. Depois de analisar atentamente o código, vários problemas de segurança foram descobertos, incluindo passagem de diretório, corrida de links simbólicos, e problemas de condição de corrida de tempo de verificação de tempo de uso. A descoberta foi compartilhada “com os mantenedores relevantes por meio da Divulgação Coordenada de Vulnerabilidades (CVD) via pesquisa de vulnerabilidade de segurança da Microsoft (MSVR).” Correções já estão disponíveis, graças ao mantenedor da unidade networkd-displatcher, Clayton Craft.
Vulnerabilidades CVE-2022-29799 e CVE-2022-29800
O pesquisador da Microsoft Jonathan Bar Or revisou o código-fonte do networkd-dispatcher e notou que um componente, conhecido como “_run_hooks_for_state” implementa uma lógica específica que deixa os sistemas Linux abertos à vulnerabilidade de passagem de diretório, ou CVE-2022-29799. Descobriu-se que o componente “_run_hooks_for_state” não usava funções que higienizassem adequadamente os estados usados para construir o caminho de script adequado. Como um resultado, os agentes de ameaças podem aproveitar a fraqueza para sair do diretório base “/etc/networkd-dispatcher”.
Contudo, run-hooks_for_state contém uma segunda vulnerabilidade, conhecido como CVE-2022-29800, o que deixa os sistemas Linux vulneráveis à condição de corrida TOCTOU. Isso é possível devido a um certo tempo entre os scripts sendo descobertos e os scripts sendo executados. Hackers podem aproveitar o CVE-2022-29800 para substituir scripts que o networkd-dispatcher acredita ser de propriedade do root por scripts maliciosos.
Os atores de ameaças podem encadear as duas vulnerabilidades para obter acesso total à raiz. Mais detalhes técnicos estão disponíveis em relatório da Microsoft.