【iPhone_JB】Jailbreakによるリスクと問題について

本エントリはご自由に転載・リンク、retweetして下さい。ただし改変、一部引用等の際には、お手数ですが出典(リンク元=本エントリ)を記載してください。

なるべく多くの方に読んでいただけるように、専門用語を避け、平易な文章で書くように心がけました。
明らかに誤った記述やご意見については、コメントまたはTwitterでいただけると有り難いです。

なお、本エントリの執筆にあたり、ytsuboi氏を初めとする皆様にご協力、加筆をいただきました。ここでお礼を申し上げます。

 

Jailbreakとは

AppleのiPhone、iPod Touch、iPad (以降、iDevice) のOSであるiOSの脆弱性(≒セキュリティホール)を利用して、App Store以外で提供される非正規アプリケーション等のインストールが可能な環境を構築することです。

JailbreakはAppleが発行する、正規の証明書で署名した実行ファイルかどうかを判定する機構を無効にし、Appleが審査をしていないアプリケーションであっても、実行できるようにしてしまいます。

Appleが厳重に管理するiOS環境のjail(監獄)をbreakする意味合いで、Jailbreak(JB、ジェイルブレーク、脱獄)と呼ばれています。Jailbreakをすると、App Storeと似た働きをするCydiaというアプリケーションを使って、Appleが審査していないアプリケーションをダウンロード、導入することができるようになります。

このため、AppleではJailbreakを行ったiDeviceについては、サポートや保証を行わないとしています。Jailbreakを行うことは『自己責任』と言われますが、実行前にJailbreakをすることによるリスクについて、十分に理解する必要があります。

 

以下に、Jailbreakに関するリスク・問題の、一部の例についてまとめます。

 

自由と引き換えに失う安全性と、セキュリティ上の脅威

iDeviceへのアプリケーションの導入は、本来App Storeからに限定されています。また、App Storeで販売・配布されるアプリケーションは、Appleによる審査を通過した上で提供されます。ここで重要な点は、販売者がApp Storeでアプリケーションを販売にこぎつけるまでには、契約書の締結、そして身元の確認というプロセスを経ており、「足がついた状態」になっていることです。このため、悪意をもったアプリケーションが配布される可能性は低くなっています。また、Appleがアプリケーションを審査する際に、危険な動作をしないかどうかをチェックしています。このAppleの認証プロセスが、一定の品質を保証してくれているわけです。

Jailbreakは、Appleの品質管理の庇護下からの離脱を意味します。JailbreakされていないiDeviceでは、Appleの敷いたルールを守ったアプリケーションしか存在しえません。利用者にも、Appleにも、そしてキャリアにも安全な、この均衡状態の中で、利用者は安心してiDeviceを使うことができるわけです。

しかし、Jailbreakすることにより、自由と引き換えにこの安全な環境は失われます。Jailbreakにより、Appleの認証を通過していない、そしてだれも身元を把握していない開発者による、非正規アプリケーションの導入が可能になってしまうためです。JailbreakしたiDeviceは、Jailbreak前のアップルが管理する安全な環境と比べて、単純な誤操作による深刻なシステムトラブルはもとより、無断で侵入されたりウィルスの脅威に曝される可能性が飛躍的に高まります。パソコンで言うならば、ウィルスチェッカーやファイアウォールが無い状態で、PCやMacを使うのと同じような状況です。こういった状態で起こり得るセキュリティ上の脅威としては、一般的に以下のようなものが挙げられます。

 

  • システムを不安定にする、起動不能な状態にするなどのウィルスの侵入
  • 暴露ウィルスなどに代表される、iDevice内の個人データ(住所録・各種パスワードなど)のネットワーク経由での流出
  • 第三者に自分のiDeviceを悪意のある攻撃を他者に対して行う踏み台にされる

 

iDeviceには、電話帳や通話履歴、メールなどの大切な個人情報が保存されています。悪意のあるJailbreakアプリケーションにとって、この個人情報は格好の餌食となります。悪意をもって開発されたアプリケーションのインストールにより、自分の個人情報が流出する可能性もあります。

また、OpenSSHに代表される、ネットワーク越しの操作を可能にするアプリケーションを無防備な設定でインストールしてしまうと、悪意のある誰かが思い立ちさえすれば、ネットワーク越しにそのiDeviceを自由に扱うことが可能になってしまいます。

 

非正規アプリケーションにより、iDeviceの動作が不安定に

