写点什么

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:002441
用户头像

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

关注

评论 1 条评论

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

盘点2020 | 干饭人 cxuan 活下来了

苹果看辽宁体育

学习 总结 盘点2020

Java并发编程:AQS的原子性如何保证

码农架构

Java java 并发

训练营第十三周作业 1

仲夏

极客大学架构师训练营

盘点2020 | 21 张图总结我的 2020 年

Geek_z9ygea

盘点2020

盘点2020|从写程序到写文章,一个宅男程序猿到平台写手的心路历程

罗小龙

程序猿 盘点2020 心路历程 宅男 平台写手

LeetCode题解:92. 反转链表 II,递归,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

《面试官不讲武德》对Java初级程序猿死命摩擦Http协议

Silently9527

面试 https HTTP 图解https

点个外卖,我把「软中断」搞懂了

小林coding

Linux 操作系统

Linux 如何实现定时调度任务

Near

Linux Timer 定时调度

训练营第十三周作业 2

仲夏

IoT数据模型设计

soolaugust

物联网 IoT 数据模型 工业物联网 七日更

4. 上新了Spring,全新一代类型转换机制

YourBatman

Spring Framework 类型转换 Converter

快手基于 Apache Flink 的优化实践

Apache Flink

flink

测开之函数进阶· 第1篇《递归函数》

清菡软件测试

测试开发

ETHERZ流动性挖矿系统软件APP开发

系统开发

架构一期第十三周作业

Airs

与前端训练营的日子 --Week08

SamGo

学习

生产环境全链路压测建设历程 15:达成了99.99%,建设了哪些稳定性产品、工具?

数列科技杨德华

全链路压测 七日更

Cache Design Patterns

邵俊达

DeFi平台DAPP软件系统开发

系统开发

架构师训练营第十三周课程笔记及心得

Airs

一文搞懂 CountDownLatch 用法和源码!

苹果看辽宁体育

Java 源码 并发

工作3年,看啥资料能月薪30K?

小傅哥

Java 面试 小傅哥 七日更 技术成长

阿里 10 年:一个普通技术人的成长之路

阿里巴巴云原生

阿里云 云原生 技术人 自我思考 职场成长

JVM 垃圾回收原理

梧桐

MySQL修改账号密码方法大全

Simon

MySQL 七日更

蚂蚁集团下架互联网存款产品:互联网金融是天使还是魔鬼

石头IT视角

围观|第一代云原生企业米哈游如何让想象发生?

阿里巴巴云原生

阿里云 最佳实践 运维 云原生 游戏开发

第九周-作业一

ray-arch

第九周总结

小兵

Synchronized用法原理和锁优化升级过程(面试)

叫练

synchronized 轻量级锁 偏向锁 多线程与高并发 同步

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