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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2019-2215 | Kitploit
ツール/GitHubGitHub/codecat007/cve-2019-2215
Androidセキュリティ特権昇格エクスプロイトフレームワーク脆弱性分析エクスプロイトモバイルセキュリティバイナリエクスプロイト
GitHubcodecat007/cve-2019-2215

CVE-2019-2215

リポジトリを見る
26年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2019-2215

以下の問題は、https://android.googlesource.com/kernel/msm の android-msm-wahoo-4.4-pie ブランチ(およびおそらく他のブランチ)に存在します:

/drivers/android/binder.c のバインダードライバにおける binder_thread 構造体の wait メンバーに use-after-free が存在します。

アップストリームのコミットで説明されているとおり: 「binder_poll() は、作業のためにスリープ可能な thread->wait ウェイトキューを渡します。epoll を使用するスレッドが BINDER_THREAD_EXIT を使用して明示的に終了すると、ウェイトキューは解放されますが、対応する epoll データ構造から削除されることはありません。その後プロセスが終了すると、epoll クリーンアップコードがウェイトリストにアクセスしようとし、use-after-free が発生します。」

以下の proof-of-concept は、KASAN で構築されたカーネルで UAF クラッシュを示します(最初のアップストリームバグレポート https://lore.kernel.org/lkml/[email protected]/ より): #include <fcntl.h> #include <sys/epoll.h> #include <sys/ioctl.h> #include <unistd.h>

root@kitploit:~
    #define BINDER_THREAD_EXIT 0x40046208ul

    int main()
    {
            int fd, epfd;
            struct epoll_event event = { .events = EPOLLIN };

            fd = open("/dev/binder0", O_RDONLY);
            epfd = epoll_create(1000);
            epoll_ctl(epfd, EPOLL_CTL_ADD, fd, &event);
            ioctl(fd, BINDER_THREAD_EXIT, NULL);
    }

この問題は、2017年12月に 4.14 LTS カーネル [1]、AOSP android 3.18 カーネル [2]、AOSP android 4.4 カーネル [3]、AOSP android 4.9 カーネル [4] でパッチが適用されましたが、ソースコードのレビューに基づくと、最新のセキュリティ情報が適用された Pixel 2 は依然として脆弱です。

ソースコードのレビューに基づき、脆弱であると思われる他のデバイスは以下のとおりです(特に記載がない限り 8.x リリースを指します):

  1. Android 9 および Android 10 プレビューを搭載した Pixel 2 (https://android.googlesource.com/kernel/msm/+/refs/heads/android-msm-wahoo-4.4-q-preview-6/)
  2. Huawei P20
  3. Xiaomi Redmi 5A
  4. Xiaomi Redmi Note 5
  5. Xiaomi A1
  6. Oppo A3
  7. Moto Z3
  8. Oreo 版 LG スマートフォン(ウェブサイトによると同じカーネルを実行)
  9. Samsung S7、S8、S9

このバグが実際の攻撃で使用されているという証拠があります。したがって、このバグには 7 日間の開示期限が適用されます。7 日間が経過するか、パッチが広く利用可能になった場合(いずれか早い方)、バグレポートは公開されます。

この proof-of-concept が、ビルド walleye_kasan-userdebug 10 QP1A.191105.0035899767 の Pixel 2 で動作し、KASAN クラッシュを引き起こすことを確認しました。proof of concept の C コードと new.out を添付します。KASAN コンソール出力も添付します。

私は TAG および外部関係者から、NSO グループに帰属される Android エクスプロイトに関する技術情報を受け取りました。これらの詳細には、バグとエクスプロイトの手法に関する事実が含まれており、以下を含みますが、これらに限定されません:

  • これは、Chrome サンドボックス内からアクセス可能な use-after-free 脆弱性を使用したカーネル権限昇格です。
  • このバグは、NSO グループによって使用または販売されていたとされています。
  • Pixel 1 および 2 では動作しますが、Pixel 3 および 3a では動作しません。
  • これは CVE なしで Linux カーネル >= 4.14 でパッチが適用されました。
  • CONFIG_DEBUG_LIST はプリミティブを破壊します。
  • CONFIG_ARM64_UAO はエクスプロイトを妨げます。
  • この脆弱性は、Android の 'isolated_app' SELinux ドメイン下にある Chrome のレンダラープロセスで悪用可能であり、脆弱なコンポーネントが Binder であると私たちが疑うに至りました。
  • このエクスプロイトは、デバイスごとのカスタマイズをほとんど、またはまったく必要としません。
  • 影響を受けるデバイスと影響を受けないデバイス、およびそのバージョンのリストなど。不完全なリストは、この issue の説明で入手できます。

これらの詳細を用いて、パッチを比較して他の候補を除外した結果、使用されているバグはこのレポートのものとほぼ間違いないと判断しました。このバグのより詳細な説明と、それを特定するための方法論については、時間ができ次第、今後のブログ記事で執筆する予定です。

現在、エクスプロイトのサンプルはありません。サンプルがないため、タイムラインもペイロードも確認できていません。

このバグは、脆弱なデバイスを完全に侵害できるローカル権限昇格の脆弱性です。エクスプロイトが Web 経由で配信される場合、この脆弱性はサンドボックスを介してアクセス可能であるため、レンダラーエクスプロイトと組み合わせるだけで済みます。

このバグをローカルで実行した際に任意のカーネル読み取り/書き込みを取得するために使用できることを示す、ローカルエクスプロイトの proof-of-concept を添付しました。CVE-2019-2215 を悪用するには、信頼できないアプリのコード実行のみが必要です。また、セキュリティパッチレベル 2019年9月の Android 10 (google/walleye/walleye:10/QP1A.190711.020/5800535:user/release-keys) を実行している Pixel 2 で POC が動作しているスクリーンショット (success.png) も添付しました。

Android からのベンダー声明:

この問題は Android では High 深刻度と評価されており、それ自体では悪用の可能性のために悪意のあるアプリケーションのインストールが必要です。Web ブラウザ経由などの他のベクターは、追加のエクスプロイトとの連鎖が必要です。Android パートナーには通知済みであり、パッチは Android Common Kernel で利用可能です。Pixel 3 および 3a デバイスは脆弱ではありませんが、Pixel 1 および 2 デバイスは、10月のアップデートの一部としてこの問題のアップデートを受け取ります。

ツールをダウンロード