GrapheneOS – 携帯電話からのデータ押収に対する保護

ほとんどの人は、写真やメール、家族や友人とのやり取りなど、非常に個人的なデータを多数、携帯電話に保存しています。さらに、調査報道記者や政治活動家などの一部の人たちは、情報源や活動を危険にさらすおそれがあるため決して開示したくない、その他の機微なデータも携帯電話に保存しています。同じことは、意思決定者や企業の従業員などにも当てはまります。

そのためユーザーは携帯電話にロックをかけており、ロック解除(ひいてはデータへのアクセス)の方法としては、パスワード、PINコード、パターンロック、指紋認証、顔認証など、さまざまな手段が用意されています。

最後の2つは生体認証であり、ユーザーにとっては非常に便利ですが、安全性の観点からはかなり問題があります。セキュリティの観点から重要なのは、アイデンティティ(「あなたは誰か?」)と認証(「それをどう証明するか?」)が別個の問いとして保たれていることです。ところが生体認証ではそうなっておらず、生体情報そのものが本人性の証拠とみなされます。これは、生体情報が偽造・盗難された場合に特に問題となります。なぜなら、パスワードや暗号鍵と違って、生体情報は変更したり失効させたりすることができないからです。さらに、生体情報は原則としてそれ自体が公開情報である場合も少なくありません。

現代のスマートフォンでは、起動後の最初のロック解除(いわゆる BFU – Before First Unlock)には、ほとんどの場合、生体認証ではない方法のいずれかが必要です。しかし、起動後に一度ロック解除に成功すると、その後の画面ロック解除には生体認証のいずれかを使えるようになります。

これは問題を引き起こす可能性があります。実際、通行人が警察の違法行為を撮影したところ、警官がその人物から携帯電話を取り上げ、顔認証を使って強制的にロックを解除し、問題となる写真や動画を削除した、という事例が報告されています。

プライバシーにとってのさらなる課題は、いわゆるデジタル・フォレンジックによるデータ押収です。これは、デジタル・フォレンジックで用いられる一連の技術であり、さまざまなツールや(ハッキング)手法を使って携帯電話のロックを解除し、その中のファイルにアクセスできるようにするものです。残念ながら、これらの技術を使うのは「公的な」デジタル・フォレンジックの専門家や民主国家の警察だけではなく、ハッカーやサイバー犯罪者、さまざまな権威主義政権も含まれます。

Android や iOS を搭載したほとんどの携帯電話は、さまざまなハッキング技術(いわゆる侵入)や PIN コード/パスワードの総当たりにより、ロック解除が可能です。多くの携帯電話にはパスワード推測の試行回数制限がありますが、Magnet Forensics 社の GrayKey や、Cellebrite 社の Universal Forensic Extraction Device などのツールは、ほとんどの携帯電話でこの制限を解除し、その後は総当たり攻撃で制限なくパスワードを推測できるようにします。

そこで GrapheneOS では、携帯電話への侵入(いわゆる「ハッキング」)や、PIN コード/パスワードの無制限な推測を困難にするための、数多くの技術と改良を実装しています。その結果、GrapheneOS を搭載した携帯電話への侵入は極めて困難であると、モバイル端末向けデジタル・フォレンジック機器の大手ベンダー自身も認めています。Cellebrite 社から流出した文書(および Magnet Forensics 社の文書)によれば、GrapheneOS を搭載した携帯電話からのフォレンジックなデータ押収について、これらの企業は解決策を持っていないことが明らかになっています(ユーザーの同意、すなわちユーザー自身による任意のロック解除がある場合を除く)。

このような場合、攻撃者に残された手段は、携帯電話を強制的にロック解除しようとすることだけです。生体認証を使っている場合、これは実際には比較的容易であり、少なくともアメリカでは完全に合法とされています。

モバイル端末の強制ロック解除

生体認証を使った携帯電話の強制ロック解除について、最初に記録された事例は2018 年にさかのぼります。当時、警察は 28 歳のアメリカ人 Grant Michalski を児童ポルノ拡散の容疑で捜査していました。警察は彼の携帯電話を押収し、裁判所は令状の中で、その携帯電話(iPhone X)をFace ID 技術を用いて強制的にロック解除することを認めました。

多くの民主国家では、自己負罪拒否特権が認められており、誰も自分自身や近親者に不利な供述をする義務はありません。これは、被疑者が捜査機関に対して自分のパスワードを教える義務がないことを意味します。アメリカではこの権利は、いわゆる第五修正で規定されており、EU では基本権憲章の第 37 条に、スロベニアではスロベニア共和国憲法第 29 条第 4 項に規定されています。

