describe
In an interesting piece of news while browsing twitter, Sabri Haddouche found a bug in the WebKit rendering engine used by Safari that crashed and restarted IOS iphones and ipads. Below is the source link
Click on me (Need science online)
The principle of
Simply put, the attack exploits a weakness in the -webkit-backdrop filter CSS property, using nested div with this property to quickly consume all graphics resources and crash or freeze the operating system. This attack does not require Javascript, so it also applies to Mail. On macOS, this shows up as a UI freeze. On iOS, the device restarts. This attack affects all browsers on iOS, as well as Safari and Mail on macOS, because they use the WebKit rendering engine.
The specific implementation
Then we could create an HTML file and set 3000 <div> tags in the Beautiful Backdrop filter.
Read the source code is not to say, this is not funny me? That’s gone? Yeah, that’s right. It’s that simple. 3,000 tabs broke the iPhone. Mainly due to Webkit bugs, graphics rendering resources were quickly consumed, leading to the crash.
Interestingly, apple still hasn’t fixed IOS 12 since its release.
Apple forces all browsers and HTML-enabled apps listed on the App Store to use its WebKit rendering engine, which means the problem is likely to crash any App that can load a Web page. [Manual funny face] Apple users cry
Click to me
The test link
Warning: If you are trying to open the following link, please read it carefully. This will restart your phone and any unsaved data that you may have opened in Safari or any other application may be lost. I am not responsible for any damage that may have occurred on your device as a result of this bug.
Please save your data before clicking me
Write in the last
The above is just some small practice I wrote, do some technical talk, any questions are welcome to exchange correction. The exact cause of the bug depends on the official reply from Apple. Can not use this vulnerability to destroy oh, has nothing to do with the author oh!