0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux系统,居然被两个不懂任何技术的小孩“攻破”了

Linux爱好者 来源:Linux爱好者 作者:量子位 2021-02-02 11:31 次阅读

Linux系统,居然被两个不懂任何技术的小孩“攻破”了。

他们只是在键盘和屏幕上一通乱按,就轻松绕过密码,进入了被锁定的Linux系统桌面。

最近,一位程序员父亲就这样,眼睁睁地看着自己的电脑被孩子“玩坏”。

作为一名程序员,他首先想到的不是打骂孩子,而是——如何复现漏洞。

他发现这个漏洞确实是孩子乱按导致的,在某些特殊按键组合下,Linux的屏幕锁定进程会崩溃,从而绕过了密码。

也就是说,只要有人知道了这个漏洞,无需密码就可以偷偷打开别人已经锁定的Linux电脑。

他将情况反馈到官方GitHub上,最终这个奇怪的漏洞上周被正式修复了。

但这并不能让程序员们放心,这些年因Linux桌面进程崩溃导致的安全漏洞层出不穷,屡见不鲜,你永远不知道下一个bug会是什么。

孩子们“乱杀”的桌面系统漏洞

这两个小孩,是怎么“发现”这一漏洞的呢?

这位程序员父亲将自己的电脑锁定后,孩子们试图解锁它,就开始在电脑键盘上瞎打。

突然,屏保界面消失,孩子们成功进入了Linux系统。

什么?连密码都没有输入?

他让他们再演示一次。这次,孩子们同样做到了,但依旧只是“乱敲”键盘而已。

太奇怪了。

他在两个小孩离开后,自己又悄悄地试了一下,没能成功。

不过他认为,这肯定是个漏洞,因为已经亲眼见过两次了。

这位程序员父亲所用的桌面系统是Cinnamon(Linux桌面环境之一),他推测,Cinnamon是不是有什么奇怪的bug,在不输入密码的情况下也能解锁桌面。

当天晚上10点半,他在Linux Mint的GitHub页面上反馈了这一bug,并描述了孩子们敲击键盘的场景:

他们同时按下了物理键盘和屏幕虚拟键盘,而且,尽量多按一些虚拟键盘。

消息一出,马上就有网友表示,自己同样遇到了这种问题,而且用的桌面系统也是Cinnamon。

随后,Linux Mint程序员火速赶往现场。

检查后发现,这的确是一个bug,而且Cinnamon 4.2以上的桌面系统,都会受到影响,因为这一版开始支持屏幕虚拟键盘了。

导致这个bug的具体行为是:长按“e”键,并在虚拟键盘上选中“ē”。

现在,Linux Mint已经为这个漏洞推出了一个新补丁,不过需要自己手动安装。

人生苦短,不如用KDE(手动狗头)。

大神:17年前我就警告过他们

对于如此荒谬而简单的漏洞,自然引起各路程序员对Linux桌面的吐槽。

关于这个问题的GitHub issue页面都被程序员们玩坏了。

有人说:这个CVE应该归功于孩子们…

还有人在回帖中发个表情包:我想程序员们应该会这样复现bug。

但要论吐槽最狠的,还是著名程序员大神jwz。

今天凌晨,这位大神又双叒叕发了一篇文章来吐槽此事,标题是《我已经告诉过你们之2021版》。

因为早在17年前,他就警告过Cinnamon和GNOME官方:

如果没有在Linux上运行XScreenSaver,那么可以你的屏幕就相当于没有锁定。

之后每隔几年,jwz都会出来把这段话再说一遍。

jwz还调侃说:“翻车”一次是偶然,两次是巧合,三次是敌人的破坏,四次是GNOME官方。

而这四次安全漏洞,jwz都有详细的记录:

CVE-2019-3010,从Oracle Solaris屏幕保护程序可以获得特殊权限升级;

CVE-2014-1949, MDVSA-2015:162:在Cinnamon屏幕保护程序中按菜单键,再按ESC键,就可以进入shell;

按住向下键,解锁Cinnamon屏幕保护程序;

按住回车键,解锁GNOME屏幕保护程序。

修bug引发的新漏洞

导致Linux Mint漏洞是由于3月前修复另一个bug引起的。

这个漏洞存在于Linux显示服务xorg-x11-server中,其最大威胁是对数据机密性和完整性以及系统可用性的威胁。

更让人哭笑不得的是,Ubuntu 20.04在向后移植xorg的时候,由于使用了没有该bug的1.20.9版,反而逃过一劫。

当Ubuntu的开发人员意识到没有打上CVE-2020-25712补丁后,他们又中了新的漏洞。

结果就是,xorg更新修复以后,任何人都可以让屏幕锁定程序崩溃,然后进入桌面。

无独有偶,这不禁让人想起GNOME两个月前的另一个“低级”漏洞。

一位程序员通过将账户服务陷入无限循环,使GNOME的账户守护程序崩溃。之后就能在锁定界面添加新的sudo用户,并获取root权限。

这个锅该让GNOME来背吗?jwz认为,归根结底是因为现在的Linux图形化界面根基X11存在着不可修复的严重问题:

1、锁定和身份验证是操作系统级别的问题。

尽管X11是Linux计算机操作系统的核心,但它的设计没有安全性可言,锁定程序必须以普通的、非特权的用户级应用程序一样运行。

2、X11体系结构的这一错误永远无法修复。