しかしアメリカ(および他国)の裁判所はすでに何度も、自己負罪拒否特権は生体情報(および DNA サンプル)の場合には適用されないと判断しています。なぜなら、この場合は供述には当たらないとされるからです(United States v. Jeremy Travis Payne 事件)。

国境通過時には、さらに異なるルールが適用されます。たとえばアメリカでは、US Customs and Border Protection(税関・国境警備局)は、いかなる犯罪の嫌疑がなくても旅行者を検査する権限を持っています。確かに、アメリカ連邦最高裁判所は 2014 年に、裁判所令状なしで携帯電話を捜索し、その中のデジタルデータを押収することは違法であると判断しました(Riley v. California, 573 U.S. 373 (2014) 事件)。しかし、この判決がいわゆる国境検査例外(英語で border search exception)においてどのように適用されるかは、現時点ではまだ司法判断が示されていません。

実務上は、国境当局はまずユーザーに対し、携帯電話を任意にロック解除するよう説得を試みるのが一般的です。この「説得」には、短時間の拘束や、「携帯端末のロック解除は義務である」(実際には義務ではありません)という虚偽の説明、携帯電話の長期(ただし恒久的ではない)押収などが含まれる場合があります。さらに、そのような状況では、旅行者の入国を拒否することもできます。また、端末がロックされている場合、国境当局が自らフォレンジックツールを使ってロックを破ろうとすることもあり、生体認証が有効になっている端末であれば、強制的にロック解除される可能性もあります。国境通過時のこのようなルールは、多くの国で同様に存在します。

一部の国では、被疑者に暗号化パスワードの開示義務を課す法律まで制定しています。たとえば、イギリスの Regulation of Investigatory Powers Act や、フランスのいわゆる「decryption orders」がその例です。これらは現在、欧州人権裁判所で審査中です(Minteh v. France 事件)。とはいえ、被疑者が(たとえばストレスのせいで)パスワードを単に忘れてしまった場合、そのパスワードを言うよう強制することは誰にもできない、という事実は変わりません。

もう一つ、別の可能性もあります。GrapheneOS のフォーラムでは、少なくとも 1 件、スウェーデンでの事例が報告されています。そこでは、ある人物が GrapheneOS を搭載した携帯電話を使用していました。警察は、フォレンジックツールではその携帯電話のロックを解除できないことを知っていたため、その人物を密かに監視し、携帯電話をロック解除した瞬間を待ち構え、そのタイミングで本人を取り押さえて携帯電話を押収しました。

GrapheneOS によるロック解除への対抗策

GrapheneOS には、この種の攻撃を困難にするための防御メカニズムがいくつも実装されています。

前述のとおり、GrapheneOS にはフォレンジックツールやハッキングツールをブロックするためのさまざまな仕組みがあります。その一つ(他にも多数あります)が、端末がロックされている間は新しい USB 接続を無効化するという機能です。つまり、攻撃者がロックされた携帯電話を USB ポート経由でコンピュータ(あるいはフォレンジック機器)に接続しても、その USB 接続自体が確立されず、フォレンジック機器は携帯電話との接続をまったく認識できません。

次に興味深いメカニズムは、いわゆる PIN scrambling、すなわち PIN 数字の「シャッフル」機能です。この機能を有効にすると、PIN 入力画面の数字の配置がランダムになります。そのため、ユーザーの操作を観察して PIN を推測する(いわゆる shoulder surfing 攻撃)は難しくなります。特に、ユーザーが偏光タイプの覗き見防止フィルムを使用している場合は、さらに困難になります。


PIN scrambling (premešanje PIN številke)

PIN scrambling(PIN 数字のシャッフル)。

もう一つの興味深いメカニズムが、自動再起動機能(英語で auto reboot feature)です。

これはどういう仕組みでしょうか。携帯電話で OS が起動すると、端末は BFU(Before First Unlock)と呼ばれる状態、すなわち「最初のロック解除前の状態」になります。この状態では、フォレンジックツールやハッキングツールを使っても、実質的に端末への侵入やデータ抽出は不可能です。しかし、ユーザーが最初に PIN コードやパスワードを入力すると、端末は AFU(After First Unlock)、すなわち「最初のロック解除後の状態」に移行します。このとき、端末の内部ストレージ上のデータは復号され、暗号鍵は端末内部のメモリに保存されます。

