GrapheneOSとデータのフォレンジック抽出

GrapheneOSは、Androidベースのオープンソースで、プライバシーとセキュリティに焦点を当てたモバイルオペレーティングシステムです。これは最も安全でプライバシー保護性に優れたオペレーティングシステムの1つであり(そう、このタスクはiOSと同等であり、特にプライバシーに関しては—いくつかのシナリオではiOSよりも優れています、しかしそれについては後で述べます)。

しかし、5月初旬に、誰かがソーシャルメディアプラットフォーム全体でGrapheneOSに対する攻撃を開始しました。加害者は同意に基づくデータ抽出をGrapheneOSが侵害されたものとして偽って表示していました。これが愚かでなければ面白いでしょう。では、何が起きたのか、そして実際に同意に基づくデータ抽出とは何を意味するのかを見てみましょう。

デジタルフォレンジック

デジタルフォレンジックは、法的手続きのための証拠を収集するために電子データを発見し分析するプロセスです。コンピュータ、スマートフォン、ストレージメディアなどのデジタルデバイスを検査して、デジタル証拠を特定、保存、分析、提示するための様々な技術とツールの使用を伴います。

デジタル証拠とは、デジタル形式で保存または送信され、法的調査または裁判での証拠として使用できるあらゆるデータまたは情報を指します。デジタル証拠は、容疑者の有罪または無罪を立証するのに役立つ犯罪捜査でよく使用され、民事訴訟、規制調査、およびその他の法的手続きでも使用できます。

残念なことに、デジタルフォレンジックが悪用されることもあります。調査ジャーナリストや政治活動家に対して使用される可能性があり、プライバシー侵害のために、脅迫や嫌がらせのため、証拠改ざんのためなどに使用される可能性があります。これが、GrapheneOSの開発者がモバイル電話の改ざんから保護するために懸命に取り組んでいる理由であり、ユーザーの同意なしにデータ抽出を可能な限り困難にしようとしている理由です。

Cellebrite

Cellebriteはデジタルインテリジェンスとデジタルフォレンジック分野のリーディングなイスラエル企業です。彼らの主なデジタルフォレンジックツールはUniversal Forensic Extraction Device(UFED)と呼ばれ、調査のためにモバイルデバイスからデータを抽出および分析するために使用されます。

彼らは世界中の政府に機器を販売しており、彼らのツールはほとんどの場合合法的な目的で使用されています。残念なことに、彼らは権威主義体制にもツールを販売しています。Cellebriteの顧客リストには権威主義体制(ベラルーシ、ロシア、ベネズエラ、中国)、バングラデシュの死の部隊、ミャンマーの軍事政権、トルコ、UAE、およびその他の場所で虐待と抑圧を求める者が含まれていました。

述べたように、デジタルフォレンジックツールはまずモバイルデバイスからデータを抽出しようとします。これはデジタルフォレンジック調査の初期段階です。

デジタルフォレンジックの問題は、モバイル電話がロックされている場合はどうするかです。ロックされたデバイスからデータを抽出するにはどうしますか?

いくつかのオプションがありますが、基本的に3つのアプローチが存在します。

最初のオプションはいわゆる同意に基づくデータ抽出です。これは単にユーザーが自発的に彼らのデバイスをロック解除する(またはPINコードまたはパスワードを提供する)ことを意味し、フォレンジックツールはロック解除されたデバイスからデータを抽出します。

誰かが自発的にデバイスをロック解除する理由は何でしょうか?まあ、デバイスの所有者は調査官と協力したいかもしれません。彼は犯罪活動の被害者であり、加害者に対する証拠を提供したいと考えているかもしれません。彼は、データが彼の無実を証明することを知っているかもしれません。または他に何か。

もちろん、ユーザーがPINコードやパスワードを提供したくない、または彼らの電話をロック解除したくない場合はどうでしょうか?

その場合、デジタルフォレンジック検査の2つの一般的なアプローチがあります。最初のオプションは、モバイルデバイスをハックしてロックを解除する(その後データを抽出する)ことを試みることです。もう1つは、デバイスをロック解除してデータを抽出するためにPINコードまたはパスワードを推測しようとすることです。

Cellebriteのような企業は、ロックされたモバイル電話をハックしてからデータを抽出できる様々なツールを提供しています。そしてまた、ツールはPINコードまたはパスワードを「推測」する可能性も提供しており、デバイスをロック解除します。

しかし、最初にデジタルフォレンジックの観点からモバイル電話が基本的に2つの状態にあることを理解する必要があります。

