专栏首页FreeBuf研究人员发现了一种读取加密数据的新型侧信道攻击

研究人员发现了一种读取加密数据的新型侧信道攻击

近期,研究人员发现了一种能够读取加密数据的新型侧信道攻击技术,这种攻击技术针对的是操作系统,而不是芯片,而且这种技术将有可能成为网络犯罪分子获取目标公司加密技术的关键。

这种新型的侧信道攻击主要针对的是操作系统,它能够绕过特定硬件的芯片,主要利用现代操作系统的基础功能来访问开发人员和用户想要尝试隐藏的那些数据。

研究人员在这份标题为《页面缓存攻击》的论文中提到:“这种技术主要针对的是Windows和Linux操作系统,但也有可能适用于其他操作系统。除此之外,它不需要对硬件中那些乱七八糟的指令进行分析,它主要依赖的是低权限用户通过操作系统就能够获取到的简单系统调用。”

Alex Lonescu不仅是该研究团队中的一员,而且他还是CrowdStrike的高层。他专门解释了攻击成功所需的几个要素:“首先,如果你有办法向目标设备的缓存中注入数据的话,那么你需要确保这些数据已经成功注入到缓存里了,接下来当你尝试导出这些数据时,你就会得到一些有意思的东西。”更重要的是,研究人员还发现不仅只有硬件有缓存这种东西,现在几乎任何东西都有缓存。

这种新漏洞的强大之处就在于,它可以检测并提取整个缓存页表上的数据,甚至是那些只存在了几毫秒的数据它都能获取到。由于攻击本身只需要花几毫秒的时间,因此攻击者有足够多的时间来做他们想做的事情,比如说读取用户的键盘击键数据和那些涉及到加密密钥查询的明文响应数据。

Tripwire的VERT团队在对该漏洞的潜在影响进行分析之后,给DrakReading写了一封电子邮件。他们在邮件中写到:“研究人员已经演示了如何利用现代操作系统架构中的漏洞来在孤立的进程之间创建隐蔽的数据传输信道,而且攻击者设置还可以存储键盘记录,并监视随机数生成器。更重要的是,攻击者可以利用低权限进程来实现数据的窃取。”

这种攻击技术基于的是目标操作系统中合法的系统调用,研究人员表示:“之所以会存在这种问题,是因为原本的操作系统设计得过于宽松,给非特权进程的权限过多,导致它们可以访问某些与缓存相关的系统调用。”

研究人员还举了个例子,比如说PHP框架中就使用了PHP函数microtime()来作为伪随机数种子,并用来进行密码操作。由于攻击者可以捕捉到返回的微时间以及调用密码生成器的请求,所以他们就能够了解加密的基本信息,从而使解密的过程变得更加简单。

虽然这种攻击是可以有办法防御的,但这需要操作系统厂商和应用程序开发者的共同努力,然后通过修改代码来修复这个漏洞。

* 参考来源:darkreading,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

本文分享自微信公众号 - FreeBuf(freebuf),作者:Alpha_h4ck

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-01-31

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 赛门铁克发现朝鲜APT组织Lazarus攻击金融机构的关键性工具

    10月2日,美国国土安全部(DHS)下属的US-CERT发表了一则针对朝鲜APT组织Lazarus(Hidden Cobra)的技术性预警公告,公告指出,在DH...

    FB客服
  • VirtualApp技术黑产利用研究报告

    一、 前言 VirtualApp(以下称VA)是一个App虚拟化引擎(简称VA)。VirtualApp创建了一个虚拟空间,你可以在虚拟空间内任意的安装、启动和卸...

    FB客服
  • 企业中了勒索病毒该怎么办?可以解密吗?

    勒索病毒席卷全球,给全球各大小政企业都带来了巨大的损失,勒索病毒重点在于防,可是黑客无孔不入,再强大的系统都有可能存在漏洞,万一企业被攻击,已经中了勒索病毒,那...

    FB客服
  • cnpm导致IDEA对于Angular项目提示失效

    最近写Angular项目的时候,IDEA的提示时而有时而没有,找了好久的原因才发现是cnpm的锅. 对于cnpm install,安装的angular依赖时链接...

    屈定
  • 【大数据100分】冯一村:数据可视化的魅力

    大数据文摘
  • c++自制锁机程序--两行代码

    1 #include<cstdlib> 2 using namespace std; 3 int main() 4 { 5 system("n...

    attack
  • 最全的集合干货送给大家

    集合在我们的日常开发中所使用的次数简直太多了,你已经把它们都用的熟透了,但是作为一名合格的程序员,你不仅要了解它的基本用法,你还要了解它的源码;存在即合理,你还...

    cxuan
  • datatables应用程序接口API

    Datatables有一个强大的api,用来处理表格上的数据,你可以添加数据到已经存在的表格,或者对已经存在的数据进行操作。 API旨在能够很好地操作表格中的数...

    菲宇
  • dirent相关 转

    主要包括两个文件:/usr/include/dirent.h  和/usr/include/bits/dirent.h

    domain0
  • 批归一化到底做了什么?DeepMind研究者进行了拆解

    批归一化用处很多。它可以改善损失分布(loss landscape),同时还是效果惊人的正则化项。但是,它最重要的一项功能出现在残差网络中——大幅提升网络的最大...

    机器之心

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动