
QuestStack — Updated!
GhostLock + CVE-2021-1931を使用してMeta Quest 1のブートローダーのロックを解除し、rootアクセスを取得します。
QuestStack
QuestStack は、Meta Quest の root 化およびブートローダー アンロックプロジェクトです。
GhostLock 権限昇格チェーンと CVE-2021-1931 ABL/fastboot 脆弱性を利用して、QuestStack は最新の Quest 1 ファームウェアで root アクセスを取得し、脆弱な ABL を使用して一時的に起動し、デバイスのブートローダーをアンロックする方法を提供します。
このプロジェクトは、Quest ファームウェアの調査、root アクセス、A/B スロット操作、ABL の変更、fastboot の悪用、バックアップ、検証を 1 つの自動化ワークフローに統合し、開発者や愛好家に Quest 1 ハードウェアの完全な制御を提供することを目的としています。
現在の詳細
ステータス: リリース済み
90 Hz 対応可能。下記の Discord を確認してください
QuestStack は現在、Windows、Linux、macOS 向けのデスクトップアプリケーションとして利用できます。
現在のバージョンには、完全なグラフィカルインターフェース、自動デバイス検出、検証済みバックアップ、SHA-256 整合性チェック、自動スロット処理、およびリカバリーロジックが含まれています。
始める前に
対応デバイス
- ✅ Quest 1
- ✅ ファームウェア:
49845030443200410(最新) - ✅ Quest 2 (Webサイト版のみ)
- ✅ ファームウェア:
50670960048600150
非対応デバイス
- ❌ Quest Pro
- ❌ その他のヘッドセット
QuestStack は、完全なプロセスを開始する前に、接続されたデバイスをチェックします。
ファームウェアビルド、Quest 製品情報、フィンガープリント、A/B スロット状態は、誤ったデバイスでプロセスを実行するリスクを減らすために自動的にチェックされます。
Webサイト版
アプリの代わりに Webサイトで実行したい場合は、以下を使用してください:
https://quest1-unlock.skystate.ch/
クレジット: Darknight
Webサイト版は別の実装であり、デスクトップ版と同じワークフロー、バックアップシステム、またはリカバリー機能を必ずしも提供するわけではありません。
要件
デバイスが必要なファームウェアバージョンでない場合は、USB アップデートモードで再起動し、必要なファームウェアパッケージをサイドロードしてください:
https://files.cocaine.trade/firmware/meta/Quest/q1_49845030443200410.zip
https://files.cocaine.trade/firmware/meta/Quest%202/q2_50670960048600150.zip
ファームウェアをインストールした後、ヘッドセットを通常どおり起動し、ADB / USB デバッグが有効になっていることを確認してください。
手順
- Quest を通常どおり起動します。
- USB を使用してコンピューターに接続します。
- プロンプトが表示されたら USB デバッグを許可します。
- QuestStack を起動します。
- ヘッドセットが検出されるのを待ちます。
- QuestStack がデバイスを対応済みとして報告することを確認します。
- フルプロセス を選択します。
- 開始 を押します。
- 続行する前に警告を読んでください。
- QuestStack が完了するまでヘッドセットを接続したままにします。
フルプロセスはヘッドセットを工場出荷時設定にリセットします。
QuestStack はプロセスの残りを自動的に処理します。
QuestStack が行うこと
フルプロセス中、QuestStack は以下を実行します:
- 接続されたヘッドセットを検出します。
- 対応する Quest であることを確認します。
- 必要なファームウェアとデバイスのフィンガープリントを確認します。
- 現在アクティブな A/B スロットを検出します。
- 必要なファイルをダウンロードして検証します。
- GhostLock / ionstack を使用して一時的な root アクセスを取得します。
- 非アクティブなスロットの検証済みバックアップを作成します。
- 必要な脆弱なファームウェアファイルをヘッドセットにプッシュします。
- 脆弱なブートファームウェアを非アクティブなスロットにフラッシュします。
- フラッシュされたパーティションを読み戻して検証します。
- 脆弱なスロットに切り替えます。
- fastboot に直接再起動します。
- CVE-2021-1931 ブートローダーアンロックを実行します。
- ブートローダーが実際にアンロックされていることを確認します。
- 元のスロットを復元します。
- ヘッドセットを工場出荷時設定にリセットします。
- Android に再起動します。
脆弱なスロットがアクティブ化される前に何かが失敗した場合、QuestStack はそのスロットに切り替えずに停止します。
脆弱なスロットがアクティブ化された後に何かが失敗した場合、QuestStack は元のスロットを自動的に復元しようとします。
バックアップ
非アクティブなスロットを変更する前に、QuestStack は影響を受けるパーティションの永続的なバックアップをコンピューター上に作成します。
バックアップには次のような情報が含まれます:
- デバイスのシリアル番号
- デバイスのモデル
- ファームウェアのフィンガープリント
- スロット情報
- パーティションサイズ
- SHA-256 ハッシュ
QuestStack は、コピーされた各パーティションの SHA-256 ハッシュを元のブロックデバイスと比較してから、バックアップを有効としてマークします。
不完全なバックアップは有効なバックアップとして扱われません。
既存の検証済みバックアップは、QuestStack 内の バックアップ タブから表示できます。
SHA-256 検証
QuestStack は、プロセス全体を通じて重要なファイルを検証します。
SHA-256 検証は現在、以下に使用されています:
- ファームウェアアーカイブ
- ファームウェアイメージ
- ionstack root エクスプロイト
- バンドルされた ADB および fastboot ツール
- ヘッドセットにプッシュされたファイル
- パーティションバックアップ
- フラッシュされたパーティション
必要なファイルが期待されるハッシュと一致しない場合、QuestStack は続行せずに停止します。
A/B スロットの安全性
QuestStack は 非アクティブなスロット でダウングレードを実行します。
現在起動している Android スロットは、ダウングレードプロセス中は変更されません。
スロットを切り替える前に、QuestStack は脆弱なファームウェアが実際に正しく書き込まれたことを検証します。
ブートローダーがアンロックされた後、QuestStack はヘッドセットをワイプして再起動する前に元のスロットに切り替えます。
つまり、脆弱なスロットはアンロックプロセスのためにのみ一時的に使用されます。
アンロックのみモード
QuestStack には アンロックのみ モードも含まれています。
このモードは、すでに脆弱な ABL で実行されており、すでに fastboot にあるヘッドセットを対象としています。
アンロックのみモードは以下を 行いません:
- root 化
- ファームウェアのフラッシュ
- アクティブなスロットの変更
- 通常のダウングレードバックアップの作成
- ヘッドセットの工場出荷時設定へのリセット
- ヘッドセットの自動再起動
このモードは、ヘッドセットが正しい脆弱な ABL で実行されていることをすでに確認している場合にのみ使用してください。
リカバリー
QuestStack には、脆弱なスロットがアクティブ化された後に発生する障害に対する自動リカバリーロジックが含まれています。
可能な場合、プログラムはヘッドセットを自動的に元のスロットに切り替えます。
自動スロットリカバリーが失敗した場合は、脆弱なスロットを盲目的に起動し続けないでください。
ヘッドセットを接続したままにし、QuestStack によって作成されたバックアップを保持し、他のことを行う前にログを確認してください。
サポートについては、下記の Discord サーバーを使用してください。
サポート
ヘルプが必要な場合は、このサーバーへの参加を検討してください:
Quest の改造、90 Hz、リカバリー、その他の実験に関する議論もそこで見つけることができます。
推測
現時点ではありません。
クレジット
Android セキュリティおよび VR 開発コミュニティ (特に FreeXR) の研究とツールを使用して構築されており、darknight による以前の Quest ブートローダーアンロック作業も含まれます:
https://github.com/darknight1050/quest-bootloader-unlocker
さらに、GhostLock、ionstack、および現代の Quest の root 化とブートローダーアンロックを可能にしたその他の作業の背後にある研究者と開発者に感謝します。
ライセンス
QuestStack は GNU General Public License v3.0 の下でライセンスされています。
詳細については LICENSE を参照してください。
免責事項
このプロジェクトは教育および研究目的で提供されています。
ブートローダーの状態の変更、ブートファームウェアのフラッシュ、またはシステムソフトウェアの変更は、デバイスに永続的な影響を与える可能性があります。
QuestStack にはリスクを軽減するためのバックアップ、検証、およびリカバリーチェックが含まれていますが、データ損失や起動不能なデバイスになる可能性は依然としてあります。
自己責任で使用してください。