GrapheneOS には、フォレンジックツールやハッキングツールが内部メモリから暗号鍵を抽出することを阻止するための、さまざまなメカニズムが実装されています。それでも、少なくとも理論上は、AFU 状態にある端末に対する攻撃の方が、BFU 状態にある端末に対する攻撃よりも成功しやすいと考えられます。

GrapheneOS には、AFU 状態にある端末が、一定時間ロック解除されないままだった場合に、自動的に再起動するよう設定できる機能があります。これにより、端末は BFU 状態に戻り、そこからデータを抽出することは実質的に不可能になります。

デフォルトでは、この時間は 18 時間に設定されています(この間に画面ロックが解除されなければ、端末は自動的に再起動します)。ただし、この間隔は自由に変更でき、最短で 10 分まで短縮することも可能です。

一般的に、押収された端末に対するフォレンジック調査が始まるまでには、ある程度の時間がかかります。典型的には数日かかることもあります。したがって、携帯電話が押収(あるいは盗難・紛失)されてからフォレンジック押収の手続きが開始されるまでに十分な時間が経過すれば、その間に端末は自動的に再起動し、BFU モードに戻ります。その結果、端末からのデータ押収は実質的に不可能になります。

さらに、GrapheneOS では最近、もう一つ興味深いセキュリティメカニズムが導入されました。それが、いわゆる「強制用パスワード/PIN コード」(英語で duress password/PINです。

強制用パスワード/PIN コードとは、設定画面であらかじめ登録しておく特別なパスワード(または PIN コード)のことです。このパスワード/PIN コードを入力しても、端末はロック解除されず、代わりに端末内のデータが不可逆的に消去されます(eSIM を含む)。

強制用パスワードは、攻撃者が暴力的(違法)に携帯電話を奪い取り、ロック解除を強要するような場面で非常に有用です。一方、警察が令状に基づいて携帯電話を押収した場合に強制用パスワードを入力すると、いわゆる証拠隠滅(英語で tampering with evidence)や、いわゆる司法妨害(英語で obstruction of justice)に該当する可能性があります。

しかし前述のとおり、被疑者にはロック解除用パスワードを供述する義務はありません。ユーザーは、強制用パスワード/PIN コードを紙片に書き、スマホケースの内側などに挟んでおくこともできます。攻撃者がその紙片を見つけ、自分で PIN コードを入力すれば、その時点で攻撃者自身の手によって端末は消去されることになります。

生体認証使用時の保護

ここまで見てきたように、画面ロックに PIN コードやパスワードを使う場合には、携帯電話からのデータ押収を困難にするための防御策がいくつも存在します。しかし、画面ロック解除に生体認証、すなわち指紋認証を使っている場合には問題が生じます。

とはいえ、この場合にも解決策は存在します。それが、特別なアプリケーションである Private Lock(F-Droid ストアで入手可能)です。


Aplikacija PrivateLock

PrivateLock アプリ。

このアプリが要求する権限はごく最小限で(ネットワークアクセスすら要求しません)、動作としては、端末を十分な強さで振ると、即座に画面ロックをかけるというものです。振動の感度レベルは設定で調整できます。この方法でロックされた端末は、次回のロック解除時に生体認証(指紋)やパターンロック(スワイプ)を使うことができず、パスワードの入力が必須になります。(パスワードの入力に成功すると、生体認証やパターンロックは再び通常どおり有効になります。)


Nastavitve PrivateLock

PrivateLock の設定。

このアプリにより、次のような利用シナリオが可能になります。攻撃者がユーザーの手から携帯電話を力ずくで奪おうとしたり、ユーザーの指を無理やり端末に押し付けようとしたりした場合、ユーザーは端末を強く振る(あるいは地面に落とす)だけでよく、端末は自動的にロックされます。

その後は、生体認証ではロック解除できず、PIN コードまたはパスワードの入力が必要になります。ユーザーはこのパスワードを教える義務はなく、代わりに強制用パスワードを入力することもできますし、攻撃者をだまして強制用パスワードを自分で入力させることもできます。その場合、端末は消去されます。

さらに、次回の自動再起動までにロック解除が行われなければ、端末は自動的にいわゆる BFU モードに戻り、フォレンジックツールやハッキングツールを使ったデータ押収は実質的に不可能になります。

もちろん、ここで紹介したメカニズムが、携帯電話上のデータへのアクセスを完全に防ぐわけではありません。それでも、これらを組み合わせることで、多くの攻撃シナリオをカバーでき、モバイル端末ユーザーのプライバシー保護を大幅に強化することができます。

翻訳元: https://telefoncek.si/2024/05/2024-07-18-grapheneos-zascita-pred-zasegom-podatkov/

ソース: telefoncek.si