As principais distribuições Linux apresentam uma falha grave no componente pkexec do Polkit que permite o acesso root a qualquer invasor. O problema, segundo os pesquisadores, está presente na configuração padrão de todas as principais distribuições Linux e pode ser explorada para obter total privilégio de root no sistema. Portanto, um bug no system service dá acesso root nas principais distribuições Linux como Debian, Fedora e Ubuntu.
A falha existe há pelo menos 12 anos, o que significa que todas as principais distribuições como Ubuntu, Fedora e outras menos usadas estão vulneráveis. Este problema recebeu a identificação CVE-2021-4034 e o nome PwnKit. Todas as versões do Polkit são afetadas.
O Polkit funciona como alternativa ao sudo. O pkexec permite que um usuário autorizado execute comandos como outro usuário. isso faz parte da estrutura de aplicativos de código aberto Polkit que negocia a interação entre processos privilegiados e não privilegiados.
Bug no system service dá acesso root nas principais distribuições Linux. Problema é fácil de explorar. Correção deve chegar em breve
A descoberta foi de pesquisadores da empresa de segurança da informação Qualys. Segundo eles, então, o programa pkexec pode ser usado por invasores locais para aumentar os privilégios de root. Isos vale para instalações padrão do Ubuntu, Debian, Fedora e CentOS. Os pesquisadores reforçam que outros sistemas operacionais podem ter o mesmo problema com o Pwnkit.
O Diretor de Vulnerabilidade e Pesquisa de Ameaças da Qualys, Bharat Jogi, explica que o PwnKit é uma vulnerabilidade de corrupção de memória no Polkit, que permite que qualquer usuário sem privilégios obtenha privilégios totais de root em um sistema vulnerável usando a configuração padrão do polkit.
Ele também reforça que o problema está escondido desde a primeira versão do pkexec que saiu em maio de 2009. O vídeo abaixo demonstra a capacidade de exploração do bug:
Outro alerta dessa pesquisa é que a falha é muito fácil de explorar. Segundo os pesquisadores, o código de exploração de prova de conceito (PoC) deve se tornar público somente em alguns dias. A equipe de pesquisa da Qualys não lançará um PoC para o PwnKit.
Patches de correção
A Qualys afirma que fez o relato da vulnerabilidade desde o dia 18 de novembro de 2021. Desde então, esperou a chegada de um patch antes de publicar os detalhes técnicos por trás do PwnKit. Os desenvolvedores do Polkit lançaram em seu GitLab os patches com correções há pouco tempo. A empresa Qualys recomenda fortemente que os administradores priorizem a aplicação deles imediatamente.
As distribuições Linux tiveram acesso ao patch algumas semanas antes da divulgação da Qualys e devem lançar pacotes pkexec atualizados a partir de agora.
Uma mitigação temporária para sistemas operacionais que ainda precisam enviar um patch é retirar pkexec dos direitos de leitura/gravação com o seguinte comando:
chmod 0755 /usr/bin/pkexec
Os usuários que desejam procurar sinais de exploração do PwnKit podem fazê-lo verificando os logs para as entradas: ‘O valor da variável SHELL não foi encontrado no arquivo /etc/shells‘ ou ‘O valor da variável de ambiente […] possui conteúdo suspeito‘.
No entanto, fica mais um aviso importante da Qualys: é possível explorar o PwnKit sem deixar rastros. Outra vulnerabilidade antiga de escalonamento de privilégios que afetava o Polkit já havia sido revelada no ano passado pelo pesquisador do GitHub Security Lab, Kevin Backhouse. O bug estava presente há sete anos, desde a versão 0.113 do componente. Ele afetou distribuições populares do Linux, incluindo RHEL 8, Fedora 21 (ou posterior), Ubuntu 20.04 e versões instáveis do Debian (‘bullseye’) e seus derivados.
Via BleepingComputer