Специфично име на Wireless мрежа може напълно да деактивира Wi-Fi на вашия iPhone

Ето една забавна грешка: изследовател на сигурността установи, че внимателно подбрано име на Wireless мрежата причинява грешка в мрежовия стaк на iOS и може напълно да деактивира способността на вашия iPhone да се свързва с Wi-Fi.

В Twitter, Carl Schou показа, че след присъединяването към Wi-Fi мрежа с конкретно име („%p%s%s%s%s%n“), цялата Wi-Fi функционалност на iPhone е деактивирана от този момент нататък.

След като iPhone-ът или iPad-ът се присъединят към мрежата с името „%p%s%s%s%s%n“, устройството не успява да се свърже с Wi-Fi мрежи или да използва системни мрежови функции като AirDrop. Проблемът продължава дори след рестартиране на устройството (въпреки че има решение, вижте по-долу).

Въпреки че Schou не уточнява как точно е разбрал това, всеки програмист трябва да бъде внимателен към структурата на Wireless мрежата, необходима за задействане на на този бъг.

Ето вероятното обяснение: синтаксисът „% [символ]“ често се използва в програмните езици за форматиране на променливи в изходен низ. В C спецификаторът „% n“ означава да запишете броя на символите, записани в низа на формата, във променлива, предадена на функцията за формат на низа. Подсистемата Wi-Fi вероятно предава името на Wi-Fi мрежата (SSID) несинизирана към някоя вътрешна библиотека, която извършва форматиране на низове, което от своя страна причинява произволно преписване на памет и препълване на буфера. Това ще доведе до повреда на паметта и устройството за наблюдение на iOS ще убие процеса, като по този начин ефективно деактивира Wi-Fi за потребителя.

Очевидно е, че това е толкова неясна верига от събития, че е малко вероятно някой човек случайно да попадне на това, освен ако в дивата природа изведнъж се появят куп шегаджии с отворени Wi-Fi мрежи, използващи отровното име. Докато Apple не коригира този бъг в бъдеща актуализация на операционната система, просто внимавайте за всички Wi-Fi мрежи с символи и проценти в тяхно име.

Независимо от това, ако по някакъв начин сте засегнати от това, грешката изглежда не уврежда трайно вашия хардуер.

Трябва да можете да нулирате всички мрежови настройки и да започнете отначало. В Настройки отидете на Общи -> Нулиране -> Нулиране на мрежовите настройки. Това нулира всички запазени Wi-Fi мрежи на вашият iPhone (както и други неща като клетъчни настройки и VPN достъп), като по този начин премахва запазеното в устройството зловредно име на мрежата от паметта му. След това можете да се присъедините към стандартния си домашен Wi-Fi отново.