15 lines of CSS code can cause Apple devices to crash, and the latest iOS 12 is not immune

15 lines of CSS code can cause Apple devices to crash, and the latest iOS 12 is not immune

Just 15 lines of CSS to crash your iPhone

Security researcher Sabri Haddouche of Wire has discovered a new attack that can cause iOS to reboot and macOS to freeze simply by visiting a webpage containing certain CSS and HTML. Windows and Linux users are not affected by this bug.

The attack exploits a weakness in the -webkit-backdrop-filter CSS property, by using nested divs with that property, it can quickly consume all graphical resources and crash or freeze the operating system. The attack does not require Javascript to be enabled, so it also works in Mail. On macOS, this manifests as a UI freeze. On iOS, this manifests itself as a device reboot. The attack affects all browsers on iOS, as well as Safari and Mail in macOS, since they all use the WebKit rendering engine.

For those who want to see the code that leads to this attack, the researchers have published it on their GitHub page.

Be careful when clicking on rawgit.com links, as it can quickly crash iOS or cause problems on your Mac.

rawgit.com link:

https://www.bleepingcomputer.com/news/security/new-css-attack-restarts-an-iphone-or-freezes-a-mac/

Code GitHub:

https://gist.github.com/pwnsdx/ce64de2760996a6c432f06d612e33aea

Open this GitHub page and you can see the code as follows:

The red part above is a base64-encoded image, and below it are many <div> tags. As Haddouche said, the purpose of the attack is to consume device resources by embedding a large number of HTML element tags in the filter attributes.

<<:  HTML Tutorial: Collection of commonly used HTML tags (5)

>>:  When modifying a record in MySQL, the update operation field = field + string

Recommend

How to use SessionStorage and LocalStorage in Javascript

Table of contents Preface Introduction to Session...

htm beginner notes (must read for beginners)

1. What is HTML HTML (HyperText Markup Language):...

What I learned while building my own blog

<br />In one year of blogging, I have person...

Summary of using MySQL online DDL gh-ost

background: As a DBA, most of the DDL changes of ...

Learn Vue middleware pipeline in one article

Often when building a SPA, you will need to prote...

Detailed introduction to deploying k8s cluster on centos7 system

Table of contents 1 Version and planning 1.1 Vers...

How to encapsulate WangEditor rich text component in Angular

The rich text component is a very commonly used c...

MySQL query syntax summary

Preface: This article mainly introduces the query...

Research on the effect of page sidebar realized by JS

Table of contents Discover: Application of displa...

Example of using the href attribute and onclick event of a tag

The a tag is mainly used to implement page jump, ...

Implementation of CSS circular hollowing (coupon background image)

This article mainly introduces CSS circular hollo...

Detailed explanation of how to connect Java to Mysql version 8.0.18

Regarding the connection method between Java and ...

How to solve the problem of too many open files in Linux

The cause is that the process opens a number of f...