セキュリティ研究者は皆、システム内に存在するすべての鍵を開けられる「マスターキー」を発見する日を夢見ている。

Android アプリのほぼすべてを乗っ取れる「マスターキー」脆弱性、その発見からパッチの提供までの経緯を Jeff Forristal 氏に聞く
「Rain Forest Puppy(熱帯雨林の子犬)」として知られる Jeff Forristal 氏は、Google の Android OS にそのような脆弱性を発見した。

その脆弱性は本来、Android OS のセキュリティ向上を目的として搭載されたものだった。だが Android OS による JAR、ZIP、APK ファイルの認証方法に問題があったと、Forristal 氏は説明する。

「認証は、Android セキュリティモデルの成立と実行全般に関連している。これが機能しなければ、Android セキュリティモデル全体が機能しない」

Forristal 氏は、Android アプリは様々なファイルのハッシュへの署名で、暗号化認証を使うと説明した。欠陥はこの認証プロセス自体にあり、特定の暗号化キーやアルゴリズムにあるのではないという。

「欠陥は、アプリのインストール時に認証を実行する Android コードにあった」

脆弱性の発見から公開、そしてパッチの提供まで

Forristal 氏は今年2月、 Google に対してこの脆弱性を報告した。Google はこれを Android セキュリティバグ「8219321」として認識している。

この脆弱性は、Android 1.6およびそれ以降のすべてのバージョンに存在している。つまり、過去4年間に発売された、およそ9億台近いデバイスが影響を受ける可能性があったのだ。だが、Forristal 氏によれば、「Open Handset Alliance」に参加している Android パートナー各社は、Google から脆弱性に対応したパッチを3月に受け取ったという。

興味深いことに、パッチは現在、Android デバイスのルート権限を取れるアフターマーケットのファームウェア「CyanogenMod」にも適用されている。

Forristal 氏は、バグの発見者とベンダーとは、密接に連絡を取り合い、報告されたバグのリスク管理と修復に向けて連携するべきであると述べた。

今回のマスターキー脆弱性のケースでは、Google は当初、脆弱性の内容公開までの期限を90日と設定した。これに基づき、多くの Android パートナーは6月末までに利用者に対して修正パッチを提供している。

マスターキー脆弱性が突かれる可能性があるのは、アプリのダウンロード時

マスターキー脆弱性が悪用されるケースは、ユーザーが悪意のあるアプリをダウンロードした場合にほぼ限定される。

これはつまり、アプリを Google Play などの信頼できる提供先から入手している限りは、Android デバイスにパッチが適用されていなくても、マスターキー脆弱性が突かれるリスクは、それほど高くないことを意味している。Forristal 氏は、Google はすでにこの問題のリスク緩和のため、 Google Play ストア内をスキャン済みだと述べた。

使用中の Android デバイスで、パッチの適用を確認するには?

Google はマスターキー脆弱性に対応したパッチを Android ベンダーに配布した。だが、ベンダーやキャリアがそのパッチをエンドユーザーに配布したかどうかはわからない。

Forristal 氏は、パッチの適用をセルフチェックできる Android アプリ「Bluebox Security Scanner」を Google Play で公開している。気になる方は、このアプリをインストールして確認するとよいだろう。

Sean Michael Kerner
Sean Michael Kerner は、InternetNews.com の主任編集者。