本サイトは一部アフィリエイトプログラムを利用しています

【改善方法なし】iPhoneでWi-Fiが無効になるバグを2つ紹介

普段、何気なく利用しているiPhoneのWi-Fiですが、最近になってWi-Fiに関する大きなバグが見つかり、あるユーザがTwitterを通じて注意喚起しています。

発覚したバグはある文字列を利用したWi-Fiの接続先につなげてしまうと、Wi-Fi機能が無効になってしまい有効にできなくなるという現象です。

もしも、外出中に身に覚えのない接続先がWi-Fiのリストに表示されても、誤って接続しないように細心の注意が必要です。

iPhoneで Wi-Fiが 無効になる バグ発生中

つなぐとWi-Fiが使えなくなる接続先

注意喚起されている2つの接続先は、一度接続してしまうとWi-Fi機能が強制的に無効になってしまい、iPhoneを再起動しても改善することはありません

接続先(1) 「%p%s%s%s%s%n」

多くの人は見たことがないWi-Fiの接続名がリストに表示されていても、不用意にタップして接続することはないでしょう。

ですが、操作を誤り間違えて接続してしまうと、先述した通りWi-Fi機能が強制的に無効になってしまいます。

これは、接続名に設定された%と文字列の組み合わせが、iPhoneのプログラムに対して悪影響を与えてしまい、Wi-Fi機能を無効にしてしまうのではないかと予測できます。

接続先に指定した文字列の中にある「%n」が、渡された文字列のフォーマットを変更し変数として保存します。

保存されたデータを別のプログラムでも利用するためメモリに渡すのですが、この受け渡しが永久に繰り返されてしまうため、必要以上にメモリを消費してしまい空き容量が枯渇する現象「バッファオーバーフロー」が発生します。

メモリの空き容量がなくなり、正常にデータの書き込みや読み込みができなくなることで、動作していたプログラムが強制終了してしまいWi-Fi機能が無効となってしまうのです。

この現象はプログラム上のバグで、iOS自体が修正されなければ改善されることはありません。

なお、こちらの場合、変数に設定された文字列「%p%s%s%s%s%n」をクリアすれば、現象が収まることからiOSの改善で修正されることでしょう。

接続先 (2) 「%secretclub%」

こちらの接続先がWi-Fiの一覧に表示された場合は、操作ミスでタップしないためにもすぐにWi-Fi画面を閉じてください

この接続先は一度接続すると、iPhoneの再起動やネットワーク接続の初期化でも改善せず、さらには完全に初期化してもWi-Fiの接続機能を回復することができないからです。

この現象を発見したCarl Schou氏は「%secretclub%の接続先につなげてしまうと、iPhoneのWi-Fi機能が半永久的に無効」になってしまうと述べています。

さらに改善させるには、設定されているファイルからプログラムを解読して、修正する箇所を発見するリバースエンジニアを得意とするシステムエンジニアの協力が必要だといいます。

実際に彼は、知人のエンジニアの協力を得てWi-Fi設定で利用されているplistエントリを発見、このファイルを手動で編集することでWi-Fiが無効になってしまう現象を改善しています。

このプログラムに必要なファイルの書き換えは、プログラムに精通している人しかできず、素人には修正することは不可能なため、Wi-Fiリストに%secretclub%が表示されてもタップしないようにしてください。

本当に改善する方法はないのか

プログラムに精通したエンジニアにしか解決できないような大きなバグを、そのまま放置しておくわけにはいきません。

Appleは既に開発者向けにiOS14.7ベータ版の開発や提供を開始していて、直近でリリースされたiOS14.7ベータ5版でバグが修正されていることが確認されています

実際にiOS14.7ベータ版にアップデート したiPhoneと、接続先の名称を%p%s%s%s%s%nに変更したWi-Fi環境を用意して接続したところ、報告されたWi-Fiが無効になってしまう現象は発生せず、正常にインターネットに接続してAppleのサイトを閲覧することができたのです。

これで一件落着かと思ってしまうかもしれませんが、検証された接続先は「%p%s%s%s%s%n」で、もう片方の「%secretclub%」は、いっさい触れられていません。

報告されている症状が深刻なのは「%secretclub%」の方で、改善されていないと初期化しても現象が改善されないことから、修理が必要になってしまう可能性があります。

現時点ではiOSのアップデートで改善したという情報がないため、やはり接続先としてWi-Fiの一覧に表示された場合は、間違えて接続しないように注意するしかありません。

シェアしてもらえると嬉しいです!