Avenger
- 关注
亚马逊 Kindle 电子阅读器中存在的三个漏洞使远程攻击者可以执行任意代码并以 root 用户运行程序。
Realmode Labs 的研究人员 Yogev Bar-On 发现,可以通过“发送至 Kindle”这个功能通过电子邮件将恶意的电子书发送到 Kindle 中,从而发起攻击。这一发现为 Yogev Bar-On 从亚马逊的赏金计划中赚了 18000 美元。
第一个漏洞使攻击者可以将电子书发送到受害者的 Kindle 设备。第二个漏洞用于在解析电子书时执行任意代码。第三个漏洞使攻击者可以提升权限以 root 用户运行代码。
研究人员称攻击者首先需要知道分配给受害者设备的电子邮件地址,以及一个预定义的已验证电子邮件列表,任何电子书都可以从中发送。根据 Bar-On 的解释,这两个条件都不是很大的困难。
- 亚马逊分配的电子邮件地址通常是对应 kindle.com 域名下用户的常规电子邮件地址(例如,name@gmail.com 对应着 name@kindle.com)。
- 电子邮件认证没有想象中的那么广泛,许多电子邮件服务器仍然不支持身份验证,亚马逊不能完整验证所有发件人的真实性
KindleDrip 攻击
KindleDrip 攻击的第一步是将恶意电子书发送到目标设备。电子书作为附件发送并会自动显示在用户的书库中。但是,受害者不会收到有关书架中增加新书的提醒。
Bar-On 表示:“更糟糕的是,没有迹象表明该电子书是通过电子邮件收到的”,“电子书也以我们选择的封面图像出现在 Kindle 主页上,这使网络钓鱼攻击变得更加容易”。
受害者点击电子书,打开目录之中的链接,链接将调用内置浏览器打开包含恶意 JPEG XR 图片的 HTML 页面。图片解析后,恶意代码就可以以 root 用户运行,payload 更改启动背景图并重启设备。随后,攻击者窃取用户凭据,就可以登录受害者的账户。
技术细节
研究人员发现Kindle 的 Web 浏览器支持 JPEG XR 这种罕见图像格式。Kindle 本身提供一个名为 libjpegXR.so 的固件程序,用于解析 JPEG XR 图片。
控制 JPEG XR 图片中的部分字节,就可使 Kindle 在解析 JPEG XR 图片时,触发缓冲区溢出。缓冲区溢出之后,有一个指针 struct jxr_tile_qp * tile_quant 可以被重写,可以将数据写入攻击者控制的地址。
使用这一方法就可以将 shellcode 写入可执行段。与此同时,该方法也可以用于“喷射”全局偏移表(GOT)。多线程执行时,线程不可避免地会从 GOT 调用函数,shellcode 即可得到执行。执行代码后,就要进行权限提升。研究人员通过 stackdumpd 在 root 用户的上下文执行任意代码。
链接在一起的三个漏洞使在 Kindle 上执行远程代码成为可能,POC 验证视频在 You-tube 上:
https://www.y=outube.com/embed/S6dPM1KHyYA (注:链接无法正常插入故增加空格,访问请删除空格)
快速修复漏洞
通过这种方式,攻击者就可以查看用户的 Web 会话、窃取用户凭据,包括盗取钱财。比如攻击者出版电子书后,控制用户的账户进行购买。
该攻击仅适用于固件版本为 5.13.2 或更低的 Kindle,亚马逊在最新更新的版本为 5.13.4 的固件中修复了这一漏洞。
组合使用三个不同的漏洞,攻击者就可以以 root 的身份在 Kindle 上执行任意代码。当然,也可以被用来越狱最新的 Kindle 设备,亚马逊非常重视这一漏洞,快速解决了问题。
参考来源
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)