看个电子书都会被黑客攻击,这是上面情况?

自2007年以来,亚马逊已售出数千万台Kindle,但这也意味着数以千万计的人可能会因为这些 Kindle 中的软件漏洞而被黑客攻击。他们的设备可能会变成木马,或者他们的私人本地网络会受到攻击,甚至他们的账单帐户中的信息也可能会被盗。

在这里插入图片描述

远程访问用户 Kindle 的最简单方法就是对电子书发起攻击。含有恶意程序的电子书可以通过“自助出版”服务发布并在任何虚拟图书馆(包括 Kindle 商店)中免费访问,或通过亚马逊“发送到 Kindle”服务直接发送到最终用户设备。
为了验证这种攻击,研究人员成功制作了一本含有恶意程序的书。如果你在 Kindle 设备上打开这本书,它可能会导致一段隐藏的代码以 root 权限执行。此时,用户就已经失去了对电子阅读器的控制。

该问题已于 2021 年 2 月报告给亚马逊,并于 2021 年 4 月在 5.13.5 版本的 Kindle 固件中修复,修补后的固件将自动安装在连接到互联网的设备上。

Kindle Touch 架构

基本上,Kindle OS 是一个 Linux 内核,其中包含主要由 busybox 提供的一组本机程序、用于进程间通信的 LIPC 子系统以及用于用户界面 (UI) 和服务的 Java 和 Webkit 子系统。

Touch 架构

LIPC 是一个基于 D-Bus 的 IPC 库及其将所有 Kindle 组件链接在一起的环境。 Kindle 进程可以使用此库来启动应用程序、公开应用程序属性/设置、监听或触发事件。例如,用 HTML 和 Javascript 编写的 Webkit 应用程序可以使用 LIPC 与 Java 服务或本机应用程序交互。

大多数 UI 是用 Java 编写的,Java 子系统(框架)为服务和 UI(所谓的Booklets)提供 LIPC 处理程序。比如 Kindle 主页 UI 窗口就是框架管理的 com.lab126.booklet.home Booklets。

Webkit 子系统(HTML5 和 Javascript)是另一种创建 UI 元素的方法。内置的实验浏览器是 Webkit 子系统的一部分。 Pillow 是一个允许从 Javascript 访问 LIPC 的库。

Kindle组件的解析

Kindle 电子阅读器固件的最新版本(5.13.4)已在亚马逊官方网站公开下载,源代码也部分可用。但是源代码对研究人员的研究没有帮助,因为它主要由第三方开源项目组成,包括 Linux 内核,并在亚马逊上进行了小幅调整,负责解析和呈现没有源代码的电子书组件。

研究人员的第一个目标是发现电子书解析框架中的漏洞,研究人员有足够的固件文件,不需要真正的 Kindle 设备。
当你在Kindle设备上下载一本新书时,/mnt/us/documents是常规的电子书目录,谁先处理文件?/usr/bin/scanner 服务会定期扫描文档目录中的新文件,并根据文件扩展名使用“提取器”库之一从电子书中提取元数据。所有提取器都列在 /var/local/appreg.db sqlite 数据库中。每种支持的 Kindle 电子书格式都有一个处理程序:

在这里插入图片描述

如果扫描程序与文件扩展名不匹配或出现解析错误,则不会向用户显示电子书。

研究人员没有深入研究扫描过程,因为提取元数据的操作过于简单,无法提示解析错误。

扫描程序完成工作后,主屏幕上会显示新书的缩略图。此时,Java 框架负责在用户点击时打开这本书。可以在 /opt/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值