Bezpečnostní výzkumník Carl Shou zjistil, že některé sítě Wi-Fi se symbolem procenta (%) v názvu mohou deaktivovat Wi-Fi na iPhonech a dalších zařízeních se systémem iOS.
Carl Schou na Twitteru uvedl, že pokud se iPhone dostane do dosahu sítě s názvem %secretclub%power, zařízení nebude moci používat Wi-Fi ani žádné související funkce. I po tom, co obnovíte nastavení sítě, může chyba nadále způsobovat, že Wi-Fi v zařízení nebude možné používat.
Chyba je dost podobná něčemu, co Carl Shou objevil již před několika týdny. Chyba také spočívá v divném jméně Wi-Fi sítě. Po tom, co se iPhone nebo iPad připojí k síti s názvem „%p%s%s%s%s%s%n“, přestane zařízení spolupracovat a nedovolí používání sítí Wi-Fi ani používání systémových síťových funkcí, jako je AirDrop. Problém přetrvává i po restartování zařízení.
Portál 9to5mac poskytl možné vysvětlení této podivné chyby:
„syntaxe ‚%[znak]‘ se běžně používá v programovacích jazycích k formátování proměnných do výstupního řetězce. V jazyce C znamená specifikátor ‚%n‘ uložení počtu znaků zapsaných do formátovacího řetězce do proměnné. Subsystém Wi-Fi pravděpodobně předává název sítě Wi-Fi (SSID) některé interní knihovně, která provádí formátování řetězce, což následně způsobí chybný zápis do paměti a přetečení bufferu. To povede k poškození paměti a systém iOS proces ukončí, čímž uživateli účinně zakáže používání Wi-Fi.„
Jak obnovit funkčnost Wi-Fi
Nezdá se, že by chyba měla nějak trvale poškodit hardware. Je šance, že pomocí obnovení síťového nastavení chybu opravíte. V Nastavení přejděte do Obecné -> Obnovit -> Obnovit nastavení sítě. Tím se resetují všechny uložené sítě Wi-Fi v iPhonu (a také další věci, jako je nastavení mobilních sítí a přístup k VPN), čímž se z jeho paměti odstraní znalost názvu škodlivé sítě. Poté se můžete opět připojit ke standardní domácí Wi-Fi.
Pokud chyba stále přetrvává, bude možná jediným možným řešením obnovení do továrního nastavení nebo obnovení zařízení pomocí iTunes. Pár uživatelů na Twitteru také uvedlo, že ruční odstranění názvů sítí z „com.apple. Wi-Fi.known-network.plist“ může problém vyřešit.