写点什么

15 行代码让苹果设备崩溃,最新的 iOS 12 也无法幸免

  • 2018-09-26
  • 本文字数:840 字

    阅读完需:约 3 分钟

安全研究人员 Sabri Haddouche 发现了一个只需几行代码就可以让 iPhone 崩溃并重启的方法。

Sabri Haddouche 在 GitHub 上发布了一个示例网页,只有 15 行代码,如果在 iPhone 或 iPad 上访问这个页面,就会崩溃并重启。在 macOS 上使用 Safari 打开该页面也会出现浏览器挂起,无法动弹。

这段代码利用了 iOS Web 渲染引擎 WebKit 中的一个漏洞。Haddouche 解释说,在 CSS 过滤器属性中嵌套大量元素(如 <div>),就会耗尽设备的资源,并导致内核崩溃,然后关闭并重新启动操作系统。

Haddouche 说,“任何在 iOS 上渲染 HTML 的应用程序都会受到影响”。他警告说,任何人都可以通过 Facebook 或 Twitter 上向你发送链接,或者通过电子邮件发送链接,如果你打开了这些连接或者访问了任何包含这段代码的网页,就会中招。

下面是 Haddouche 的推文截图:

他在推文中给出了网页链接和 GitHub 代码链接,并事先给出警告,如果点了那个网页链接后果自负。

经安全公司 Malw​​arebytes 的证实,最新的 iOS 12 测试版在单击这个链接时也会发生挂起。

即使有些“幸运”的设备不会发生崩溃,也会重新启动用户界面。

好在这个攻击虽然令人讨厌,但它不能用来运行恶意代码,也就是说无法利用它来运行恶意软件,也无法通过这种方式来盗取数据。但目前没有简单的方法可以防止攻击发生。只要单击链接或打开 HTML 电子邮件,这段代码就会让设备崩溃。

Haddouche 向苹果公司报告了这个漏洞,苹果公司表示正在调查中,还没有发言人就此事发表评论。

这里给出带有这段代码的网页链接,有好奇心的人在单击链接之前请慎重考虑: https://t.co/4Ql8uDYvY3

下面是这段代码的 GitHub 链接: https://gist.github.com/pwnsdx/ce64de2760996a6c432f06d612e33aea

打开这个 GitHub 页面,可以看到代码如下:

上面红色部分是一张经过 base64 编码的图片,下面是很多 <div> 标签。正如 Haddouche 所说,就是利用了在过滤器属性中嵌入大量 HTML 元素标签来消耗设备的资源,从而达到攻击的目的。

感谢覃云对本文的审校。

2018-09-26 19:002832
用户头像

发布了 731 篇内容, 共 473.8 次阅读, 收获喜欢 2008 次。

关注

评论 1 条评论

发布
用户头像
点了链接会怎么样?
2018-11-22 15:48
回复
没有更多了
发现更多内容

嵌入式RTOS的 任务栈 和 系统栈

矜辰所致

嵌入式 9月月更 RTOS

ReactDOM.render在react源码中执行之后发生了什么?

flyzz177

React

安利几款简单好用的帮助文档制作工具

Baklib

帮助文档

GPU是AI时代的算力核心

Finovy Cloud

人工智能 云渲染

【译】日志:每个软件工程师都应该了解实时数据的统一抽象【三】

Rae

kafka 日志 原理

分享|破世界纪录的OceanBase,如今入选了国际顶会VLDB 2022

OceanBase 数据库

【导航】FreeRTOS学习专栏目录 【快速跳转】

矜辰所致

目录 FreeRTOS 9月月更

Alluxio与北京大学计算机学院签署合作框架协议,推动产学研深度融合

Alluxio

开源 云原生 产学研用 Alluxio 北京大学

还不知道产品帮助中心怎样制作?,来看看这个吧

Baklib

产品的帮助中心怎么建设?关于编辑帮助文档的几个小技巧~

Baklib

NFTScan 与 PANews 在 NFT 数据层面进行战略合作

NFT Research

API NFT 合作 MetaMask

Tree-sitter入门

阿呆

Python tree-sitter py-tree-sitter

Java: 压缩PDF文档

Geek_249eec

Java PDF 压缩

大咖说·图书分享|深入集群:大型数据中心资源调度与管理

大咖说

编程 数据中心

python安装包报错Microsoft Visual C++ 14.0 or greater is required

阿呆

pip

还在为产品的客户服务而烦恼?来搭建在线客服中心!

Baklib

四个典型的车联网案例,给你数据架构升级思路

TDengine

tdengine 车联网 物联网

基于边缘计算的渲染新应用

火山引擎边缘云

边缘计算 渲染 边缘云 渲染性能 渲染服务

重磅发布!Orbit 云原生应用全生命周期管理工具上线啦!

CODING DevOps

云原生 Orbit CODING

云数据库技术行业动态@2022-09-30

数据库 数据复制 数据管理 数据备份 数据对比

使用WIX 进行商业智能OEM打包

葡萄城技术团队

iMazing传输 iPhone 备忘录和通话记录功能

淋雨

ios iphone

葡萄城受邀参加WOT全球技术创新大会

葡萄城技术团队

好的代码是优质资产、莫让代码成为负债

葡萄城技术团队

zookeeper集群之间如何通讯

浅羽技术

zookeeper 通信 集群 ZooKeeper原理 9月月更

开发者有话说|27岁暮年老人一生

百里丶落云

卫星通信,给手机市场带来了什么?

脑极体

边缘计算落地提速 天翼云Serverless边缘容器加速深耕市场

极客天地

多维数据库中的高效计算机制

元年技术洞察

智能多维数据库 专利解析

国庆数字游,融云都为您准备好了

融云 RongCloud

Go runtime:带你了解Go语言的GMP模型与goroutine调度

董哥的黑板报

Go 线程 操作系统 协程 runtime

15行代码让苹果设备崩溃,最新的iOS 12也无法幸免_Apple_无明_InfoQ精选文章