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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
badspin — Bad Spin: Android Binder 権限昇格エクスプロイト (CVE-2022-20421) | Kitploit
ツール/GitHubGitHub/0xkol/badspin
Androidセキュリティ特権昇格脆弱性分析エクスプロイトバイナリエクスプロイト
GitHub0xkol/badspin

badspin

Bad Spin: Android Binder 権限昇格エクスプロイト (CVE-2022-20421)

リポジトリを見る
289503年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

Bad Spin: Android Binder LPE

著者: Moshe Kol

unstrusted_app からの権限昇格エクスプロイト。Android Binder の脆弱性 (CVE-2022-20421) に対するものです。この脆弱性は、2022年10月のAndroidセキュリティアップデートで修正されています。このエクスプロイトは、カーネルバージョン5.4.xおよび5.10.xを搭載したデバイスで動作し、完全なカーネルR/Wプリミティブを実現します。Google Pixel 6では、完全なroot権限とSELinuxバイパスも取得します。

詳細な解説はこちらからご覧いただけます。

シェルから実行

  1. src/ ディレクトリで make push と入力して libbadspin.so ライブラリをコンパイルします。これにより、ライブラリが /data/local/tmp にプッシュされます。
  2. adb shell を実行します。
  3. LD_PRELOAD=/data/local/tmp/libbadspin.so sleep 1 を実行します。これによりライブラリがロードされ、エクスプロイトが開始されます。

デモアプリから実行

  1. src/ ディレクトリで make push と入力して libbadspin.so をコンパイルします。これにより、デモAndroidアプリ用の assets ディレクトリにライブラリがコピーされます。
  2. app/ ディレクトリ内のデモAndroidアプリをコンパイルします。(これにはAndroid Studioが必要な場合があります。)
  3. アプリを実行し、「Exploit」ボタンをクリックします。
  4. 次のコマンドでログを確認します: adb logcat -s BADSPIN

コンパイルオプション

make に以下の変数を渡すことができます:

  • VERBOSE=1: 詳細出力を有効にします。
  • TEST_VULN=1: エクスプロイトを実行せずに脆弱性をテストします。

テスト済みデバイス

root@kitploit:~
$ make list
0: Samsung Galaxy S22, Android 12 (6/2022), kernel 5.10.81
1: Samsung Galaxy S21 Ultra, Android 12 (3/2022), kernel 5.4.129
2: Google Pixel 6, Android 12 (5/2022), kernel 5.10.66
3: Google Pixel 6, Android 13 (9/2022), kernel 5.10.107

新しいデバイスのサポート

エクスプロイトを適応させて新しいデバイスをサポートするのは難しくありません。

  1. 新しいデバイスがカーネルバージョン5.4.xまたは5.10.xを実行しており、Androidのセキュリティパッチレベルが2022年10月より前であることを確認してください。

  2. dev_config.h にデバイスのプロパティを追加します。

  3. 2つの関数ポインタを指定します:

    • kimg_to_lm(): カーネルイメージの仮想ポインタを線形マッピングに変換します。
    • find_kbase(): リークした anon_pipe_buf_ops ポインタからカーネルベースアドレスを見つけます。

    これには既に提供されている関数を使用できます。(ベンダーがSamsungではなく、不明な場合はPixel 6と同じ関数を使用してください。)

  4. コンパイルして実行します。

動作した場合は、プルリクエストを送信してください。

既知の問題

  • 失敗した試行では電話がクラッシュする可能性があります。
  • エクスプロイトは起動後数分間は不安定です。
  • カーネルバージョン5.4.xおよび5.10.xでのみ動作します。
  • 非PixelデバイスではカーネルR/Wのみを実現します。
ツールをダウンロード