「iOS9」、もしくは「iOS8」で存在していた「1970年バグ」。これは、iOSデバイスの日付を1970年の5月以前に設定し、再起動をするとリンゴマークから進めず再起動ができなくなるというバグだ。
Appleは一部ユーザーの報告からこの問題を認識し、「iOS 9.3」のリリースと同時に修正されていたと思われていた。
当サイトも含め、多くのメディアが同問題が解決されたと報じたが、どうやら「iOS 9.3」ではこの問題は完全に解決されていなかったことが明らかになった。
悪意のあるWi-Fiに接続することで、1970年バグが引き起こされる
セキュリティ研究者のPatrick Kelley氏とMatt Harrigan氏が行った実験によれば、Wi-Fiを経由することでiOS端末を文鎮化させるバグを再度引き起こすことができた、とKrebs on Securityは伝えている。
実験とは、ある特殊な仕掛けを施したWi-Fiに「iOSデバイス」を接続させることで、遠隔操作で「iOSデバイス」の日付をバグの起きる時間に設定し、文鎮化させることに成功したとのこと。
iOSデバイスは、日付や時間をNTPサーバーに接続することで調節している。その仕組みを悪用し、iOSデバイスの日付を1970年になるように設定してやれば、同Wi-Fiに接続してきた端末は同時間に勝手に時間を調節してしまうだろう。
このバグは、同時刻に設定した上で再起動を行わなければ発生しないのだが、本来の時刻と著しく異なる日付になっているiOS端末がWEBページなどにアクセスしようとすると、読み込みなどに支障が出ることが考えられるので、異変に気付いたユーザーはおそらく端末の再起動をしてしまうだろう。つまり、このWi-Fiに接続してしまうとかなりの確率でバグが引き起こされてしまうことに…。
もちろん、一般ユーザーはそのような悪意のあるWi-Fiに繋ぎさえしなければ、どうと言うことはないのだが、ユーザーの使い方によっては、知らないうちにそのようなWi-Fiスポットに接続されてしまうことがある。
普段からiPhoneなどを使っている人ならイメージしやすいと思うのだが、iOSデバイスは一度でも接続に成功したことのあるWi-Fiを再度受信した際、自動で接続しようとする機能がはたらく。
過去に接続したことのあるWi-Fiと、同じ名前に偽装したWi-Fiスポットを用意さえすれば、自動的に悪意のあるWi-Fiに接続してしまうのだ。
もしくは、普段僕たちが外で使用している「公衆無線LAN」の名前を騙ったWi-Fi(SSID)を用意すれば接続してしまう人がいてもおかしくはない。
ちなみに「iOS 9.3」では同問題が解決していないことは発見されていたようだが、Appleが完全に同問題に対応するまでは公表しないことを約束していたとのことだ。
対処法は「iOS 9.3.1」をインストールすること
幸いにも現在Appleが公開しているiOSの最新版は「iOS 9.3.1」。同問題はすでに完全解決が行われている模様だ。少なくても「iOS 9.3.1」にさえアップデートしておけば文鎮化することはないだろう。
そして、一つ言えることはどこの誰が飛ばしているか分からないWi-Fiには接続しないこと。必ず信頼できるWi-Fiスポットに接続するか、極端かもしれないがWi-Fiを使用しないようにするというのも自衛策としては大事なのかもしれない。
[ via 9to5Mac ]