SafetyNetの恐ろしいハードウェア認証が展開され、Magiskがルートを隠すのがはるかに難しくなります

3月に、Magiskをインストールした少数のユーザーは、自分のデバイスがSafetyNet認証に失敗していることに気付きました。 このニュースは、多くの重要な銀行/金融アプリやPokémon GoやFate/Grand Orderのような人気ゲームが根ざしたデバイスでの実行を拒否していたことを意味するため、xda しばらくの間、SafetyNetの強化された制限が引き戻されたかのように見えましたが、ここ数週間で一握りのユーザーのために再び展開されました。 しかし、Googleは静かに、彼らは月に戻ってブートローダのロック解除ステータスを隠すことができないMagiskを作ったものであるSafetyNet応答のためのハードウェアによ この変更が広く公開された場合、ユーザーはroot/custom Rom/kernels/etcにアクセスするかどうかを選択する必要があります。 または彼らの好みの銀行のアプリやゲーム。 パワーユーザーのためのAndroidの最大の魅力の一つは、すぐに消えてしまう可能性があります。

この一連の出来事を要約するには、まずSafetyNet自体について話す必要があります。 SafetyNetは、Google PlayサービスのApiのセットです。 SafetyNet Attestation APIは、これらのApiの1つであり、デバイスのソフトウェア環境が何らかの方法で改ざんされているかどうかを確認するために、サードパーティのアプ APIは、スーパーユーザバイナリの兆候、ブートローダのロック解除ステータスなど、さまざまなものをチェックします。 Magiskでデバイスをルート化すると、検出プロセスのための「分離された「安全な環境」であり、GoogleのAPIを介して、デバイスの実際の状態を反映しない合法的なSafetyNet結果を作成します」と、Xdaの上級認定開発者topjohnwu氏は述べています。 これにより、ユーザーは電話をルート化しながら、ブートローダのロック解除チェックに対してAPIが常に”false”を返すようにすることができます。 SafetyNetのブートローダのロック解除検出をバイパスするこの方法は、過去数年間Magiskのために働いてきましたが、Googleはハードウェア認証を使用してブートイメージの整合性を検証する上でオフに開催されているため、それは唯一のものです。 月には、googleが最終的にsafetynetでハードウェア認証を採用してブートイメージを検証し始めているように見えましたが、Googleから変更を確認する公式の声明は得られず、少数のユーザーしか影響を受けませんでした。 しかし、Xdaの上級メンバーであるDisplaxが発見したように、Googleは2020年5月5日に、一部のデバイスからのSafetyNet Attestation API応答にはハードウェアによるチェックが含まれていることを確認しました。

