Invasores podem obter root travando o AccountsService do Ubuntu

Por causa de uma vulnerabilidade, Invasores podem obter root travando o AccountsService do Ubuntu. Confira os detalhes dessa ameaça e da correção.

Uma vulnerabilidade de segurança de escalonamento de privilégio local pode permitir que invasores obtenham acesso root em sistemas Ubuntu, explorando um bug de corrupção de memória double-free no componente AccountsService do GNOME.

Invasores podem obter root travando o AccountsService do Ubuntu

Invasores podem obter root travando o AccountsService do Ubuntu
Invasores podem obter root travando o AccountsService do Ubuntu

AccountsService é um serviço D-Bus que ajuda a manipular e consultar informações anexadas às contas de usuário disponíveis em um dispositivo.

A falha de segurança (um bug de gerenciamento de memória rastreado como CVE-2021-3939) foi acidentalmente detectado pelo pesquisador de segurança do GitHub Kevin Backhouse enquanto testava uma demonstração de exploração para outro bug do AccountsService que também possibilitava escalar privilégios de root em dispositivos vulneráveis.

“O AccountsService pode travar ou executar programas como administrador se receber um comando especialmente criado”, explica um comunicado de segurança do Ubuntu.

O Backhouse descobriu que o AccountsService manipulou incorretamente a memória durante algumas operações de configuração de idioma, uma falha que os invasores locais podem abusar para escalar privilégios.

O bug afeta apenas o fork de AccountsService do Ubuntu. As versões afetadas por esta vulnerabilidade incluem Ubuntu 21.10, Ubuntu 21.04 e Ubuntu 20.04 LTS.

Essa falha de escalonamento de privilégios foi corrigida pela Canonical em novembro, quando as versões do AccountsService 0.6.55-0ubuntu12~20.04.5, 0.6.55-0ubuntu13.3, 0.6.55-0ubuntu14.1 foram lançadas.

Como é de praxe, depois de aplicar as atualizações, você também precisará reiniciar o computador para aplicar as alterações.

Como ele explica, seu exploit de prova de conceito CVE-2021-3939 é lento (pode demorar várias horas) e não funcionará sempre. No entanto, não importa, pois ele pode ser executado até bem-sucedido, visto que o bug double-free permite travar o AccountsService quantas vezes forem necessárias.

A única restrição para explorar esse bug com sucesso é que as falhas do AccountsService são limitadas pela taxa do systemd, bloqueando as tentativas de reiniciá-lo mais de cinco vezes a cada 10 segundos.


“Depende do acaso e do fato de que posso continuar interrompendo o serviço de contas até que tenha sucesso. Mas um invasor se importaria? Ele obtém um shell de root, mesmo que você tenha que esperar algumas horas”, disse Backhouse.

“Para mim, parece mágico que seja possível explorar um bug tão pequeno, especialmente considerando todas as atenuações que foram adicionadas para tornar as vulnerabilidades de corrupção de memória mais difíceis de explorar.”

Mais detalhes sobre como a vulnerabilidade foi encontrada e a exploração desenvolvida estão disponíveis no Backhouse’s CVE-2021-3939 writeup.

No início deste ano, o pesquisador descobriu uma vulnerabilidade de desvio de autenticação no serviço do sistema polkit Linux que permitia que atacantes sem privilégios obtivessem um shell de root na maioria das distros modernas.

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.

Deixe um comentário

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.