Falha de 7 anos permite que usuários de Linux desprivilegiados ganhem acesso root

Views: 372
0 0
Read Time:2 Minute, 28 Second

Uma vulnerabilidade de escalada de privilégios de sete anos descoberta no serviço do sistema de polca pode ser explorada por um invasor local não-privilegiado malicioso para contornar a autorização e escalar permissões ao usuário raiz.

Rastreada como CVE-2021-3560 (pontuação CVSS: 7.8), a falha afeta versões de polca entre 0,113 e 0,118 e foi descoberta pelo pesquisador de segurança do GitHub Kevin Backhouse, que disse que o problema foi introduzido em um compromisso de código feito em 9 de novembro de 2013. Cedric Buissart, da Red Hat, observou que as distribuições baseadas no Debian, baseadas na polca 0,105, também são vulneráveis.

Polkit (née PolicyKit) é um kit de ferramentas para definir e lidar com autorizações em distribuições Linux, e é usado para permitir que processos não desprivilegiados se comuniquem com processos privilegiados.

“Quando um processo de solicitação se desconecta do dbus-daemon pouco antes do início da chamada para polkit_system_bus_name_get_creds_sync, o processo não pode obter um uid e pid únicos do processo e não pode verificar os privilégios do processo de solicitação”, disse a Red Hat em um comunicado. “A maior ameaça dessa vulnerabilidade é a confidencialidade e integridade dos dados, bem como a disponibilidade do sistema.”

RHEL 8, Fedora 21 (ou mais tarde), Debian “Bullseye” e Ubuntu 20.04 são algumas das distribuições linux populares impactadas pela vulnerabilidade das polcas. O problema foi mitigado na versão 0.119,que foi lançada em 3 de junho.

gain root-level access

“A vulnerabilidade é surpreendentemente fácil de explorar. Basta alguns comandos no terminal usando apenas ferramentas padrão como bash, killdbus-send”,disse Backhouse em uma redação publicada ontem, acrescentando que a falha é acionada enviando um comando dbus-send (digamos, para criar um novo usuário), mas encerrando o processo enquanto a polca ainda está no meio do processamento da solicitação.

“dbus-send” é um mecanismo de comunicação interprocesso Linux (IPC) que é usado para enviar uma mensagem para o barramento de mensagens D-Bus, permitindo a comunicação entre vários processos rodando simultaneamente na mesma máquina. A autoridade política da Polkit é implementada como um serviço conectado ao barramento do sistema para autenticar credenciais com segurança.

Ao matar o comando, causa um desvio de autenticação porque polkit manipula mal a mensagem rescindida e trata o pedido como se viesse de um processo com privilégios raiz(UID 0), autorizando imediatamente a solicitação.

“Para ativar o códigolão vulnerável, você tem que se desconectar no momento certo”, disse Backhouse. “E como há vários processos envolvidos, o tempo desse ‘momento certo’ varia de uma corrida para outra. É por isso que geralmente é preciso algumas tentativas para a exploração ter sucesso. Eu acho que também é a razão pela qual o bug não foi descoberto anteriormente.

Os usuários são encorajados a atualizar suas instalações linux o mais rápido possível para remediar qualquer risco potencial decorrente da falha.

FONTE: THE HACKER NEWS

POSTS RELACIONADOS