最初のものはBFU(最初のロック解除前)と呼ばれ、これは単にオフになった、または再起動され、正しいPINまたはパスコードを入力してその後ロック解除されていないデバイスを意味します。2番目はAFU(最初のロック解除後)と呼ばれ、再起動後にデバイスがロック解除されたことを意味します(つまり、暗号化キーはデバイスの内部メモリに保存されています)。

技術的には、2つの間に重要な違いがあります。BFUデバイス(PINやパスコードでロック解除されていない)は主に暗号化されたデータを含みます。デバイスの最初のロック解除もデバイスを復号化するため(技術的には:復号化キーをロック解除し、デバイスが内部ストレージに保存されたデータにアクセスできるようにします)、その場合デバイス上のほとんどのデータはフォレンジック分析のためにアクセスできません。技術的には、データは保存時に暗号化されることを意味します。

AFUデバイス(電源をオンにした後、または再起動して正しいパスコードでロック解除されている)は、その内部メモリに復号化キーを含み、そのキーは内部ストレージ内のファイルを復号化するために使用されます。その場合、フォレンジック分析のためにほとんどのデータはアクセス可能になります。なぜなら、その状態のデータは通常の使用のために復号化されるからです。しかし、その場合でもスクリーンロックが有効化される可能性があり、つまり、フォレンジック調査官は最初にスクリーンをロック解除してから、データを抽出することができます。

ユーザーの観点からすると、これは単に、BFU状態のロックされたデバイスがデータ抽出に対して重大な課題を提示し、一方、ロック解除されたデバイス(AFU状態)がデータを抽出するためにより大きなアクセスを提供することを意味します。

既に述べたように、AFUデバイスは抽出のために簡単にアプローチできます。一般的なアプローチはロックされたモバイル電話をハックして(何かのソフトウェア脆弱性を悪用することによって)スクリーンロックを無効化またはバイパスして、その後データを抽出することです。

内部ストレージ内のデータがまだ暗号化されているBFUデバイスの場合、フォレンジック検査官はデバイスをロック解除するためにPINコードまたはパスワードを「推測」する必要があります。通常、これはいわゆるブルートフォース攻撃によって行われます。これは単に、フォレンジックツールが正しいPINまたはパスワードを見つけるまで、すべての可能な組み合わせを通って正しいPINまたはパスワードを推測しようとすることを意味します。

Cellebriteの能力

2024年4月、Cellebriteは顧客に提供された能力のリストを公開しました。リストは、彼らがすべての非GrapheneOSのAndroidデバイスブランドを正常に悪用できることを示しています。彼らはAFUおよびBFU状態の両方でこれを行うことができます。つまり、Cellebriteのツールは市場上のすべてのAndroidデバイスをロック解除(その後データを抽出)できます。


Android capabilities

Android機能。


Android capabilities

Android機能。

Cellebriteの文書によると、彼らはiOSデバイスについても同様の能力を持っています。すべてではなく、多くのために。実際には、最新のデバイスの世代とOSバージョンのみがまだ完全にサポートされていません(ただし、ほとんどのiPhoneユーザーはiOSアップデートを自動的に取得していることが公正です)。彼らは後のiOSデバイスのためのエクスプロイトを開発できるでしょうか?私たちはそれを知りませんが、NSO(Pegasusスパイウェアを開発するイスラエル企業)がiOS 17が2023年9月にリリースされた直後にそれを既に行ったことを私たちは知っています。


iOS capabilities

iOS機能。


iOS capabilities

iOS機能。

これは興味深いことです。AppleはiOSを「世界で最も個人的で安全なモバイルオペレーティングシステム」として宣伝しているからです。

GrapheneOSはどうですか?文書によると、Cellebriteは、ユーザーが2022年後半以降に更新をインストールしていた場合、GrapheneOSをハックできないことを認めています。これは重要です。GrapheneOSは非常に頻繁にセキュリティアップデートと改善をリリースしており、時には1か月に数回もあります。そしてGrapheneOSは、更新が自動的に有効化されるような方法で設計されており、ユーザーがそれを無効化したい場合、それらは手動でそれを行う必要があります。これは、ユーザーの大多数がGrapheneOSを最新バージョンに自動的に更新され、彼らの電話はCellebriteのツールによってハックされることができないことを意味します。


GrapheneOS capabilities

GrapheneOS機能。

