A weird bug can mess up your iPhone's WiFi, but there's a fixJuly 5, 2021
There’s a bug that makes it fairly trivial for someone to cause problems with Wi-Fi on iOS devices. Discovered by security researcher Carl Schou, all it takes is creating a public Wi-Fi hotspot with a specifically crafted name, and when someone with an iOS device connects to it, boom: Their Wi-Fi is disabled.
The weird thing about this bug is that it’s been discovered and publicly shared a few weeks ago, and there’s still no word about a fix coming.
Schou originally tweeted about the issue on June 19. If an iOS device connects to a Wi-Fi network called “%p%s%s%s%s%n”, its Wi-Fi will get disabled. Judging by comments from others, what happens from there can be quite different, depending on unknown factors: Some people have been able to enable the Wi-Fi on their devices simply by resetting network settings. For others — Schou included — this didn’t work, and neither did restarting the iPhone.
Several outlets, including 9to5Mac, have picked up the news back then. It appears that the bug has to do with the syntax of some programming languages, where “%(character)” is a string format specifier. It’s a fairly common type of bug, where a character string that’s used in programming mistakenly ends up somewhere where it can cause trouble, causing an app to crash.
As others experimented with the bug, it turned out that you can use other network names to produce the same effect; Schou proposed “%secretclub%power”, and Security researcher Alex Skalozub, who spoke with The Register, said a name like “%Free %Coffee at %Starbucks” would also work.
This makes the issue a bit more serious, as it’s fairly easy to concoct a Wi-Fi network name that sounds like something you’d want to connect to. Though it doesn’t appear the bug can be used to steal your data or anything nefarious like that, a prankster could set up a public Wi-Fi network that would mess up the iPhones of everyone that connected to it — and with the right name, it could take in a lot of people.
Bringing this story back into attention was Schou’s tweet on Sunday that he still hasn’t been able to fix his Wi-Fi. Ultimately, he did it by manually editing an iPhone backup, and removing the offending Wi-Fi network names from the “known networks” .plist — something a typical iPhone user certainly isn’t eager to do. Another user suggests removing the offending Wi-Fi network name from iCloud Keychain on a Mac.
While it’s comforting to know that a fix for this bug exists, it’d be nice if Apple fixed it on their end. Schou says he contacted Apple about the issue but hasn’t heard back. We’ve done the same and will update this article when we hear from Apple.