Uma vulnerabilidade de execução arbitrária de código no KDE Plasma permite que aplicativos sandboxeados, como os distribuídos via Flatpak, executem binários arbitrários no sistema hospedeiro. A falha foi divulgada publicamente em 2 de julho de 2026 pelo desenvolvedor Kimiblock após 90 dias sem correção por parte da equipe de segurança do KDE. Todas as versões do Plasma 6.7 estão afetadas e, até o momento, não existe patch disponível.
Como a vulnerabilidade funciona
A falha reside na forma como o compositor KWin identifica janelas de aplicativos. Quando um app sandboxeado cria uma janela no KDE Plasma, o KWin tenta associá-la a um arquivo .desktop correspondente. Quando essa associação falha — o que ocorre com aplicações que não possuem um .desktop válido registrado — o compositor recorre à leitura de /proc/PID/cmdline para determinar qual binário invocar na ação “Abrir nova janela” (Open New Window).
O problema central é que qualquer processo sem privilégios pode modificar seu próprio argv0. Um aplicativo malicioso, mesmo sem permissões extras, consegue forjar seu identificador para apontar para qualquer binário no hospedeiro. Quando o usuário clica com o botão do meio no ícone do app na barra de tarefas ou seleciona “Abrir nova janela” no menu de contexto, o Plasma executa o binário forjado fora do sandbox, no cgroup app.slice, com acesso total ao sistema de arquivos do hospedeiro e ao namespace de montagem original.
O pesquisador demonstrou a exploração usando uma aplicação Flatpak sem permissões especiais que, ao ser acionada via “Abrir nova janela”, lançou o /usr/bin/kcalc sem nenhum isolamento. Em um cenário de ataque real, o invasor poderia gerar um script malicioso no diretório pessoal do usuário e alterar o argv0 para apontar a ele, obtendo controle total da sessão de trabalho. A prova de conceito completa está disponível no blog do Kimiblock.
Papel do KWin na falha
O compositor KWin, responsável pelo gerenciamento de janelas no Plasma, confia nos aplicativos para informar seu próprio app_id. Quando não encontra um arquivo .desktop correspondente, KWin utiliza /proc/PID/cmdline como fallback para determinar qual aplicativo abrir. Esse comportamento cria duas condições necessárias para a exploração: a ausência de validação do app_id e a leitura insegura de um campo controlável pelo processo. Qualquer sandbox — Flatpak, Firejail, Bubblewrap ou o próprio sistema de portáteis do Plasma — é vulnerável quando essas duas condições estão presentes.
O desenvolvedor relata que KWin sequer verifica se o binário listado em /proc/PID/cmdline pertence ao sandbox do aplicativo original. A execução acontece diretamente no contexto do usuário hospedeiro, sem nenhuma das restrições que o sandbox impõe ao app em execução normal.
Cronologia da divulgação
- 1º de abril de 2026: Kimiblock envia relatório detalhado da vulnerabilidade para
security@kde.org, descrevendo o mecanismo de sandbox escape via KWin e manipulação de argv0. - Abril–junho de 2026: Período de 90 dias de embargo. O pesquisador aguarda correção ou comunicação da equipe de segurança do KDE. Nenhuma resposta é recebida durante todo o período.
- 2 de julho de 2026: Expirado o prazo de responsabilidade, Kimiblock publica a divulgação completa com prova de conceito funcional. O Phoronix cobre a revelação no mesmo dia.
- 6 de julho de 2026: Comunidades de segurança como Privacy Guides e EndeavourOS discutem a falha em fóruns. O advisory oficial do KDE permanece inédito.
Versões afetadas
| Componente | Versões afetadas | Status do patch |
|---|---|---|
| KDE Plasma (KWin) | 6.7.x (todas as subversões) | Sem correção disponível |
| KDE Plasma (KWin) | Versões anteriores não testadas | Possivelmente afetadas |
| Aplicativos Flatpak | Qualquer app sem .desktop válido | Vetor de ataque |
Medidas mitigadoras
Enquanto o KDE não publica um advisory oficial e um patch, usuários do Plasma podem adotar as seguintes ações para reduzir o risco:
- Limitar apps Flatpak a repositórios auditados. A exploração requer um app malicioso instalado. Restringir instalações ao Flathub oficial reduz a superfície de ataque, embora não a elimine — um app legítimo comprometido poderia explorar a mesma falha.
- Desativar o atalho “Abrir nova janela”. A exploração depende de interação do usuário via clique com o botão do meio na barra de tarefas ou via menu de contexto. Remover esse atalho elimina o gatilho principal.
- Monitorar processos no cgroup app.slice. Binários executados pela exploração aparecem em
app.slice. Ferramentas comosystemd-cglseauditdpodem detectar execuções inesperadas fora do contexto do sandbox. - Avaliar ambientes alternativos. Usuários com requisitos rigorosos de isolamento podem considerar GNOME ou COSMIC como desktop environment temporário enquanto a falha permanecer sem correção.
Esta vulnerabilidade soma-se a outras falhas recentes de sandbox no ecossistema Linux. Em abril de 2026, o CVE-2026-34078 no Flatpak permitia escape completo do sandbox via manipulação de symlinks no portal sandbox-expose — corrigido na versão 1.16.4. A combinação de falhas na camada do runtime (Flatpak) com falhas na camada do desktop environment (KWin) amplia significativamente o risco para usuários de distribuições Linux que dependem desses mecanismos de isolamento.
Fontes e referências
- Kimiblock — Arbitrary code execution breaking sandboxes in KDE Plasma
- Phoronix — KDE Plasma Affected By Arbitrary Code Execution To Break Sandboxes
- Privacy Guides Community — Arbitrary code execution breaking sandboxes in KDE Plasma
- GitHub (Flatpak) — CVE-2026-34078: Flatpak sandbox escape advisory
- KDE Security Advisories — Página oficial de advisories de segurança