一方、Cellebriteは、iOS、Android、およびGrapheneOSでいわゆる同意に基づく完全なファイルシステム抽出を行うことができると主張しています。既に述べたように、これは単に、ユーザーが自発的に彼らのデバイスをロック解除したら、デバイスからデータを抽出できることを意味します。GrapheneOSの場合、それは、彼らがロック解除された電話を取得したら、彼らは単に開発者オプションを有効化し、標準的なADBツール(ADBはコンピュータを通じてAndroidデバイスと通信することを可能にします)を使用してデータを抽出することを意味します。

したがって、Cellebriteの文書によると、彼らは完全にパッチされたGrapheneOS電話をロック解除できません。ただしユーザーが自発的に電話をロック解除した場合を除きます。実際、Cellebriteの文書の分析は、彼らがPixel 6以降の電話でさえランダムな6桁のPINをブルートフォース攻撃できないことを示しています(これらはGrapheneOSによってサポートされている電話です)。Cellebriteの文書は、GrapheneOSを搭載したPixel 6電話以降(および最新のiPhoneも)が、ランダムな6桁のPINをブルートフォース攻撃できない唯一のデバイスであることを明らかにしています。

最初に述べたように、5月初旬に、誰かがソーシャルメディアプラットフォーム全体でGrapheneOSに対する攻撃を開始しました。加害者はGrapheneOSが侵害されたと主張し、「証拠」はデータ抽出がGrapheneOSから同意に基づいている場合に成功することでした。

このソーシャルメディア攻撃の背後にいた者は不明ですが、2020年12月に何か類似したことが起きました。その当時、様々なメディア(BBCを含む)は、Cellebriteが信号の暗号化をクラックしたと主張したと報告しました。Signalはフリーで暗号化されたメッセージングアプリケーションであり、強力な暗号化とプライバシーへの焦点のため最も安全なメッセージングアプリの1つとして広く考えられています。

しかし、その当時、主張が完全に虚偽であることが判明しました。Cellebriteは、ユーザーが電話をロック解除し、Signalアプリをロック解除し、フォレンジック検査官に渡した場合のみSignalメッセージを抽出できました。これは定義により同意に基づく抽出であり、フォレンジック取得ツールからある特定の技術的卓越性を本当に必要としません。

短い注記:電話上のSignalのローカルデータベースは暗号化されています。したがって、最初にファイルシステムからSignalデータベースを抽出する必要があり、その後、データベースを復号化するために3つの値を取得する必要があります。最初は、いわゆるKeystoreシステムに保存され、他の2つの値は電話のファイルシステム上のXMLファイルに保存されます。Keystoreシステムに保存された暗号化キーがデバイスから抽出するのがより困難であることを知ることは重要です。キーがKeystoreにあると、暗号化操作にそれらを使用でき、キーマテリアルは非エクスポート可能なままです。

それでは、説明された攻撃に対するGrapheneOSセキュリティ対策に深く潜り込みましょう。

電話へのハッキングに対する保護

GrapheneOSは多くのセキュリティ機能を実装しました。GrapheneOSセキュリティに関する私のプレゼンテーションからそれらの一瞥を得ることができます

しかし、様々なフォレンジックツールに関して、GrapheneOSにはAFUモード(最初のロック解除後)でデバイスがロックされた後に新しいUSB接続を許可しないという特別な機能があり、アクティブなUSB接続がない場合はハードウェアレベルでUSBデータを完全に無効化します。これは、攻撃者がGrapheneOSデバイスをコンピュータにUSBを通じて接続した場合、GrapheneOSデバイスはまったく接続を許可しないことを意味します。

ユーザーはBFU(最初のロック解除前)モードで、または電話が完全にロック解除されている場合でさえそれをそうさせるように設定できます。そして高い脅威モデルを持つユーザーはUSBを完全に無効化することさえできます。充電を含むUSB-PD/充電は、OSが起動している間。したがって、彼らは電源がオフまたはfastboot/fastbootd/recovery/チャージングモードに起動している間にのみ充電を許可することを決定できます。これは他のどの電話も持っていない機能であり、ユーザーによって完全にカスタマイズできます。

GrapheneOSは絶えず改善していており、2024年の初めから彼らは様々な可能なエクスプロイトに対するセキュリティを大幅に改善しました。2024年4月に、彼らはまたPixelスマートフォン用のいくつかのファームウェア改善を実装するのに役立ちました

ブルートフォース攻撃に対する保護

既に述べたように、内部ストレージ内のデータがまだ暗号化されているBFUデバイスの場合、フォレンジック検査官はデバイスをロック解除するためにPINコードまたはパスワードを「推測」する必要があります。これはいわゆるブルートフォース攻撃によって行われます(PINコードまたはパスワードのすべての可能な組み合わせを推測します)。

