博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
只需几行CSS代码就可另iPhone崩溃?
阅读量:6041 次
发布时间:2019-06-20

本文共 870 字,大约阅读时间需要 2 分钟。

描述

逛推特时发现一个有趣的新闻,Sabri Haddouche发现Safari使用的WebKit渲染引擎中存在一个漏洞,该漏洞会令使用IOS操作系统的iPhone和iPad系统崩溃并重新启动。 以下是源链接

原理

简单点说,就是攻击利用 -webkit-backdrop-filter CSS 属性(背景过滤器)中的弱点,通过使用具有该属性的嵌套 div,可以快速消耗所有图形资源并崩溃或冻结操作系统。此攻击都不需要 Javascript,因此它也适用于 Mail。在 macOS 上,表现为 UI 冻结。在 iOS 上, 表现为设备重启。此攻击会影响 iOS 上的所有浏览器,以及 macOS 中的 Safari 和 Mail,因为它们都使用 WebKit 渲染引擎。

具体实现

本着实践才出真理的原则,就赶紧来试了一下,随便写一个HTML,在backdrop filter 中嵌套3000个 <div> 标签。

看完源码是不是想说,这不逗我吗?这就没了? 对,没错,就是这么简单,3000个标签就把iPhone玩坏了。 主要是因为Webkit的漏洞,图形渲染资源快速消耗,导致了崩溃。

有趣的是IOS 12发布之后,苹果依旧没有修复它。

Apple强制App Store上列出的所有浏览器和支持HTML的应用程序都使用其WebKit渲染引擎,这意味着该问题很可能会导致任何能够加载网页的APP崩溃。 【手动滑稽脸】苹果用户哭哭

HTML源码:

测试链接

Warning:如果您要尝试打开以下的链接,请认真阅读。这将重新启动您的手机,任何未保存的数据,您可能已经打开在Safari或任何其他应用程序可能会丢失。我不负责任何损害可能发生在您的设备作为这个bug的结果。

写在最后

以上只是我写的一些小实践,做一些技术谈论,有任何问题也欢迎大家交流指正。具体漏洞产生的原因还得看苹果官方的回复啦。不可利用此漏洞用于破坏哦,与作者无关哦!

转载于:https://juejin.im/post/5ba3bcbbe51d450e9943197e

你可能感兴趣的文章
vue.js的模板渲染
查看>>
关于H5+css3的一些简单知识
查看>>
Google-Authenticator
查看>>
C语言--第0次作业
查看>>
离线数据分析流程及推荐系统架构图
查看>>
第一个web项目
查看>>
程序员职业生涯探讨(转)
查看>>
移动应用跨平台之旅
查看>>
poj 1426 Find The Multiple(bfs)
查看>>
zabbix部署
查看>>
Redis持久化及复制
查看>>
Selenium基础知识(详解IDE命令、css及xpath定位一)
查看>>
Java Web整合开发(82)
查看>>
Scrum 简介
查看>>
Windows批处理 调用程序后 不等待子进程 父进程继续执行命令
查看>>
[BZOJ 4551][Tjoi2016&Heoi2016]树(并查集)
查看>>
smartcar.urdf.xacro
查看>>
C#设计模式学习笔记-单例模式
查看>>
BaseActivity
查看>>
django 使用mysql数据库的流程
查看>>