行尸走肉:过时Linux内核的安全风险

设备年年新,内核永不换。早该被淘汰的Linux内核版本,依然阴魂不散地扎根在各种各样的设备中,驱动着这些设备如同《行尸走肉》的丧尸游荡在世界各地。

Linux内核安全漏洞是新闻头条常客。最近又有一个隐身十年之久的严重内核漏洞被曝光了。但是,这到底代表着什么现实意义呢?为什么Linux内核安全很重要?老旧内核上的漏洞在众多设备中苟延残喘到底有什么影响?

Linux是操作系统的王者

毋庸置疑,Linux系操作系统的流行度无人能出其右:3/4的IoT设备运行Linux;2/3的在线服务器用Linux;70%的平板基于安卓系统(修改版Linux内核)——Linux简直无处不在!

这里面有部分是因为Linux是开源系统,开发者不用付授权费,很乐于取用。Linux是电子芯片生产商常会附带的软件开发包(SDK)。这为开发者提供了工作参考平台,以及硬件能力演示平台。

有了参考开发平台,制造商便只需操起该操作系统和SDK,编译自有应用程序,然后就可以准备发售新产品了。然而,不幸的是,这些超方便的样例和操作系统往往十分老旧,而且通常早就不被支持了。

但是,为什么老旧内核问题大大呢?IoT烤箱或者车载娱乐系统不是最先进科技又何妨嘛?

2015年的一份研究论文揭示:家用和小型办公室路由器中,有3/4都装的是过时Linux内核固件。其中大多数设备漏洞密布,很多漏洞都没打补丁,也就是说,这些设备很容易被漏洞利用。

我们可以深入探讨一下Linux内核基础。为什么它很重要?它到底是做什么的?当内核不再受支持,会发生什么?为什么老旧内核会对设备和网络安全造成严重影响?

内核是操作系统的心脏

我们很容易就会忘了,全功能操作系统其实不仅仅局限在桌面电脑和服务器上;操作系统根本就是到处都是。车载卫星导航系统能用,联网冰箱会发来邮件,机上娱乐系统还能追美剧,这一切似乎都太自然了。

但是,即便家里的路由器只有个Web界面和几盏小灯闪个不停,IoT儿童玩具就是唱唱摇篮曲和监视孩子状况,它们依然有很多共性,比如全都运行有操作系统,而且很大可能是基于Linux的操作系统。几乎所有这些设备都可以运行其他软件,至于这“其他”软件的功能,那可就包罗万象没有做不到只有想不到了。

您设备上操作系统的心脏当然就是内核了。它是掌管一切的看门人。硬件、用户许可、权限、内存、软件和接口,统统由它掌控。内核是操作系统的核心,其安全性至关重要。

内核的作用就是让事情易于操作。它让组件间交互变得抽象,比如,软件开发者不用知道硬件或RAM内部运行机制就可以读写文件。

无论用哪种编程语言,保存文本文件的步骤基本一致:

以写权限打开“芝士蛋糕配方.txt”将配方写入文件关闭“芝士蛋糕配方.txt”
这背后的动作其实很复杂。如果你想的是CPU实际执行的指令和所有设备间交互操作,那真是相当、非常、极度复杂。有板砖厚的教科书专门详解内核驱动,也有一整学期的大学课程带你浅尝操作系统。

黑盒

就保存文件这个例子,写文件的过程就涉及到管理内存分配的内核组件和驱动、文件系统结构、硬盘驱动、字符驱动、块驱动、芯片驱动等等等等。内核管理着所有这些交互,这样程序员才能方便地打开文件,并保存他们的芝士蛋糕配方……

如果这些内核组件中有哪个出了问题,黑客就能以此为桥头堡,侵入你的系统。举个例子,如果文件系统驱动处理不了超长文件名,黑客就可利用该漏洞来突破系统。

只要内核某部分出了漏洞,很多安全因素就会粉墨登场了。突然之间,你的整个操作系统和设备,都有可能因为这个似乎不起眼的问题,而沦为漏洞利用的猎物。

内核的问题在于版本过多

Linux内核可不止一个,内核也不过是个软件,与其他任何软件应用一样,它也是有很多版本的。事实上,官方Linux内核版本就不下几十个,非官方版本更是不计其数。开源,就意味着任何设备工程师、程序员或业余黑客,都可以下载、鼓捣和打造自己的定制版内核。

仔细观察,你就发现,Linux内核编号也跟其他软件一样,是有规律的。有内核版本、主版本、次版本和补丁版本。当然,也可以加其他字母和数字,标识是贝塔版还是预发行版,或者定制版内核。

