Íme egy vicces hiba: egy biztonsági kutató fedezte fel, hogy egy gondosan elkészített hálózati név hibát okoz az iOS hálózati kapcsolatában, és teljesen letilthatja az iPhone-od Wi-Fihez való csatlakozási képességét.
Carl Schou a Twitteren mutatta be, hogy miután csatlakozott egy adott névvel (“%p%s%s%s%s%s%s%s%n”) ellátott Wi-Fi hálózathoz, az iPhone-on ettől kezdve minden Wi-Fi funkció letiltásra került.
Miután egy iPhone vagy iPad csatlakozik a “%p%s%s%s%s%s%s%s%n” nevű hálózathoz, a készülék nem tud csatlakozni a Wi-Fi hálózatokhoz, illetve nem tudja használni a rendszer hálózati funkcióit, például az AirDropot. A probléma a készülék újraindítása után is fennáll, bár létezik rá megoldás.
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
— Carl Schou (@vm_call) June 18, 2021
Bár Schuo nem részletezi, hogy pontosan hogyan jött rá erre, minden programozónak észre kell vennie egy mintát a hiba kiváltásához szükséges funky hálózati névben.
Íme a valószínű magyarázat: a ‘%[karakter]’ szintaxist a programozási nyelvekben általában változók kimeneti karakterláncáak formázására használják. A C nyelvben a ‘%n’ specifikáció azt jelenti, hogy a formázott karakterláncba írt karakterek számát a karakterlánc-formázó függvénynek átadott változóba kell menteni. A Wi-Fi alrendszer valószínűleg a Wi-Fi hálózati nevet (SSID) adta át nem szanitizáltan valamilyen belső könyvtárnak, amely a karakterlánc formázását végzi, ami viszont tetszőleges memória írást és puffer túlcsordulást okoz. Ez memóriakárosodáshoz vezet, és az iOS watchdog megöli a folyamatot, így gyakorlatilag letiltja a Wi-Fi-t a felhasználó számára.
Nyilvánvalóan ez egy olyan homályos eseménylánc, hogy nagyon valószínűtlen, hogy bárki véletlenül beleesik ebbe, hacsak nem kezdenek el ezzel szórakozni az emberek. Amíg az Apple nem javítja ki a problémát egy jövőbeli operációs rendszer frissítésben, addig csak tartsd nyitva a szemed és óvakodj a nevükben százalékos szimbólumokat tartalmazó Wi-Fi hálózatoktól.
Mindazonáltal, ha valahogy érintett vagy ebben, a hiba nem úgy tűnik, hogy tartósan károsítja a hardveredet. Az összes hálózati beállítást visszaállíthatod, és kezdheted elölről. A Beállításokban válassza az Általános > Visszaállítás > Hálózati beállítások visszaállítása menüpontot. Ez visszaállítja az iPhone összes elmentett Wi-Fi hálózatát (valamint más dolgokat, például a mobilbeállításokat és a VPN-hozzáférést), és ezzel eltávolítja a memóriából a rosszindulatú hálózat nevének ismeretét. Ezután ismét csatlakozhatsz a szokásos otthoni Wi-Fi hálózathoz.