News
比较好的几个新闻网址
2018/01/02 intel_cpu_design_flaw
- 由于Intel芯片级的安全bug,Linux、Windows、正在修改内核,这将带来严重的性能下降,目前估计为5%~30%,PostgreSQL的评估
- 许多芯片采用PCID来降低性能损失
- Intel芯片的漏洞还未公布(under wraps),我们目前知道的有
- 从数据库应用到Web上JavaScript,都有可能从kernel内存区域中获取数据
- 修复这个bug,采用Kernel Page Table Isolation(KPTI)。Linux内核设计团队仔细考虑(mull)过Forcefully Unmap Complete Kernel With Interrupt Trampolines(FUCKWIT),说明这种方法给开发者带来的困扰
- 当程序需要做些useful的事情时,比如写文件或者打开网络连接,就需要暂时将控制权交给kernel,为了尽快完成kernel到user,user到kernel状态的转换,kernel在所有进程的虚拟地址空间内(页表中),尽管这些进程是看不见的。当需要kernel执行时,通过system call切换至kernel mode进入kernel,完成操作后,切换回user mode。KPTI就是完全隔离kernel和user,事实上,这是不需要的,但是很明显Intel的漏洞使得在某些场景下,可以绕过访问保护。而且采用KPTI切换上下文会引起频繁的上下文切换,这需要dump cache & reload memory,严重影响了性能。
- 一旦黑客利用漏洞,就可以访问敏感信息,如passwords/login keys/files cached from disk等。想象浏览器上的JavaScript,或者云服务器上的软件,能sniff内核上的敏感信息会是什么样的后果
- 最好的情况下,这会导致defret KASLR(kernel address space layout randomization),这种机制使得kernel的内容随机放置在虚拟空间中,攻击代码(exploit code),如ROP攻击,就是利用已经在内存中的代码(computer instructions in known locations in memory)。如果kernel的代码随机放置,那么攻击者想要完全comprise a system就很难找到想要调用的gadget。而这一漏洞就导致kernel的数据/代码的位置暴漏给攻击者,所以还需要软件上的补丁。
- Intel芯片上存在的攻击可能不只这种。AMD给Linux kernel的邮件中提到他们的处理器不受这个漏洞的影响,但提到关键字”speculative”。
- 从AMD的软件工程师Tom Lendacky的发言中,Intel很有可能就是没有在预测执行是做权限检查。这会导致ring-3-level的用户代码访问ring-0-level的kernel数据
- 考虑到Linux和Windows改动如此之大,说明不仅仅是绕过KASLR这么简单
- Linux上隔离kernel和user地址空间基于KAISER(由Graz University of Technology in Austria开发)补丁的一系列修复。论文提到通过侧信道攻击CPU虚拟内存提取存储器信息可能绕过KASLR,Graz University of Technology in Austria的团队提出隔离kernel和user来防止信息泄露。
- 提到Anders Fogh2017年7月写的博客,虽然没有有力的代码佐证(come up with any working proof-of-concept code),但说明预测执行的确可以打破kernel和user之间的隔离
- 一个软件开发者评论:这个bug会影响到包括Amazon EC2,Microsoft Azure和Google Copmute Engine的云计算环境
- 之前就有流言Xen可能有严重的bug,现在看来可能是因为硬件bug
- 更新:Vrije Universiteit Amsterdam系统与网络安全组的PhD发现了proof-of-concept program来窥探chipzilla flaw,实验从用户态读取内核态的数据
2018/01/03 meltdown-spectre-microsoft-intel-google-apple
- Google列出Android上可能受到攻击的服务,保护措施也被添加到最新的更新中
- Microsoft正在努力降低漏洞的影响,针对Intel/ARM/AMD的处理器上的Windows都发布了补救方法。针对Azure云服务平台,公司称已全部更新,绝大部分的用户将感受不到性能影响
- Apple提出macOS 10.13.2已经解决了这个问题,10.13.3还有surprises
- AMD说目前为止还不受攻击的影响,后续跟进,白皮书
- 值得注意的是(One thing to be aware of is that),只有在用户运行兼容的杀毒软件时才会更新,如果没有出现,就有问题了
- 还有另一点需要注意(Another consideration is that),恶意代码可能通过浏览器上的网页下载,所以IE也提供了更新;Google提出了Site Isolation,后期将发布包含保护措施的Chrome 64;Mozilla也[确认](https://blog.mozilla.org/security/2018/01/03/mitigations-landing-new-class-timing-attack/了可能受到攻击,在Firefox 57开始保护
- Vmware也在更新
- 2018/01/03 intel-kernel-memory-flaw
- 研究者发现普通进程可以决定内核存储空间的内容或者布局。修复此bug代价应该非常大(steep),目前知道的方法是完全隔离kernel和普通进程,但带来的存储空间切换(系统调用或硬件中断),会引起严重的性能损失
- 性能损失多少完全取决于运行什么程序,最大的性能损失大概是虚拟系统,比如Amazon’s EC2和Google Compute Engine
- The Register声明性能大约损失5%~30%,但有证据说明可能有更高的损失。
- Linux最近有了一次重大的改动,PTI被引入作为标准,并被回退(being backported)。官方的回复是合并KASLR,虽然大多数专家认为没有用
- 也有奇怪的情况发生:文件缺失,部分内容重新编辑(redacted),Intel/Amazon/Google被也收到相关信息
- 其实AMD与ARM并不需要PTI
- grsecurity的Brad Spengler说i7-6700有29%的损失,i7-3770s有34%的损失
- Microsoft早在2017年12月就已经更新
- 此链接有各个性能损失的测试结果、补丁、各公司的回复
- 至于是否会对每个任务都带来性能影响,还有待实验考究
- 芯片级别的bug将影响近乎所有的操作系统,包括Linux,MacOS和Windows,软件上的修复就如Linux和Windows,但是要在解决问题的同时保证性能,就需要在CPU级别上做改动
- AMD申明由于memory handling不同,所以不受攻击的影响
- 解决此次问题有两大问题:1. 改动设计(design tweak);2. 性能损失
2018/01/03 intel-says-security-issue-is-not-specific-to-its-cpus
- Intel回复
- 说明问题不仅仅出现在Intel的CPU上,AMD和ARM也都存在问题,如Ryzen rig
- 性能损失是workload-dependent,普通用户注意不到
- Intel有义务公开不安全漏洞,但是本计划在周末公布(软件和固件上的更新将完成),但由于一些媒体不准确的新闻,所以提前公布
- Intel宣称芯片是世界上最安全的芯片,将与合作伙伴一起为用户提供安全的解决方案
- 声明这不是一个flaw,而是一种可能抓取敏感信息的软件分析方法,不会导致死机、删除、修改数据。尽管存在风险,但是还未出现数据被盗取的案例
- Intel和其他公司计划在下周尽快解决,如果确实只是Intel独有,那么对于与AMD和Qualcomm的竞争就会处于劣势
AMD认为这个问题并不是与硬件毫无关系的,该公司声明(CNBC新闻),由于架构上的不同,AMD的处理器目前”near zero risk”,并列出不受影响的处理器
- 这条新闻中提及,Meltdown只存在于Intel,Spectre在AMD和ARM中也存在
- Rambus的Paul Kocher告知CNBC,AMD其实也受到Spectre的影响
Meltdown是通过预测执行打破app与OS间的functional isolation;Spectre采用类似的方法打破secure app的保护膜
- 事实上,在某些程序中,处于安全目的的边界检查更容易被攻击,Spectre很难被发现,但却很难被阻止
- Google声明,Android手机在更新后就安全,诸如Google Apps,Google App Engine和smart phone devices,如Google Home,Chromcast和Google Wifi。最好打开Chrome的Site Isolation
- 声明中提到:There is no single fix for all three attack variants; each requires protection independently.
- Microsoft公布-bloomberg了更新日期
- 新闻中Intel发言:Our process is, if we know the process is difficult to go in and exploit, and we can come up with a fix, we think we’re better off to get the fix in place
- Intel股票降低了3.4%( 45.26),AMD涨了5.2 45.26 ) , A M D 涨 了 5.2 11.55)
- Frorester Reserch公司的一名分析员Frank Gillett称:对于漏洞的软件修复,在保证安全的前提下,代码行数、计算能力、功耗等性能的考量也十分重要;云供应商可能在关闭服务器以修复这些漏洞时,必须限制访问数据中心的新用户量;另外服务器需求量将增加,价格将上涨。
- Intel回复
- 2018/01/04 intel-patching-exploitable-processors
- 下周前更新5年内90%受影响的处理器
- 发现的缺陷使得近10年来生产的电脑(包括Intel/ARM/AMD)中普通进程可以决定kernel memory的布局,从其他的app中偷取(swipe data from)敏感信息
- 打补丁后,可能会带来严重的性能下降,但这些影响都是”highly workload-dependent”,普通用户(average consumer)看不到
- 2018/01/04 meltdown-spectre-questions
- 漏洞发现者们认为,Spectre目前不能完全解决,但在某些特殊场景下可以解决,Intel和Microsoft同意
- Intel的vice president,Donald Parker说,没有必要替换所有的设备以抵御攻击,with software patches and “firmware updates” — a way of updating code on the chip itself