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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2023-6241-Pixel7_Adaptation — Google Pixel 8용 CVE-2023-6241을 Google Pixel 7용으로 각색한 버전입니다. 출처: securitylab/SecurityExploits/Android/Mali/CVE_2023_6241 | Kitploit
도구/GitHubGitHub/ilgobbo00/cve-2023-6241-pixel7_adaptation
Android SecurityVulnerability AnalysisExploitationReverse EngineeringDebuggersMobile SecurityFirmware AnalysisBinary Exploitation

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
ilgobbo00/cve-2023-6241-pixel7_adaptation

CVE-2023-6241-Pixel7_Adaptation

Google Pixel 8용 CVE-2023-6241을 Google Pixel 7용으로 각색한 버전입니다. 출처: 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과 관련된 기사를 기반으로 세웠습니다. 이는 두 기기가 (하드웨어 측면에서) 서로 다른 것처럼 보이기 때문에 필요했습니다 (비교).

도구

분석을 수행하고 정보나 파일을 추출하는 데 사용된 도구는 다음과 같습니다.

  • Ghidra
  • imjtool (abootimg를 대체하기 위한 도구로, 최신 Android 이미지에서는 작동하지 않는 것으로 보였기 때문입니다)
  • vmlinux-to-elf
  • Online Assembler and Disassembler
  • Android flash tool
  • Android NDK 및 aarch64-linux-android34-clang 컴파일러

워크플로우

다음은 처음부터 목표를 달성한 방법입니다.

  1. 기기에서 개발자 옵션을 활성화합니다.

  2. 올바른 보안 패치로 기기를 플래시합니다 (이 경우 UP1A.231105.003, 2023년 11월과 UQ1A.240205.002, 2024년 2월 사이의 패치, 둘 다 포함). 가능하면 Google Chrome과 Android flash tool을 사용하고, Nexus 및 Pixel 기기용 팩토리 이미지 페이지에서 원하는 항목의 "Flash"를 클릭합니다.

    참고 1: Android flash tool을 사용하여 기기를 플래시하면 부트로더 버전과 관련된 문제를 해결하는 데 도움이 될 수 있습니다. 이러한 문제는 Nexus 및 Pixel 기기용 팩토리 이미지 페이지에서 "Link"를 클릭하여 다운로드한 압축 파일에 포함된 스크립트를 사용하여 플래시하는 동안 나타날 수 있습니다.

    참고 2: 기기를 플래시하기 전에 Android flash tool에서 "Force Flash all partition"을 선택하여 스크립트와 동일한 결과를 얻으십시오.

  3. "Link"를 클릭하여 원하는 Android 이미지를 다운로드하고, 기본 압축 파일 "panther-<release>-factory-<first 8 characters of SHA-256>.zip" 안에 있는 압축 "image-panther.zip" 파일에서 boot.img 파일을 추출합니다.

  4. ./imjtool.ELF64 boot.img extract를 실행합니다. 새 폴더 "extracted"가 생성되고 그 안에 두 개의 파일이 있습니다. 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. "Symbol table" 창을 열고 관심 있는 필드를 검색합니다 (이 경우 avc_den|sel_read_enforce$|init_cred|^commit_creds$). 결과는 대략 다음과 같아야 합니다: SymbolTable

  8. 위치 주소로 이동하여 검색된 모든 필드에 대한 "Imagebase Offset"을 얻습니다. 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입니다).
    값은 빅엔디언(big-endian)으로 표현되므로 결과 바이트를 뒤집어야 합니다.

  11. /vendor/lib64/egl/libGLES_mali.so에서 GLES_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 저장소에서 확인할 수 있습니다.

도구 다운로드