编译Linux内核的过程并不特别复杂。业余玩家在读几个小时指南,指天咒地一番,顺带干掉几杯咖啡之后,也是能从源代码编译出一个Linux内核的(软件大神圣光普照)。

但很不幸,也正是这个容易的过程,为漏洞和配置问题洞开了大门。

既然也是软件,漏洞是免不了的。常见的“长期支持”内核版本是 2.6.32,路由器、IoT设备,甚至某些宝马车载娱乐系统中都能找到。

对 2.6.32 版Linux内核来个快速漏洞扫描,你会发现182个已知漏洞,其中数十个都相当严重。

但是,首先,别紧张,这些漏洞并非总是应用到所有内核配置上的。比如说,如果你的设备不用蓝牙,那么蓝牙组件中的漏洞就不会影响到你(虽然有时候很难知道内核组件交互情况)。

然后,你需要谨记的,是哪些内核版本已经打上了已知漏洞补丁。比如说,Linux网卡驱动组件里发现了L2TP相关漏洞。但只要我们查阅受影响内核版本列表,就会看到 2.6.32.20 已经是最后一个脆弱版本了。这意味着,官方维护的Linux内核 2.6.32.21 及其以后版本,均不受该漏洞影响。

修补漏洞成为老大难

受影响内核自然要被更新。但是,内核 2.6.32 身上发生了什么呢?官方宣布它已“寿终正寝”。也就是说,该版本内核不再受支持,而最新的官方更新,是在2016年年中。

想象一下,“寿终正寝”对于新发现的漏洞是个什么意思?Linux社区不可能无限期更新老版内核,于是,最有可能的情况,是新漏洞永远不会被修复。这种情况下,更新内核的责任就落到了设备制造商身上。然而,针对特定漏洞手动修复内核,比简单下载最新版受支持的内核,要复杂得多。

有些厂商订阅第三方服务提供内核补丁,其他可能自己修复。

或者,如调查发现的,大多数设备就这么干脆不更新了,甚至上周刚买的全新路由器,都有可能运行的是漏成筛子的老旧内核。

2015年来的研究发现:制造商并未对所生产设备进行合理的维护

对路由器内核版本来个现场抽样速查。时下4种型号的固件镜像中,3个跑的是过时内核,其中一个的内核还是2009年发布的;最新的内核(新发布的设备上的)倒是挺新,但也是在下个月就不再支持了。

制造商和开发者是最终责任人

内核版本真的很重要!内核是操作系统的心脏,管理着包括硬件、内存、应用和用户权限在内的所有东西。如果内核存在漏洞,设备就有可能被黑。内核漏洞经常被发现,但只有当前内核版本才会被更新和修复。

落实到设备上,制造商和开发者,是提供维护良好的安全操作系统的最终责任人。最近,技术巨头华硕才与美国联邦贸易委员会就不安全路由器和云服务达成了和解。对很多制造商来说,该案件传达的消息似乎尚未落地。可能还需更多法律诉讼,甚或立法,才能迫使制造商严肃对待设备安全问题。

随着联网设备的激增,技术产业的每个人,都应将眼光投注在安全上。推出令人激动的新技术,却沿用已知漏洞肆虐的老旧内核,太不应该!

本文转自d1net(转载)

时间: 2024-08-02 00:56:29

行尸走肉:过时Linux内核的安全风险的相关文章

谷歌修复Linux内核漏洞未知风险

密钥环设施中的Linux内核漏洞可能允许利用提高特权以本地用户在内核中执行代码,不过该危险及其可能造成的影响已经为专家所重视. Perception Point研究小组在一篇博文中表示该漏洞自2012年起就一直存在于Linux内核中.该小组也创建了一个概念验证利用,不过该漏洞利用尚未外传. Perception Point研究小组称该Linux内核漏洞"已影响了近千万的Linux PC和服务器,66%的安卓设备,不过谷歌对其可能影响的安卓设备数量颇有微词. 尽管安卓是基于Linux内核的,然而不

Linux内核存缺陷 66%安卓设备面临受攻击风险

北京时间1月20日消息,据科技网站Ars Technica报道,过去约3年,数以千万计运行Linux内核的设备一直存在一处权限提升缺陷.预计主要Linux发行商将于本周修复该缺陷,但由于为Android手机和嵌入式设备发布更新包相当困难,许多人未来数月或数年仍将面临受到攻击的风险. 这一缺陷出现在2013年初发布的3.8版Linux内核中.安全厂商Perception Point研究人员发现了该缺陷,并报告给Linux内核维护团队. 在服务器上,具有本地访问权限的黑客可以利用该缺陷获得最高权限:

