本文概述
2018年1月3日, Google的零项目团队宣布”发现” Meltdown和Spectre漏洞, 这些漏洞针对由Intel, AMD和ARM创建的处理器, 这些处理器使用” CPU数据缓存时间”来”从错误中泄漏信息”。推测执行”, 并确认”自1995年以来几乎所有制造的计算机都存在危险缺陷。” Meltdown和Spectre是64位Intel中央处理单元(CPU)中的安全漏洞, 这些未经授权的进程将对特权系统内存的访问权限授予未经授权的进程, 并允许网络攻击将无错误的程序欺骗为泄漏敏感数据的程序。
尽管如前所述, 该问题可以追溯到1995年, 但直到今天才问世, 但是其背后的历史很复杂, 我们在这里不再讨论。可以肯定的是, 一旦服务器管理员在数字报纸上看到这一争议并立即寻找解决方案时, 许多服务器管理员就会感到恐慌。但是, 在应用解决方案之前, 你可能想知道自己是否容易受到影响?最常见的答案是”肯定是”。但是, 只是为了确定(浪费时间在工作上), 你可以借助spectre-meltdown-checker shell脚本自行确认此问题。
在本文中, 我们将向你展示如何借助开源Shell脚本来检测服务器处理器是否容易受到Meltdown和Spectre的攻击。
1.下载spectre-meltdown-checker.sh
Spectre-meltdown-checker是一个非常简单的shell脚本, 它告诉你Linux / Ubuntu安装是否容易受到2018年初发布的3个”推测执行” CVE的攻击。如果没有选择, 它将检查你当前正在运行的内核。如果要检查未运行的内核, 也可以在命令行上指定内核映像。该脚本将尽力检测缓解措施, 包括向后移植的非原始补丁程序, 而不管所宣传的内核版本号如何。
免责声明
spectre-meltdown-checker脚本有一个非常明确的免责声明, 你在服务器中使用它之前应该阅读该免责声明:
该工具将尽最大努力确定你的系统是否对统称为”投机执行”漏洞具有免疫力(或已采取适当的缓解措施)。它不会尝试运行任何类型的利用程序, 并且不能保证你的系统是安全的, 而是可以帮助你验证系统是否具有已知的正确缓解措施。但是, 你的内核中也可能存在一些缓解措施, 这些脚本尚不知道(如何)检测该缓解措施, 或者它可能会错误地检测出最终无法按预期工作的缓解措施(例如, 在反向移植或修改的内核中) 。你的系统暴露还取决于你的CPU。截至目前, AMD和ARM处理器已被标记为可以抵抗其中某些或所有漏洞(某些特定的ARM型号除外)。自1995年以来制造的所有英特尔处理器都被认为容易受到攻击。无论使用哪种处理器, 都可能会从该处理器和/或运行该设备的设备的制造商那里获取更多信息。发现的漏洞的性质是非常新的, 可以预期易受攻击的处理器的状况会随着时间而改变, 这就是为什么此脚本假设所有CPU都是易受攻击的, 除非制造商在可验证的公开声明中另有明确声明。该工具已经发布, 希望它会有用, 但是不要用它来得出有关你的安全性的结论。
如果你同意免责声明, 那就开始吧!显然, 要运行该脚本, 你将需要其源代码, 可以从存储库下载sh文件, 也可以使用wget下载它:
wget https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh
或者, 如果你更喜欢使用Curl:
curl https://raw.githubusercontent.com/speed47/spectre-meltdown-checker/master/spectre-meltdown-checker.sh --output spectre-meltdown-checker.sh
只要以后可以访问目录, 就可以将脚本保存在任何位置。有关此有用脚本的更多信息, 请访问Github上的官方存储库。
2.授予文件执行权限
接下来, 由于脚本来自第三方来源, 因此它没有正确的权限, 特别是使用chmod添加可执行权限:
注意
如果可以在第三步中使用sudo bash ./spectre-meltdown-checker.sh执行文件, 则可以跳过此步骤。
chmod +x ./spectre-meltdown-checker.sh
现在该文件应该可以从终端执行。
3.运行脚本
根据文件的权限, 你可以使用以下命令执行该文件(如果使用chmod + x):
sudo ./spectre-meltdown-checker.sh
否则, 无需在文件中添加权限, 只需使用sudo bash运行脚本即可:
sudo bash ./spectre-meltdown-checker.sh
这将启动该工具, 并在几秒钟内你就会知道处理器是否容易受到Spectre或Meltdown的破坏:
两种攻击都针对”内核”, 这是设备操作系统中基本不可见的部分, 它也许是计算机(或手机或平板电脑)上最重要的软件组件。它介于所有应用程序和计算机的基本组成部分之间:处理器, 内存和设备本身(例如笔记本电脑上的键盘和触摸板, 或手机上的电源按钮)。话虽如此, 虽然本文不是针对解决问题的方法, 而是针对如何发现问题的方法, 简而言之, 可以通过更新服务器内核来解决你的问题。 Digital Ocean发表了有关如何解决这些缺陷的有用文章, 该文章主要包括更新系统软件, 主要是内核(yum, apt-get, dnf)。
有关Spectre和Meltdown的更多信息, 请确保在此处查看Google Zero博客文章或Spectre Attack网站。
安全审核愉快!
评论前必须登录!
注册