X11太旧、太僵化,并且有太多利益相关者无法对它进行任何有意义的更改。这就是为什么人们不断尝试替换X11的原因并失败了,因为它根深蒂固。

虽然现在有Wayland作为X11的替代品,但仍有网友替换为Wayland后,Ubuntu桌面依然存在某些缺陷。

比如唤醒电脑后,会在原来的桌面停留10~20秒才能进入锁屏状态,这个过程中桌面的隐私会一览无余。

鉴于Linux桌面的安全性问题漏洞百出,为了防止未被发现漏洞遭利用,有用户建议先安装XSecureLock,多上一把锁。

我热切期待着听到他们如何解决这个问题。

jwz在自己的博客里如是说。

责任编辑:xj

原文标题:“熊孩子”乱敲键盘就攻破了 Linux 桌面,大神:17 年前我就警告过你们

文章出处:【微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11216

    浏览量

    208808
  • 操作系统
    +关注

    关注

    37

    文章

    6713

    浏览量

    123163
  • 桌面
    +关注

    关注

    0

    文章

    82

    浏览量

    14573

原文标题:“熊孩子”乱敲键盘就攻破了 Linux 桌面,大神:17 年前我就警告过你们

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ad如何设置两个元器件的距离

    在Altium Designer(简称AD)中设置两个元器件之间的距离,主要是通过设置元器件间的安全间距(Clearance)规则来实现的。这个规则定义元器件之间、元器件与走线之间以及其他设计元素
    的头像 发表于 09-02 15:31 4446次阅读

    触发器的两个稳定状态分别是什么

    触发器作为数字电路中的基本逻辑单元,具有两个稳定状态,这两个状态通常用于表示二进制数码中的0和1。
    的头像 发表于 08-12 11:01 527次阅读

    双稳态电路的两个稳定状态是什么

    双稳态电路是一种具有两个稳定状态的电子电路,广泛应用于数字电路、通信系统、存储器等领域。 双稳态电路的基本概念 双稳态电路是一种具有两个稳定状态的电路,即在没有外部输入信号的情况下,电路可以保持在
    的头像 发表于 08-11 15:00 994次阅读

    两个铜片可以形成原电池吗

    两个铜片本身不能形成原电池,因为原电池的工作原理依赖于两个不同电位的电极材料之间的氧化还原反应。
    的头像 发表于 05-21 16:23 799次阅读

    STM32MP157两个A7核能跑两个系统吗?

    请问STM32MP157的两个A7核,能像其它双核CPU一样运行AMP模式:一核跑Linux、一核跑RTOS(或禅机)吗?虽然有一M4
    发表于 03-21 06:50

    当CY7C65215在两个通道上配置为SPI和I2C时,能否在Linux系统中看到两个设备?

    我的客户想知道,当CY7C65215 在两个通道上配置为 SPI 和 I2C 时,他能否在 Linux 系统中看到两个设备。
    发表于 03-05 06:52

    arcgis中如何关联两个属性表

    在ArcGIS中,关联两个属性表是一重要的操作,可以通过此操作将两个表中的数据关联起来,以便进行分析和查询。下面是详细介绍如何在ArcGIS中实现属性表的关联。 首先,我们需要明确两个
    的头像 发表于 02-25 11:01 3947次阅读

    两个电位器地控制一变频器,如何接线?

    两个电位器地控制一变频器,如何接线? 接线方式如下: 1. 首先,明确需要使用的电器设备。在这个场景中,我们需要两个电位器(即可变电阻器)和一
    的头像 发表于 02-05 10:13 4793次阅读

    两个机器的时钟怎么同步?

    两个机器的时钟怎么同步? 在现代社会中,时间同步对于各种科学研究、工业生产和通信技术都具有重要意义。在许多应用程序中,如分布式系统、计算机网络和数据同步等领域,为了确保数据的一致性和准确性,需要确保
    的头像 发表于 01-16 14:26 1461次阅读

    Linux系统文件比较工具集合

    Linux系统中,文件比较是一种常见的任务,用于比较两个文件之间的差异。文件比较可以帮助我们找出两个文件的不同之处,或者确定它们是否完全相同。在L
    的头像 发表于 01-02 13:53 648次阅读

    线路板行业的10黑话,你听过几个?不懂就out

    线路板行业的10黑话,你听过几个?不懂就out
    的头像 发表于 12-25 10:19 1006次阅读

    如何给C语言中的函数定义两个不同的名字?

    最近有位哥问我,如何给C语言中的函数定义两个不同的名字?就是这两个名字都是指向同一函数,同一地址,而且两个名字都可以当做函数来用的那种。
    的头像 发表于 12-19 16:21 740次阅读

    电子设计中的两个不同概念:pcb与pcb封装

    电子设计中的两个不同概念:pcb与pcb封装
    的头像 发表于 12-11 15:49 800次阅读

    两个硬盘2系统开机切换

    切换两个硬盘上的系统是一种常见的行为,可以让用户在不同的操作系统之间进行切换,以满足不同的需求。在本文中,我们将详细介绍如何配置和使用两个硬盘上的
    的头像 发表于 11-28 15:08 7264次阅读

    ubuntu和linux的区别

    Ubuntu和Linux两个相关但不完全相同的概念,它们之间有着一些区别。在开始深入讨论Ubuntu和Linux之间的区别之前,让我们首先了解一下这两个概念的含义。
    的头像 发表于 11-27 17:06 2298次阅读