たった1文字でiPhoneをクラッシュさせるバグ発覚、無限再起動ループの危険もあり
特定のURLや文字列によってiOSがクラッシュするバグはこれまでにも見つかっていましたが、新たにたった1文字でiOSをクラッシュさせられるバグが発見されました。このバグのせいで、場合によっては、無限再起動ループに陥る恐れがあるとのことです。
Un carattere indiano fa crashare iPhone, Mac e iPad | MobileWorld
http://www.mobileworld.it/2018/02/14/carattere-indiano-crash-iphone-mac-ipad-144881/
イタリアのメディア「MobileWorld」によると、問題の「文字」はインド南東部の公用語の一つであるテルグ語で使われる以下の文字。インドの全人口の5%にあたる約7000万人が利用している言語に含まれる文字です。
iMessageなどのメッセージアプリでこの文字を送られると、メッセージを開こうとした時にアプリがクラッシュするとのこと。
Another iOS bug is crashing iPhones and disabling access to iMessage https://t.co/9do0xyz7k4 pic.twitter.com/15Ripq7PP8
— Tom Warren (@tomwarren) 2018年2月15日
この問題の文字を「iOSの通知」に表示させることでiOS自体をクラッシュさせることも可能。Twitterでこの文字を送信してiPhone 7 Plusをクラッシュさせる様子は、以下のMobileWorldによる検証ムービーで確認できます。
Il carattere INDIANO che fa crashare iPhone - YouTube
Twitterのダイレクトメッセージを開いたiPhone 7 Plus。
PCからiPhone 7 PlusのTwitterアカウントに、問題の文字を大量に送りつけてみます。
キーボードのエンターキーで送信。
メッセージが届くと……
アプリがクラッシュしました。
次に、Twitterアプリが開いていない状態で、先ほどと同様にクラッシュ文字メッセージを送ると……
iOSがクラッシュ。これは、SpringBoardが文字を読み込もうとしてバグに陥っているのだと考えられます。
iOSの通知バーに問題の文字が表示されてiOSがクラッシュ状態に陥った場合、SpringBoardが再起動するのをじっと待つことが肝心だとMobileWorldは述べています。恐ろしいことに、待つことなく手動で再起動させようとiPhoneの電源を切ると無限再起動ループにハマる可能性があるとのこと。iOSのクラッシュを解除するには、PCでiTunesを使ったDFUモードで復元するしか打つ手がなくなるそうです。なお、このバグは、iMessageやTwitterの他に、Facebook MessengerやWhatsAppなどのメッセンジャーアプリで再現することが確認されており、macOSでも同様だとのこと。
このバグの原因を突き止めようとしている人もいます。
Picking Apart the Crashing iOS String - In Pursuit of Laziness
https://manishearth.github.io/blog/2018/02/15/picking-apart-the-crashing-ios-string/
Mozillaで働くManish Goregaokarさんによると、問題は複数の文字を合成して一文字にする「合字」を作るためのゼロ幅非接合子(ZWNJ)の処理にiOS・macOSは問題を抱えているとのこと。ZWNJがテルグ語で使われる「virama 」という要素を文字に合成する場合にバッファオーバーフローが発生する可能性を指摘しています。
Appleは1文字でiOS・macOSがクラッシュするというバグについてすでに対策に乗り出しているとのこと。2018年春にリリース予定のiOS 11.3や macOS 10.13.4のベータ版ではバグは解消されており、近く対策済みアップデートが提供される見込みです。
AppleはiOSのバグが増えている事態を踏まえて、新機能の追加よりも品質の向上により重きを置き、iOS 12のリリースを2019年まで遅らせる方針に切り替えたことがBloombergによって報じられていますが、賢明な判断かもしれません。
・関連記事
ウェブページを開くだけでiPhoneやMacをフリーズさせてしまう不審なURLが拡散中 - GIGAZINE
「iPhoneは早ければ1年後に性能が落ち始める」のをAppleが正式に認める - GIGAZINE
MMSを受け取るだけでiPhoneの各種認証情報・パスワードを抜き取れる脆弱性が明らかに - GIGAZINE
iOSを9.3.2にアップデートするとiPad Proが「エラー56」で高級文鎮化する被害が続出中 - GIGAZINE
iPhoneで特定のテキストを受信するとアプリがクラッシュしたり端末が再起動したりしてしまうバグが発見される - GIGAZINE
最新のiOS 9.3でiPadが文鎮化、使用不能状態に - GIGAZINE
iOS7にパスコード入力無しでカメラロールにアクセスできるバグが発見されたので実際にやってみました - GIGAZINE
・関連コンテンツ