新式进犯运用W3C环境光线传感器来盗取浏览器的灵敏信息
概述
在这篇文章中,咱们将会给咱们介绍一种从浏览器中提取灵敏信息的办法,而咱们所要用到的东西便是你的智能手机或笔记本电脑中的环境光传感器。文章结构如下:
1. 首要,咱们会介绍与光传感器有关的内容。
2. 接下来,咱们会描述用户设备的屏幕色彩将会对光传感器的数据发生怎样的影响。咱们的首要方针是跨域提取浏览器的数据和历史记载,而进犯者将能够从中提取出灵敏文档和图片(例如用于账号康复的二维码图片)。
3. 最终,咱们会介绍浏览器厂商所能采纳的应对战略,并协助咱们缓解这种危险。
注:当时版别的Firefox和Chrome浏览器都无法抵挡这种进犯,包含带有光传感器的Android以及桌面设备(例如MacBookPro)。
布景常识:智能手机中的光传感器
现在,简直一切类型的智能手机和绝大多数的笔记本电脑都配备有环境光传感器。这种传感器一般会被安装在设备的顶部,也便是在接近前置摄像头的当地。智能手机不只能够运用环境光传感器来检测用户距离,并且还能够感应外部环境,并经过调整屏幕亮度来到达省电的意图。除此之外,光环境信息也能够用来调整智能手机的呼应办法,或许对硬件进行装备。因而,光传感器的数据是十分灵敏的。
环境光传感器回来的数据其精确度是十分高的,在世界标准单位中,衡量光强度所用的单位是勒克斯(lux),输出数据范围在0(漆黑)到上万lux不等。并且光传感器输出数据的频率也是十分高的,读取距离大约为100-200毫秒。
为了与原生App竞赛并给用户供给更好的用户体会,越来越多的网站开端有拜访环境光传感器数据的需求了。可是,W3C设备与传感器作业安排现在还在评论是否要答应网站在没有得到用户答应的情况下拜访光传感器数据。可是,当时版别的Chrome和Firefox都现已完成了相应的API。
传感器隐私
W3C安排近期正在评论有关通用传感器API的内容,其间一个首要的论题便是第三方服务在拜访特定传感器数据时是否需求征得用户的答应。因而,咱们此次研讨的意图便是要研讨环境光传感器(ALS)现在所面临的安全要挟。在此之前,我曾从安全和隐私这两个方面临ALS进行过全面的剖析,经过研讨发现,进犯者不只能够经过传感器走漏数据来检测房间内是否有人,并且还能够找出方针用户的银行暗码。
在这篇文章中,咱们的重点是传感器数据将怎么协助进犯者从方针用户的浏览器中提取出隐私数据。接下来,咱们会评论实践的进犯场景。
运用光传感器提取数据
那么咱们究竟怎么才干经过环境光传感器来提取出用户的隐私数据呢?首要,咱们要留意以下两点:
1. 用户屏幕的色彩携带着很多的有用信息,可是出于安全方面的考虑,网站是制止直接读取这方面信息的。
2. 进犯者能够经过光传感器的读数来区别不同的屏幕色彩
咱们待会儿再详细描述第二点,但简而言之,屏幕所宣布的光不只会对光传感器的读数发生影响,并且还会答应网站判别设备屏幕的色彩。
而第一点肯定会让你感到惊奇吧?究竟网站能够操控它们在用户屏幕上所显现的内容,所以它们为什么还会对这些数据感兴趣呢?但你要知道,下面这两种色彩状况是网站无法直接获取的:
1. 已拜访过的链接色彩:出于隐私原因,浏览器不会向开发者泄漏页面所显现的链接色彩,不然歹意开发者就能够运用“:visited”这种页面style来检测用户所拜访过的网站了。
2. 跨域资源:同源战略能够避免歹意网站跨域拜访受害网站的合法资源。尽管网站不能跨域查看其他网站的结构和图片,但他们能够依据自己的需求来显现这些内容,例如缩放巨细和改动色彩。
接下来,咱们将介绍进犯的完成办法。
检测已拜访过的链接
尽管网站能够选用不同的style来显现已拜访过的和未拜访过的链接色彩,可是它们不能检测链接是怎么显现给用户的。不过,咱们能够经过传感器来辨认链接的实在色彩。大致过程如下:
1. 设置链接的style:已拜访过的(白色)、未拜访过的(黑色)。
2. 校准:显现一个白色布景然后再显现黑色布景,以此来辨认用户环境的光等级。不过需求留意的是,传感器读数动摇较大将会添加咱们的进犯难度。
3. 遍历链接列表:一个接一个地读取列表中的地址,然后显现在屏幕中。已拜访过的链接将以白色显现,未拜访过的链接则是黑色。
4. 记载下每一条链接的光等级,辨认它们的色彩。由于咱们现已在第二步中对屏幕进行了校准,所以咱们现在就能知道光传感器的每一个读数所代表的色彩了。
最终,进犯者将获取到一切白色的链接,这样他们就能知道用户之前拜访过哪些页面了。
演示视频如下:
视频地址:https://youtu.be/Rg0LQ3npkP0
在演示视频中,咱们试验环境的光条件在数据提取阶段是不会发生变化的,可是去除这个约束条件也并非难事。
盗取跨域资源
在咱们的试验过程中,咱们的重点将放在盗取图片上,由于图片资源比较好提取。鄙人面的演示视频中,网站答应用户经过扫描二维码(https://victim.com/account-code.png)来紧迫拜访或康复账号,而进犯者就能够运用这个二维码来绑架用户账户了。
视频地址:https://youtu.be/LF8Wi1UVj7U
进犯机制大致如下:
1. 从受进犯的域名嵌入一张图片。一般情况下,这张图片关于不同身份的用户是不一样的,例如用户头像或安全码。
2. 运用SVG过滤器来创立是非方式的图片。
3. 缩放图片,让图片充溢整个屏幕。
4. 遍历图片中的一切像素,并在用户屏幕上显现每一个像素,然后记载下光传感器对每一个像素的读数。
[1] [2] 黑客接单网