Jailbreakすることにより、前出のCydiaなどを利用して、非正規アプリケーションをダウンロード、導入することができるようになります。Cydiaには、App Storeでの販売が禁止されている、システム拡張・システム改変系のアプリケーションが多数存在します。

App Storeにこういった種類のアプリケーションが無いのは、Appleが作れないようにしているからです。その理由として、お互いに影響を及ぼし合うシステム拡張アプリケーションは、他のアプリケーションとの協調が難しいから、ということが挙げられるでしょう。一つのリンゴを多人数で取り合うようなもので、それらを一つ増し、一つ増しと導入することは動作の不安定さを増すことにつながります。
単体では機能することが確認されているものでも、別のアプリケーションと同時にインストールされると動作不全を起こすということは普通にあることです。App Storeで販売されているアプリケーションは、お互いの存在を感知できないほどに孤立した状態でインストール、実行されるので、他への影響がほとんどありません。

Cydiaのコア開発者は、名前を明かし、身元を明らかにしています。ですが、彼らが関与しないアプリケーションも、Cydiaを使って配布されています。(リポジトリの追加) こういった所から配布されるアプリケーションに関しては、配布元の信頼性の確認などを、自分自身で判断する必要があります。
何気なしに登録したリポジトリが、前出のセキュリティ上脅威になるウィルスや悪意のあるアプリケーションを配布していたりする可能性は否めません。また、悪意は無いにしても、テストが十分になされていないアプリケーションである可能性もあります。

こういった悪意のあるアプリケーションや、品質が十分でないアプリケーションをインストールした結果、iDeviceが不安定になったり、最悪起動しなくなったり、文鎮化(ブート時のAppleロゴのまま固まって、どうにもしようがなくなる)することは十分あり得ることです。
Appleのセーフティネットに守られた、App Storeからのダウンロードでは、こういった事態に遭遇する可能性は低くなっています。

 

キャリアネットワークへの脅威

iPhoneや、iPad 3Gモデルは、3G通信機能で携帯キャリアのネットワークを通じてインターネットに接続された状態にあります。Jailbreakを行うことにより、ウィルスなどの悪意のあるプログラムがiDeviceに侵入した場合、これらのネットワークに直接アクセスする術を与えることになります。大量のデータを3G経由で送受信することにより、3Gネットワークの通信状況を悪化させたり、あるいはダウンを引き起こす事態を招きかねません。

さきほど「Appleの敷いたルールは、キャリアにも安全性を提供」と書きましたが、Jailbreakによりそのルールが取り除かれてしまえば、使用者の不利益のみならず、インフラの部分にも被害を与える状況が発生するかもしれません。もしJailbreakを要因として、そういった事態が発生してしまった場合、そういった迷惑行為を禁ずる、使用者とキャリアとの契約書の内容を反故にしたかどで訴訟を起こされる可能性すらあります。

もっと身近なリスクとしては、キャリアとの契約内容を守らないような通信をするアプリケーションを使用することにより、その通信がパケット定額の対象とみなされなくなり、高額なパケット通信料が請求されてしまうことや、通信制限を課されてしまうことが挙げられます。

 

まとめ

 

 

 

 

 

Jailbreakは、自由にカスタマイズできる環境を手に入れるのと引き換えに、Appleが提供する安全な環境を失います。
結果として、自分と自分のiDevice (iPhone、iPod Touch、iPad) を以下のようなセキュリティの脅威に晒すことになります。
  • システムを不安定にする、起動不能な状態にするなどのウィルスの侵入
  • 暴露ウィルスなどに代表される、iDevice内の個人データ(住所録・各種パスワードなど)のネットワーク経由での流出
  • 第三者に自分のiDeviceを悪意のある攻撃を他者に対して行う踏み台にされる
これらは、セキュリティの脅威の、ほんの一例にすぎません。また、iDeviceの動作を不安定にしたり、3Gを搭載する機種であれば、キャリアネットワークに障害を与えるような、悪意のあるプログラムの存在する可能性もあります。

また、AppleではJailbreakを行ったiDeviceについては、サポートや保証を行わないとしています。Jailbreakをするのであれば、いかなる問題・障害が起きたとも、全て『自己責任』で行うことになります。他の誰も責任を肩代わりしてはくれません。

Jailbreakは、それにともなう問題の理解と対策・対処方法について調査、熟知し、リスクを理解した上で行う必要があります。

それが無理であれば、jailbreakをせず、Appleの提供する安全な環境で、普通にiDeviceを使うべきだと思います。