Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/theandersmadsen/humane-aipin-ghostlock
Androidセキュリティ特権昇格脆弱性分析エクスプロイトポストエクスプロイトモバイルセキュリティ論文と研究ペイロード開発バイナリエクスプロイト

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
GitHubtheandersmadsen/humane-aipin-ghostlock

humane-aipin-ghostlock

CVE-2026-43499に対する、ガードされたソースのみのHumane AI Pin root PoC

リポジトリを見る
1521011ヶ月前未レビュー

Humane AI Pin 向け GhostLock

Humane AI Pin 向け GhostLock は、特定の小売ファームウェアビルド1つを対象とした、オープンソースのブートスコープ付き root 実証コード(proof of concept)です。通常の認可済み ADB シェルから、Linux の rtmutex use-after-free である CVE-2026-43499 を実行します。

ランナーは意図的に狭く作られています。何かをステージする前に、完全なファームウェアフィンガープリント、カーネルビルド、スロット、シェル UID、SELinux 状態を確認します。不一致があれば実行は停止します。

[!WARNING] これはカーネルエクスプロイトです。Pin がパニック、再起動、またはハードハングする可能性があります。ハードハングした場合は、デバイスを取り外してバッテリーが切れるまで待つ必要があるかもしれません。所有していて復旧できる Pin にのみ使用してください。root は再起動で失われます。

検証済みターゲット

プロパティ許容値
デバイスHumane AI Pin、小売ユニット
ファームウェアqti/atoll/atoll:12/SKQ1.230401.001/101.000470.45.20:user/release-keys
Android12
カーネル4.14.190-perf、ビルド日時 Mon Nov 4 18:37:23 PST 2024
スロット_b のみ
カーネルアーキテクチャaarch64
Android ABIarm64-v8a
プロファイル IDhumane-aipin-45.20-nov4
ビルドプロジェクトhumane-aipin-45.20
カーネル Image SHA-256d4f4e0deb20871fce207f1f095ba1934162081c2f10afaccbb2e6a1e938719fb
リリース候補リプレイ最終クリーンブートリプレイ待ち

スロット _a、開発者ファームウェア、近接するファームウェアバージョン、その他の Qualcomm atoll 製品は拒否されます。詳細は互換性の詳細を参照してください。Android フィンガープリントが一致するだけではこのチェックを回避できません。A/B スロットは、同じユーザースペースビルド ID の下でも異なるブートイメージやカーネルレイアウトを持つ可能性があります。

互換性は profiles/ 配下のバージョン管理されたマニフェストで定義されます。ホストランチャー、ランナー、生成されるネイティブプリフライト、アロケータジオメトリ、最小シンボル、ビルド済みペイロードは、すべて同じマニフェストに紐付けられています。マニフェストにスロットを追加するには、プロファイルされた正確なカーネル Image のクリーンブート物理リプレイが依然として必要です。

始める前に

必要なもの:

  • ADB がすでに認可された、ユーザー所有の Pin;
  • 安定した USB データ接続と外部電源;
  • adb、Python 3.10 以降、make、C コンパイラ;
  • ペイロードをビルドするための Android NDK 28.2.13676358 (r28c)。

このリポジトリには、ADB 秘密鍵、ファームウェアイメージ、ブートイメージ、バグレポート、デバイスログ、ビルド済みペイロードは含まれていません。

Android のコマンドラインツールで固定バージョンの NDK をインストールします:

sdkmanager "ndk;28.2.13676358"

ADB が Pin を device として認識していることを確認します:

$ adb devices
List of devices attached
YOUR_SERIAL    device

実行方法

リポジトリをクローンし、すべてのコマンドで同じ明示的なシリアル番号を使用します:

git clone https://github.com/TheAndersMadsen/humane-aipin-ghostlock.git
cd humane-aipin-ghostlock

./ghostlock check --serial YOUR_SERIAL
./ghostlock run --serial YOUR_SERIAL
./ghostlock verify --serial YOUR_SERIAL

check は読み取り専用です。検出されたファームウェア、カーネル、スロット、シェル境界、SELinux の状態、バッテリー、電源、NDK リビジョン、ビルドツールのステータスを出力します。その診断出力はデフォルトでデバイスのシリアル番号をマスクします。

run はガード付きの試行を 1 回実行します。ROOT YOUR_SERIAL の入力を求め、ソースからビルドし、ペイロードをプッシュした後にそのハッシュを検証し、KASLR を導出するために現在のブートの bugreport を取得し、その生の bugreport をデフォルトで削除し、2 回目の完全なプリフライトの後にのみエクスプロイトを開始します。ランチャーはデフォルトで少なくとも 20% のバッテリー残量と外部電源を要求し、その後ランナーはブートごとの単一の試行を消費する直前に両方を再確認します。--min-battery 0 は両方の電源ゲートを無効化し、安定した電源が独立して確認されている場合にのみ使用することを意図しています。

verify は独立して、ブートスコープの root ブローカーに id と getenforce の実行を要求します。

検証が成功すると次のようになります:

uid=0(root) gid=0(root) groups=0(root) context=u:r:kernel:s0
SELinux: Permissive
Boot epoch: <redacted>; uptime: <redacted>s