“SafetyNet APIクライアント”のGoogleグループで、GoogleはAttestation APIの新機能evaluationTypeについて詳しく説明しました。 一部のデバイスからのJSON Web Signature(JWS)応答には、「evaluationType」という名前のフィールドがあり、「個々のSafetyNet Attestation API応答に貢献した信号/測定のタイプに関する洞察を開発者に提供し”このフィールドでサポートされているトークンの1つは”HARDWARE_BACKED”で、APIが”リモートデバイスの利用可能なハードウェアでバックアップされたセキュリティ機能(hardware-backed key attestationなど)が評価に影響を与えることを示しています。”Googleは、彼らが”現在、我々はハードウェアに裏付けされたセキュリティ機能に依存するデバイスの適格性基準を評価し、調整していると言います。「これが意味することは、一部のデバイスでは、Google Play Servicesがハードウェアで裏付けられた認証を使用して、デバイスのソフトウェアが改ざんされていないこ GoogleはGoogleグループの発表の外でこの変更を公式に文書化していないため、SafetyNetを使用する開発者の中にはこの変更を認識していない可能性があります(JWS応答の”HARDWARE_BACKED” ただし、このフィールドをチェックしているアプリでは、デバイスがGoogleが実行しているテストの一部である場合、ルートアクセスを非表示にする方法は

evaluationTypeが”BASIC”を返すSafetyNet Attestation API応答。”クレジット: XDAシニアメンバー
SafetyNet応答BASICおよびHARDWARE_BACKED
evaluationTypeが”BASIC”および”HARDWARE_BACKED”を返すSafetyNet Attestation API応答。”Credits:XDA Senior Member Displax

topjohnwuによると、ハードウェアでバックアップされた認証は、Google Play Services now”SafetyNetサーバーへの変更されていないキーストア証明書、その正当性、および証明書拡張デー「キーストア証明書の派生元となる秘密鍵は、電話機の分離された安全な環境によってサポートされているため、それらを取得するには、電話機のTrusted Execution Environment(TEE)ま 何らかの形で秘密鍵を漏らすことができた場合、Googleが発見すると鍵はすぐに取り消されます。 Googleは、ピクセルの携帯電話でTEEに影響を与える重要なセキュリティ脆弱性のための報酬で数十万ドルを提供しています,これはちょうどこれがとにかく

Magiskがブートローダのロック解除ステータスを偽装し続ける可能性のある別の方法は、SafetyNetのクライアント側のコードを変更して常に基本的な評価を使用するこ しかし、topjohnwuが指摘しているように、これにはXposed Frameworkのようなフックフレームワークを介してGoogle Playサービスにカスタムコードを注入する必要があります。 これは、Google Playサービスが非常に難読化されているために行うのが難しいだけでなく、「メモリ空間分析によってコード操作が非常に簡単に明らかにな”さらに、これは、Googleのサーバーが基本的な評価を受け入れ続け、HARDWARE_BACKED評価がそれらをサポートするデバイスに強制されていない場合にのみ機能します。 (TopJohnwuによると、SafetyNetは「Googleサーバーからの応答であり、Googleの秘密鍵で署名されている」ため、実際の応答を偽装することはできません。)

Android7Nougat以降、Googleはすべてのデバイスが分離された安全な環境を持っていることを要求しています。 分離された安全な環境のない古いデバイスは明らかにハードウェアでバックアップされた認証を実行できないため、Magiskはこれらのデバイスでrootアクセ しかし、この変更が広く展開された場合、他の誰もがrootアクセスと銀行アプリの間で難しい選択をする必要があります。

残念ながら、SafetyNetチェックを実際に使用する必要がないときに使用するアプリはおそらくたくさんあります。 Topjohnwuによって引用された一例は、一見ブートローダのロック解除されたデバイス上で実行することを拒否し、公式マクドナルドのアプリです。 Twitterでは、topjohnwuは、パワーユーザーのための敵対的な環境を作成するようにAPIを過度に使用するアプリを呼び出します。 XDAは、開発者Quinny899が、彼のチームがSafetyNetを使用してデバイスのセキュリティ状態を確認する方法についての逸話に参加していることを認識しました。 彼のチームのアプリは、それが動作するすべての機密データを暗号化するので、彼らは最終的にそれを通過しないことに決めました。 SafetyNetは、特にスーパーユーザーの悪用の可能性を考慮する場合、適切なセキュリティとデータ処理の慣行の代わりに使用すべきではないと彼は主張しています。

私は@AndroidDevを支持して、ハードウェアに裏付けられたSafetyNet評価を”実際の”セキュリティに敏感なアプリに制限します。 開発者は、このレベルのAPIアクセスを認定するためにアプリケーションプロセスを経る必要があります。 McDonaldsがブートローダのロック解除されたデバイスで実行することを拒否することはばかげています。

—ジョン-ウー(@topjohnwu)June29, 2020

新しいSafetyNetの変更がMagiskにどのように影響するかの詳細については、twitterのtopjohnwuの優れたFAQをチェックしてください。 お使いのデバイスがGoogleの新しいSafetyNetテストの一部であるかどうかを確認したい場合は、XDAシニアメンバーのDisplaxによるこのガイドに従うか、最新のMagisk Managerリ

Magisk Managerを更新し、SafetyNetチェックのevaluationTypeフィールドを反映して、人々が栄光の最後の日を数え始めることができるようにしました😅pic.twitter.com/x61tGjM7IK

—ジョン-ウー(@topjohnwu)June30, 2020

この記事は、2020年6月30日午前10時46分(EST)に更新され、GoogleがPixel携帯電話で見つかったTEEの脆弱性に対してのみ報酬を支払うことを修正しました。 さらに、最新のMagisk Managerリリースに関する詳細が追加され、組み込みのSafetyNetチェッカーにevaluationTypeフィールドが表示されるようになりました。

Mishaal Rahman

Mishaal Rahman

私はXDAの編集長です。 Android OSやモバイルデバイス上のニュース速報に加えて、私はポータル上のすべての編集とレビューのコンテンツを管理します。 ヒント/メディアのお問い合わせ:[email protected]…..

これを次に読む


  • Googleは、デジタル車のキーと運転免許証の採用を駆動するためにAndroidの準備SEアライアンスを形成します


  • Fairphone2から2015今アンドロイド9パイへの公式アップデートを受け


  • MotorolaのMoto G50は、予算の5Gチップと低価格を提供しています


  • ASUSは、rog Phone5、ROG Phone3、およびrog Phone IIの新しいアップデートをリリースし、セキュリティパッチとバグ修正



+