Pack2TheRoot (CVE-2026-41651): A falha do PackageKit que compromete o Linux.

Pontos chave:
  • A falha se baseia em uma condição de corrida (TOCTOU) no gerenciamento de transações do D-Bus, que ignora a autorização do polkit.
  • Isso afeta diretamente distribuições populares como Ubuntu, Debian, Fedora e Rocky Linux em suas instalações padrão.
  • Um atacante pode sobrescrever os sinalizadores de uma transação segura enviando uma segunda solicitação antes que o agendador inicie a operação.
  • A vulnerabilidade foi corrigida no PackageKit 1.3.5, e existe uma solução temporária que consiste na criação de regras personalizadas no polkit.

Pack2TheRoot

Alguns dias atrás Foram divulgadas informações sobre uma nova vulnerabilidade crítica. que afeta ambientes Linux chamados "Pack2TheRoot". Catalogado sob CVE-2026-41651Essa falha afeta o PackageKit (uma ferramenta que atua como uma camada de abstração do D-Bus para unificar o gerenciamento de pacotes em várias distribuições).

Menciona-se que a decisão Permite que qualquer usuário local sem privilégios instale ou remova pacotes arbitrariamente. Ao explorar essa vulnerabilidade, um atacante pode obter acesso root completo ao sistema comprometido. O impacto é considerável, visto que o problema está presente desde a versão 1.0.2, lançada há mais de doze anos (em 2014), e afeta as configurações padrão de distribuições populares como Ubuntu, Debian, Rocky Linux e Fedora.

Pack2TheRoot: Vulnerabilidade no PackageKit concede acesso de administrador no Linux

El A descoberta do Pack2TheRoot foi resultado de uma investigação. liderada pela Equipe Vermelha da Deutsche Telekom, que Eles utilizaram o modelo de inteligência artificial Claude Opus. para orientar sua análise dos vetores locais de escalonamento de privilégios.

LoInicialmente, os pesquisadores observaram que o comando de instalação do pkcon podia ser executado sem a necessidade de uma senha.em certas configurações do Fedora, o que levantou suspeitas sobre a autorização subjacente. Após confirmar e relatar a vulnerabilidade de forma responsável aos mantenedores do PackageKit, Um exploit funcional foi desenvolvido. embora sua publicação detalhada tenha sido estrategicamente adiada para permitir que usuários e administradores apliquem as atualizações necessárias.

A mecânica do ataque

A raiz do A vulnerabilidade reside na condição de carreira. (Tipo TOCTOU: Horário de verificação para Horário de uso) Dentro de gerenciamento de transações de processos em segundo plano (daemon) do PackageKitO PackageKit, operando como usuário root, delega autorização ao sistema polkit. Quando um cliente solicita a instalação de um pacote, por exemplo, usando o método InstallFiles, ele transmite um conjunto de flags que ditam o comportamento da transação.

Sinalizadores específicos, como SIMULATE ou ONLY_DOWNLOAD, instruem o PackageKit a ignorar a autorização do polkit. uma vez que representam operações seguras que, em teoria, não modificam o estado do sistema. A falha ocorre porque o manipulador de transações sobrescreve o arquivo. Esses indicadores são armazenados em cache incondicionalmente a cada nova chamada, sem verificar se a transação já foi autorizada ou está em processo de execução.

pack2theroot-poc2

Un Um atacante pode iniciar uma transação usando indicadores "seguros". (contornando assim a autorização de polkit) e, milissegundos depois, enviar uma segunda solicitação D-Bus. para a mesma transação, mas desta vez com flags maliciosas que comandam uma instalação real. Devido à arquitetura de prioridade do loop de eventos do GLib (onde as mensagens D-Bus são processadas antes dos callbacks ociosos), a segunda requisição sobrescreve os parâmetros imediatamente antes do agendador iniciar a operação.

Consequentemente, a transação previamente autorizada como "segura" é executada com os parâmetros substituídos., instalando o pacote com privilégios de administrador.

Soluções e mitigação

Deve-se notar que o A vulnerabilidade foi corrigida na versão 1.3.5 do PackageKit.Portanto, os desenvolvedores recomendam que os administradores de sistema verifiquem se seus sistemas são vulneráveis, consultando o status dos serviços com comandos como `systemctl status packagekit` ou monitorando a atividade com o `pkmon`.

As As principais distribuições, incluindo Debian, Ubuntu e Fedora, já começaram a distribuir pacotes. As atualizações são lançadas por meio de seus canais oficiais. Para sistemas onde uma correção não está disponível imediatamente, os pesquisadores propuseram uma solução alternativa: implantar uma regra polkit personalizada.

Esta A regra nega imediata e silenciosamente as ações de instalação do PackageKit. Para qualquer usuário que não seja o root, isso impede a abertura da janela de condição de corrida. É importante notar que, embora a exploração seja rápida e silenciosa, ela deixa um rastro claro nos logs do sistema: após uma exploração bem-sucedida, o daemon PackageKit trava devido a uma falha de asserção (assertion failed: (!transaction->priv->emitted_finished)). Embora o systemd reinicie o serviço, impedindo um ataque de negação de serviço, a presença dessa mensagem no journalctl é um forte indicador de que o sistema foi comprometido.

Por fim, se tiver interesse em saber mais sobre isso, você pode consultar o detalhes no link a seguir.


Adicionar como fonte preferencial