正確な SELinux コンテキストはカーネルとファームウェアに固有です。受け入れ条件は、同じブート上で SELinux が permissive の状態で、ブローカー経由で UID/GID 0 になることです。

PoC が変更する内容

現在のブートに対して、ペイロードは以下を行います:

  1. エクスプロイトプロセスの資格情報ポインタを init_cred に置き換えます;
  2. SELinux の enforcing を解除し、現在のポリシーを再読み込みします;
  3. 小さなコマンドクライアントを /data/local/tmp/su に書き込みます;
  4. カーネル認証済みの UID 0 または Android シェル UID 2000 のピアのみを受け入れる Unix ソケットブローカーを起動します。

パーティションへの書き込み、ブートローダーのアンロック、モジュールのインストール、検証付きブートの変更、再起動後の永続化の作成、ネットワークサービスへの接続、テレメトリのアップロードは行いません。

別の ADB シェルから root コマンドを実行するには:

adb -s YOUR_SERIAL shell '/data/local/tmp/su -c id'

障害と復旧

ランナーはカーネル起動ごとに1回の試行のみを許可します。ミス、タイムアウト、切断、不確定な状態、パニック、または再起動が報告された場合、その起動では再試行しないでください。まず再起動してから、再度 check を実行してください。

ADB がまだ応答する場合:

adb -s YOUR_SERIAL reboot

Pin がハードハング状態で ADB が応答しない場合は、外部電源をすべて切断してください。テスト済みの市販ハードウェアには、ユーザーがアクセスできる信頼性の高い強制再起動手段がないため、復旧にはバッテリーが消耗するまで待ってから電源を再接続する必要がある場合があります。

通常の再起動後、root は失われます。ステージングされたファイルは /data/local/tmp 配下に不活性な状態で残る可能性があります。クリーンなシェルでそれらを削除できます。これにはブート固有のアトミックな試行クレームも含まれます:

adb -s YOUR_SERIAL shell 'rm -f /data/local/tmp/ghostlock-aipin.so /data/local/tmp/su /data/local/tmp/.ghostlock-su.sock /data/local/tmp/.ghostlock-aipin-attempt'
adb -s YOUR_SERIAL shell 'rm -rf /data/local/tmp/.ghostlock-aipin-attempt.*.lock'

PoC を使用する前に SAFETY.md を、失敗した実行を再試行する前に TROUBLESHOOTING.md をお読みください。

プライベートログとイシューレポート

実行記録はモード 0700 の一時ディレクトリに書き込まれます。これらにはデバイスのシリアル番号、ブート識別情報、カーネルアドレス、およびエクスプロイトのテレメトリが含まれます。そのディレクトリや生の Android bugreport をイシューに添付しないでください。

代わりに、縮小版のレポートを作成してください:

./ghostlock report /private/tmp/ghostlock-aipin-TIMESTAMP --output ghostlock-report.json

共有する前に JSON を確認してください。リダクターはシリアル番号、ブート ID、ホストパス、生のコマンド出力、カーネルアドレスを省略します。プリフライト、エクスプロイト、検証、および実行全体の固定された単調増加の所要時間を含めるため、デバイスの証拠を共有することなく失敗を比較できます。詳細は PRIVACY.md を参照してください。

ビルドとテスト

Android ペイロードをビルドします:

./ghostlock build

複数の証拠に裏付けられたプロファイルが存在する場合は、明示的に1つを選択します:

./ghostlock build --profile humane-aipin-45.20-nov4

すべてのホストテストと2つの独立したビルドを実行します:

./scripts/verify-release.sh

ペイロードは次に書き込まれます:

source/build/humane-aipin-45.20/bin/preload.so

ビルド成果物は Git では無視されます。リリースアセットは、対応する GitHub リリースに添付されたチェックサムと照合して検証してください。

仕組み

このエクスプロイトは、CVE のスタック上に残存するダングリングな rt_mutex_waiter を利用して、制御された赤黒木の更新を誘導します。KernelSnitch はまず、futex ハッシュのタイミングを通じて mm_struct のアドレスをリークします。次に、同一 PFN の perf-event ゲートにより、解放された order-3 slab ページが破壊トリガーを進める前に制御されたソケットバッファデータによって再利用されたことを証明します。起動時に束縛された KASLR ベースは、少なくとも 2 つの一致する現在の起動の WARN アンカーから導出されます。その結果得られる読み書き経路は、現在のタスクを解決し、起動スコープの資格情報変更を実行します。

ターゲットプロファイルには、この経路で消費されるオフセットとシンボルのみが含まれています。カーネル Image および完全なシンボルテーブルは配布されません。 TECHNICAL.md では、各ステージとフェイルクローズドゲートについて説明しています。

プロジェクトのステータス

これは、サポート対象外のコンシューマーデバイス向けの実験的な研究リリースです。汎用的な Android ルート化ツールではなく、Humane、HP、CosmOS とは提携していません。

コードは Apache-2.0 の下でライセンスされています。実装は NebuSec の Apache-2.0 の CyberMeowfia の成果物を出発点としており、AI Pin への移植とリリースツールについては PROVENANCE.md および THIRD_PARTY_NOTICES.md に記載されています。

脆弱性や悪用に関する懸念を報告する前に、SECURITY.md をお読みください。

ツールをダウンロード