しかし、Pixel 6以降の電話には、Titan M2とも呼ばれる専用セキュリティチップ(ハードウェアセキュリティモジュール)が含まれており、復号化キーを保存しています。このチップは、ユーザーが正しいPINまたはパスワードを入力した場合のみ、内部電話ストレージをロック解除します。

しかし、ここに問題があります。攻撃者がブルートフォース攻撃を試みた場合(つまり、すべての可能なPIN/パスワード組み合わせを通過しようとします)、チップは試行の数を制限します。5回の失敗した試行の後、チップは次の推測試行が許可される前に30秒の遅延を追加します。その後、遅延は増加し(30回の失敗した試行の後、遅延は10回の試行ごとに倍増)、140回の失敗した試行の後、GrapheneOSとそのセキュアエレメントはブルートフォースを1回の試行に制限します。1日ごと。これはセキュアエレメントスロットリングと呼ばれています。

したがって、攻撃者がすべての異なる組み合わせをテストして6桁のPINを推測したい場合、100万の可能な組み合わせがあるため、ブルートフォース攻撃には長い長い時間がかかります。攻撃者が非常に幸運であり、最初の数回の試行で正しいPINを推測する場合を除きます。

もちろん、質問はこのセキュアエレメントをハックするか、試行の制限数をロック解除することが可能かどうかです。答えは—非常にありそうにありません。なぜ?このセキュアエレメントはこれらのタイプの攻撃から保護するために特別に開発されたからです。そしてそれは独立し、認定された評価ラボによって最高のハードウェア脆弱性評価(AVA_VAN.5)に合格しました。

実際に、GrapheneOSはこの地域で非常に成功しています。これらの攻撃に対してiOSよりもはるかに多くのハードニングを行っているからです。iPhoneもセキュリティエレメントを持っていますが、攻撃を開発する企業はAppleのセキュアエレメントスロットリングを何年も成功裏にバイパスしました(そしてSamsungとQualcommのセキュアエレメント実装と同じことをしています)。これらの企業は第2世代から第5世代のPixelsでセキュアエレメントスロットリングを成功裏にバイパスしていました。Pixel 2はNXPセキュアエレメントを使用し、Pixel 3はカスタムARMセキュアエレメントに移りました。しかしPixel 6以降の電話はカスタムRISC-Vセキュアエレメントを使用しています。標準的なARM Cortexセキュアエレメントコアから遠ざかることは正しい決定だったようです。これらの企業がセキュアエレメントを成功裏に悪用するのをブロックしたからです数年間。

自動再起動機能

GrapheneOSにも自動再起動機能があります。つまり、しばらくの後、電話は自動的に再起動します。デフォルトの自動再起動時刻は18時間です(その時間に電話がロック解除されていない場合、それは再起動します)。しかしユーザーは異なる間隔に設定できます。10分間隔に設定することもできます。

これは技術的には、この期間の後のデータが保存状態に戻されることを意味します。あるいは、別の言い方をすると、電話がAFUからBFU状態に得ることを意味します。そして既に説明したように、BFU状態のロックされたデバイスはAFU状態のロック解除されたデバイスよりもデータ抽出に対して重大な課題を提示します。

再起動後、電話から復号化されたデータを抽出することはほぼ不可能です。したがって、GrapheneOSチームの焦点は自動再起動が機能するための長さの間、悪用に対する防御であり、その後、あなたのデータは前より安全です。つまり、攻撃者が成功したエクスプロイトを開発した場合、彼らのユーザープロファイルからデータを取得するためにそれを使用する機会の窓は、電話がロックされたときから次の再起動までです。

結論

昨年、GrapheneOSはこれらの攻撃に対して電話を防御するためにはるかに多くの努力を投じ始めました。データをセキュアにする必要があるユーザーは、確実に強力なパスフレーズを使用する必要があります。これをより便利にするために、GrapheneOSは2要素指紋ロック解除機能を開発しており、これにより人々は強力なパスフレーズを便利な指紋とPINロック解除と組み合わせることができます。彼らはまた、ランダムなパスフレーズを自動的に生成するためのUIを提供する計画もしています。これはセキュリティを大幅に改善し、電話上のユーザーのデータへのアクセスをはるかに困難にします。

GrapheneOSをハックしたい俳優は正当に絶望しています。したがって、彼らが誤った情報を広めることで不正行為をしようとすることは驚くべきことではありません。しかし知識は力であり、誤った情報は事実と戦うことにより正常に戦うことができます。

翻訳元: https://telefoncek.si/2024/05/2024-05-30-grapheneos-and-forensic-extraction-of-data/

ソース: telefoncek.si