Linux 内核存缺陷:66% 安卓设备面临受攻击风险

据科技网站Ars Technica报道,过去约3年,数以千万计运行Linux内核的设备一直存在一处权限提升缺陷.预计主要Linux发行商将于本周修复该缺陷,但由于为Android手机和嵌入式设备发布更新包相当困难,许多人未来数月或数年仍将面临受到攻击的风险.这一缺陷出现在2013年初发布的3.8版Linux内核中.安全厂商Perception Point研究人员发现了该缺陷,并报告给Linux内核维护团队. 在服务器上,具有本地访问权限的黑客可以利用该缺陷获得最高权限:在运行KitKat及更高版

Linux内核剖析 之 内核同步

主要内容     1.内核请求何时以交错(interleave)的方式执行以及交错程度如何.     2.内核所实现的基本同步机制.     3.通常情况下如何使用内核提供的同步机制. 内核如何为不同的请求服务     哪些服务?     ====>>>     为了更好地理解内核是如何执行的,我们把内核看做必须满足两种请求的侍者:一种请求来自顾客,另一种请求来自数量有限的几个不同的老板.对于不同的请求,侍者采用如下的策略:     1.老板提出请求时,如果侍者空闲,则侍者开始为老板服务

Linux的历史----Linux内核剖析(一)

Unix操作系统 Unix的由来 汤普逊和里奇最早是在贝尔实验室开发Unix的,此后的10年,Unix在学术机构和大型企业中得到了广泛的应用,当时的UNIX拥有者AT&T公司以低廉甚至免费的许可将Unix源码授权给学术机构做研究或教学之用,许多机构在此源码基础上加以扩充和改进,形成了所谓的"Unix变种",这些变种反过来也促进了Unix的发展,其中最著名的变种之一是由加州大学柏克莱分校开发的BSD产品. 后来AT&T意识到了Unix的商业价值,不再将Unix源码授权给学

[收藏学习]Linux内核虚拟机 学习KVM架构及其优点

本文转自IBM,参考:http://www.ibm.com/developerworks/cn/linux/l-linux-kvm/index.html#N100B0 虚拟化 概念很早就已出现.简单来说,虚拟化就是使用某些程序,并使其看起来类似于其他程序的过程.将这个概念应用到计算机系统中可以让不同用户看到不同的单个系统(例如,一台计算机可以同时运行 Linux 和 Microsoft Windows).这通常称为全虚拟化(full virtualization). 虚拟化也可以使用更加复杂的格

如何更新 Linux 内核来提升系统性能

目前的 Linux 内核的开发速度是前所未有的,大概每2到3个月就会有一个主要的版本发布.每个发布都带来几个的新的功能和改进,可以让很多人的处理体验更快.更有效率.或者其它的方面更好. 问题是,你不能在这些内核发布的时候就用它们,你要等到你的发行版带来新内核的发布.我们先前讲到定期更新内核的好处,所以你不必等到那时.让我们来告诉你该怎么做. 免责声明: 我们先前的一些文章已经提到过,升级内核有(很小)的风险可能会破坏你系统.如果发生这种情况,通常可以通过使用旧内核来使系统保持工作,但是有时还是不

Docker用以提高Linux内核安全性的三大热点技术

关于译者Ghostcloud Ghostcloud(中文名:精灵云)是成都精灵云科技有限公司旗下的基于Docker的PaaS/CaaS平台品牌.公司成立于2015年,核心团队由来自EMC.Veritas.华为.IBM.Microsoft的核心技术主管和架构师组成.精灵云作为国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化.私有云管理平台.大数据业务基础架构的平台服务,在国内Docker社区贡献排名前三.主创团队曾参与Beego开源项目研发,并主导发布<Docker容器实战:原理

长期维护嵌入式Linux内核变得容易

Pengutronix 内核黑客 Jan Lübbe 总结了嵌入式 Linux 中正在不断增长的安全威胁,并在这次欧洲嵌入式 Linux 会议上概述了一个计划,以保持长期设备的安全和功能完整. 安全漏洞只发生在 Windows 上的好日子正在快速过去.恶意软件黑客和拒绝服务老手们正在越来越多地瞄准过时的嵌入式 Linux 设备,因此在 10 月的欧洲嵌入式 Linux 会议Embedded Linux Conference Europe(ELCE)上的几个演讲的主题就与修复 Linux 安全漏洞