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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ghostlock-sabrina — CVE-2026-43499 Google TV搭載Chromecast(sabrina)向けGhostLock rootエクスプロイト | Kitploit
ツール/GitHubGitHub/k-o-n-t-o-r/ghostlock-sabrina
Androidセキュリティ組み込みシステムセキュリティ特権昇格脆弱性分析エクスプロイトハードウェアとIoTセキュリティ論文と研究ペイロード開発バイナリエクスプロイト
GitHubk-o-n-t-o-r/ghostlock-sabrina

ghostlock-sabrina

CVE-2026-43499 Google TV搭載Chromecast(sabrina)向けGhostLock rootエクスプロイト

11日前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
リポジトリを見る

GhostLock Sabrina

Chromecast with Google TV(sabrina)向けのrootエクスプロイト。CVE-2026-43499 -- Linuxカーネルのfutex PI(優先度継承)サブシステムにおけるuse-after-freeを悪用する。

Android 14、カーネル5.15.170(PGO+BOLT+LTO、clang 17)を実行するロックされたブートローダーのデバイスでrootを取得する。

脆弱性

GhostLockは、rt_mutex_start_proxy_lock()内の-EDEADLKロールバックパスから呼び出されるremove_waiter()のバグを悪用する。この関数は、waiterタスクのものではなく(requeuerのもので、すでにNULLである)current->pi_blocked_onをクリアする。waiterのpi_blocked_onは決してクリアされず、カーネルスタック上の解放済みrt_mutex_waiterへのダングリングポインタが残る。

その後のsched_setattrがrt_mutex_adjust_pi -> rt_mutex_adjust_prio_chainをトリガーし、これがダングリングポインタを辿り、再利用されたヒープページ上の攻撃者制御データを介してPIチェーンを走査する -- rb_eraseを介した任意書き込みプリミティブを与える。

エクスプロイトチェーン

主要な革新

  • SIGUSR1 walk-before-cleanup: SEQPACKETオーバーレイはfutex待機を中断するシグナルハンドラ内で実行されるため、PIチェーン走査はfutexクリーンアップパスがスプレーページのスピンロックを競合する前に発火する(MCS qspinlockのウェッジを排除する)
  • Fake user_namespace: スプレーページ上の自己完結型名前空間で、identity uid/gidマップとucounts = NULLを持つ -- cap_capableは最初の反復で一致し、inc_rlimit_ucountsは1回のループで終了するため、&init_user_nsをリークする必要がなくなる
  • TIDゲート付きperfサンプリング: PERF_SAMPLE_TIDフィルタにより、呼び出しスレッドのレジスタスナップショットのみがカウントされ、ホットなシステムサービスが最頻値投票を支配するのを防ぐ

ターゲット

  • デバイス: Chromecast with Google TV(sabrina)、Amlogic S905X3(4x A55)、2 GB RAM
  • カーネル: 5.15.170-android14-11-gf4a1f03072af(aarch64、PGO+BOLT+LTO、clang 17.0.2)
  • Android: 14、ビルドUTTC.250917.004、セキュリティパッチ2025-10-01
  • 設定: CONFIG_FUTEX_PI=y、CONFIG_IO_URING=y、perf_event_paranoid=-1、SELinux enforcing、panic_on_oops=1、ユーザー名前空間なし

ビルド

root@kitploit:~
export ANDROID_NDK_HOME=/path/to/android-ndk
make -j$(nproc)

Android NDKが必要(r27でテスト済み)。静的にリンクされたaarch64バイナリを生成する。

使用方法

root@kitploit:~
adb push ghostlock /data/local/tmp/
adb shell "cd /data/local/tmp && ./ghostlock --cred"

エクスプロイトは約20秒かかる(ヒープスプレー + KernelSnitchブルートフォース)。成功すると、プロセスはuid=0の資格情報で/system/bin/shをexecする。

著者

このエクスプロイトは、Claude Opus 4.6(Anthropic)によってポーティングおよび開発され、GLM-5.3(Z.ai)がカーネルエクスプロイトコンサルタントを務めた。

参考文献

  • GhostLock(オリジナルエクスプロイト) -- このポートの基となったAnomalyStudioによるOnePlus/Pixel GhostLockエクスプロイト
  • KernelSnitch -- futexハッシュ衝突を介してカーネルヒープアドレスをリークするタイミングサイドチャネル(Gruss et al.、TU Graz)
  • CVE-2026-43499 -- futex PI use-after-free脆弱性
  • Linuxカーネル5.15ソース -- kernel/futex/、kernel/locking/rtmutex.c、lib/rbtree.c

免責事項

このエクスプロイトはセキュリティ研究および教育目的で公開されている。研究者が所有するデバイスを対象としている。所有していないデバイス、または許可なく使用しないこと。

ライセンス

MIT

ツールをダウンロード
ステージ手法
KASLRリークperf_event_openとPERF_SAMPLE_IP(TIDゲート付き)
タスク構造体リークperf_event_openとPERF_SAMPLE_REGS_INTR(TIDゲート付き、線形マップアドレスの最頻値)
mm_structリークKernelSnitch -- futexハッシュ衝突タイミングサイドチャネル
ヒープスプレーSLUB破棄の振り付け(memfd-close、CPU部分オーバーフロー)+ io_uring_setup(256)による次数2ページ回収
スタックオーバーレイAF_UNIX SOCK_SEQPACKET sendmsg -- move_addr_to_kernelが128バイトのsockaddrをカーネルスタックにコピーし、ダングリングwaiterのtask/lock/prioフィールドを上書きする
走査トリガー単調なniceラダー(7 -> 14 -> 19)を伴うsched_setattrがPIチェーン走査を発火させる
書き込みプリミティブrb_eraseのCase 1aがchild(fake_cred)をparent->rb_right = task->credに書き込む
資格情報スワップtask->cred = fake_cred(uid=0、全capability、スプレーページ上の自己完結型fake user_namespace)
rootシェルexecve("/system/bin/sh") -- execパス内のcommit_credsがfake_credをクリーンなslab資格情報にコピーする