There Is One Very Specific WiFi Name That Will Disable WiFi On Your iPhone Altogether
Weird bugs crop up from time to time, especially when you’re dealing with complicated hardware and software like that inside an iPhone. But a new one has been found that can cause quite a biggie, because it completely disables WiFi on an iPhone.
First spotted by Twitter user Carl Schou, it appears the WiFi name “%p%s%s%s%s%n” is enough to completely kill WiFi on the device in question.
Connecting an iPhone or iPad to a WiFi network whose name consists of that text string will render WiFi inoperable, including things like AirDrop. The only way to get things working again is to restart the device in question. And that’s less than ideal.
The folks at 9to5Mac think they know what’s going on, though.
Here’s the likely explanation: the ‘%[character]’ syntax is commonly used in programming languages to format variables into an output string. In C, the ‘%n’ specifier means to save the number of characters written into the format string out to a variable passed to the string format function. The Wi-Fi subsystem probably passes the Wi-Fi network name (SSID) unsanitized to some internal library that is performing string formatting, which in turn causes an arbitrary memory write and buffer overflow. This will lead to memory corruption and the iOS watchdog will kill the process, hence effectively disabling Wi-Fi for the user.
After joining my personal WiFi with the SSID “%p%s%s%s%s%n”, my iPhone permanently disabled it’s WiFi functionality. Neither rebooting nor changing SSID fixes it :~) pic.twitter.com/2eue90JFu3