CVE-2026-41651
PackageKit vulnerável a corrida TOCTOU nas flags de transação leva à instalação arbitrária de pacotes como root
- Publicado
- 22 de abr. de 2026
- Atualizado
- 15 de jul. de 2026
- Atribuindo CNA
- GitHub_M
- Evidência observada
- 25 de ago. de 2026
CVSS primário
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HBaixo · próximos 30 dias
- Percentil
- 39,0%
- Data do modelo
- 21 de set. de 2026
EPSS é uma estimativa estatística, não uma certeza ou uma medida de impacto. Combine-o com CVSS, status KEV, exposição e seu ambiente.
Resumo
PackageKit é uma camada de abstração D-Bus que permite ao usuário gerenciar pacotes de forma segura usando uma API multiplataforma e multi-distribuição. O PackageKit, entre as versões 1.0.2 e 1.3.4 inclusive, é vulnerável a uma condição de corrida time-of-check time-of-use (TOCTOU) nos flags de transação que permite que usuários sem privilégios instalem pacotes como root e, assim, leve a uma escalada local de privilégios. Isso é corrigido na versão 1.3.5. Um usuário local sem privilégios pode instalar pacotes RPM arbitrários como root, incluindo a execução de scriptlets RPM, sem autenticação. A vulnerabilidade é uma condição de corrida TOCTOU em `transaction->cached_transaction_flags` combinada com uma proteção silenciosa de máquina de estados que descarta transições de estado ilegais para trás, deixando flags corrompidos no lugar. Existem três bugs em `src/pk-transaction.c`: 1. Sobrescrita incondicional de flags (linha 4036): `InstallFiles()` grava flags fornecidos pelo chamador em `transaction->cached_transaction_flags` sem verificar se a transação já foi autorizada/iniciada. Uma segunda chamada sobrescreve cegamente os flags mesmo enquanto a transação está em RUNNING. 2. Rejeição silenciosa de transição de estado (linhas 873–882): `pk_transaction_set_state()` descarta silenciosamente transições de estado para trás (ex.: `RUNNING` → `WAITING_FOR_AUTH`), mas a sobrescrita de flags na etapa 1 já ocorreu. A transação continua em execução com flags corrompidos. 3. Leitura tardia de flags no momento da execução (linhas 2273–2277): o callback de idle do agendador lê cached_transaction_flags no momento do despacho, não no momento da autorização. Se os flags forem sobrescritos entre a autorização e a execução, o backend vê os flags do atacante.
Fontes
11- CVE-2026-41651Informativo
CVE-2026-41651
Uso responsável
Use informações de vulnerabilidade apenas em sistemas que você possui ou está autorizado a testar. O Kitploit vincula-se a metadados de pesquisa pública e não armazena código de exploração ou cargas maliciosas.