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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2023-6241-Pixel7_Adaptation — Google Pixel 8 から Google Pixel 7 への CVE-2023-6241 の適応(securitylab/SecurityExploits/Android/Mali/CVE_2023_6241 より) | Kitploit
ツール/GitHubGitHub/ilgobbo00/cve-2023-6241-pixel7_adaptation
Androidセキュリティ脆弱性分析エクスプロイトリバースエンジニアリングデバッガモバイルセキュリティファームウェア解析バイナリエクスプロイト

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
GitHub
ilgobbo00/cve-2023-6241-pixel7_adaptation

CVE-2023-6241-Pixel7_Adaptation

Google Pixel 8 から Google Pixel 7 への CVE-2023-6241 の適応(securitylab/SecurityExploits/Android/Mali/CVE_2023_6241 より)

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

Google Pixel 7 向け CVE-2023-6241

このリポジトリでは、securitylab が GitHub リポジトリ で公開した、Google Pixel 8 用のエクスプロイトを Google Pixel 7 に適合させる方法を説明します。

エクスプロイトの修正を開始する前に、元のエクスプロイトが必要なパッチを適用すれば Google Pixel 7 デバイスでも動作するという仮定を、CVE-2023-6241 に関連する 記事 に基づいて立てました。これは、2つのデバイスが(ハードウェア的に)異なっているように見えるため必要でした(比較)。

ツール

以下は、分析と情報・ファイルの抽出に使用したツールです。

  • Ghidra
  • imjtool (abootimg の代わりとして使用。新しい Android イメージでは動作しないようだったため)
  • vmlinux-to-elf
  • オンラインアセンブラと逆アセンブラ
  • Android フラッシュツール
  • Android NDK と aarch64-linux-android34-clang コンパイラ

ワークフロー

以下は、最初から目標を達成するまでの手順です。

  1. デバイスの開発者オプションを有効にします。

  2. 適切なセキュリティパッチ(この場合は、UP1A.231105.003, Nov 2023 から UQ1A.240205.002, Feb 2024 までの両方を含む)でデバイスをフラッシュします。可能であれば、Google Chrome と Android フラッシュツール を使用し、Factory Images for Nexus and Pixel Devices ページの該当エントリの "Flash" をクリックします。

    注1: Android フラッシュツールを使用してデバイスをフラッシュすると、ブートローダーのバージョンに関連する問題を解決できる場合があります。これらの問題は、Factory Images for Nexus and Pixel Devices ページの "Link" をクリックしてダウンロードした圧縮ファイルに付属するスクリプトを使用したフラッシュ操作中に発生する可能性があります。

    注2: デバイスをフラッシュする前に、Android フラッシュツールで "Force Flash all partition" をチェックして、スクリプトと同じ結果を得てください。

  3. 「Link」をクリックして目的の Android イメージをダウンロードし、メインの圧縮ファイル「panther-<release>-factory-<SHA-256の最初の8文字>.zip」内にある圧縮ファイル「image-panther.zip」から boot.img ファイルを抽出します。

  4. ./imjtool.ELF64 boot.img extract を実行します。新しいフォルダ「extracted」が作成され、中に2つのファイルが含まれます。 imjtool-output

  5. vmlinux-to-elf ./extracted/kernel.decompressed <filename>.elf を実行します(以降、<filename>.elf は Pixel7-kernel.elf とします)。指定された名前の新しいファイルが作成されます。 vmlinux-to-elf-output

  6. Ghidra で "Pixel7-kernel.elf" を開きます。自動解析は時間がかかるため実行する必要はなく、情報は依然として抽出可能です。

  7. 「シンボルテーブル」ウィンドウを開き、対象のフィールド(この場合は avc_den|sel_read_enforce$|init_cred|^commit_creds$)を検索します。結果は次のようになります。 SymbolTable

  8. 場所のアドレスに移動し、検索したすべてのフィールドの「イメージベースオフセット」を取得します。 imagebase-offset

  9. 見つかった内容に従って、エクスプロイト内のすべてのオフセットを設定します。
    set-offset.png

  10. Online Assembler and Disassembler を使用して、それぞれ add x8, x8, #0xXXX と add x0, x0, #0xYYY の操作の HEX 値を見つけることにより、ADD_COMMIT_2311 と ADD_INIT_2311 の値を計算します。 XXX と YYY の値を見つけるには、COMMIT_CREDS_2311 と ADD_INIT_2311 からそれぞれ下位12ビットをコピーすれば十分です(例: ADD_COMMIT_2311 が 0x17f0c8 の場合、add x8, x8, #0x0c8 の HEX コードは 0x91032108 になります)。
    注: 値はビッグエンディアンで表現されるため、結果のバイトを反転する必要があります。

  11. GLES_mali.so を /vendor/lib64/egl/libGLES_mali.so からコピーし(つまり adb pull /vendor/lib64/egl/libGLES_mali.so)、すべてを /home/gobbo/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android34-clang -g -DSHELL -DCL_TARGET_OPENCL_VERSION=300 -I. -L. mali_jit_csf.c mem_read_write.c mempool_utils.c -lGLES_mali -o mali_jit_csf でコンパイルします。
    注: タイミングを一致させるために、エクスプロイトで使用された OpenCL ライブラリのバージョンは、脆弱性を修正したセキュリティパッチの前に利用可能な最新のもの(つまり バージョン 2023.04.17)でした。

  12. エクスプロイトをアップロードして実行します

    root@kitploit:~
    adb push ./mali_jit_csf /data/local/tmp 
    export LD_LIBRARY_PATH=/vendor/lib64/egl
    ./data/local/tmp/mali_jit_csf
    

詳細については、冒頭で述べた GitHub の記事と GitHub リポジトリを参照してください。

ツールをダウンロード