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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
lenovo_y700_tb320fc_on_CVE-2025-21479 — Lenovo Legion Y700 2023 (TB320FC)용 인메모리 커널 권한 상승으로, Qualcomm Adreno GPU SMMU 취약점인 CVE-2025-21479를 악용하며 ReSukiSU 루트 관리 기능을 제공합니다. | Kitploit
도구/GitHubGitHub/xjoker/lenovo_y700_tb320fc_on_cve-2025-21479
Android SecurityPrivilege EscalationPersistence MechanismsExploitationMobile App PentestingPost-ExploitationMobile SecurityPayload DevelopmentBinary Exploitation

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHubxjoker/lenovo_y700_tb320fc_on_cve-2025-21479

lenovo_y700_tb320fc_on_CVE-2025-21479

Lenovo Legion Y700 2023 (TB320FC)용 인메모리 커널 권한 상승으로, Qualcomm Adreno GPU SMMU 취약점인 CVE-2025-21479를 악용하며 ReSukiSU 루트 관리 기능을 제공합니다.

저장소 보기
13시간 37분 전아직 검토되지 않음

TB320FC 커널 루트 — CVE-2025-21479

English | 简体中文

**Lenovo Legion Y700 2023 (TB320FC)**를 위한 인메모리 커널 권한 상승으로, CVE-2025-21479(Qualcomm Adreno GPU SMMU 취약점)를 익스플로잇하며, ReSukiSU가 완전한 루트 관리를 제공합니다.

활성화에 부트로더 언락 불필요. 플래싱 불필요. PC 불필요.

⚠️ 본인이 소유한 기기에서의 승인된 보안 연구용입니다. 면책 조항을 참조하세요.


대상 기기

이 프로젝트의 모든 오프셋과 동작은 다음 기기에 맞춰 조정되었습니다. 재조정 없이 다른 모델/ROM에서 작동할 것이라 기대하지 마세요 (exploit/device_info.txt 참조).

모델Lenovo Legion Y700 2023 (TB320FC) / TB320FC_PRC
SoCQualcomm SM8475 (Snapdragon 8+ Gen 1, Adreno 730)
시스템ZUXOS 1.1.350 / Android 15 (SDK 35)
빌드AQ3A.240812.002 (TB320FC_CN_OPEN_USER_Q00031.0_V_ZUXOS_1.1.350_ST_250418)
커널5.10.209-android12-9-gef44381c3e04-ab50
보안 패치2025-03-05
부트로더잠김 (이 프로젝트는 언락하지 않음)

2026-09 기준 위 펌웨어에서 작동이 검증되었습니다.

기능

스크린샷

RootActivator (활성화됨)ReSukiSU (작동 중, 모듈 2개)
RootActivatorReSukiSU

왼쪽: 성공적으로 활성화된 후의 RootActivator — SELinux Enforcing, kernelsu 로드됨, su 사용 가능. 오른쪽: ReSukiSU 매니저 — 모듈 2개(NeoZygisk + Vector)와 함께 LKM 모드 작동 중.

작동 방식

root@kitploit:~
RootActivator APK
   │
   ├─ libcheese.so ── KGSL SMMU 익스플로잇 (CVE-2025-21479)
   │     1. Adreno 730 마이크로코드 접근 검사 결함 (SDS 패킷이 RingBuffer로 오인됨)
   │     2. 가짜 CP_SMMU_TABLE_UPDATE가 GPU TTBR0를 덮어씀 → 임의 물리적 R/W
   │     3. selinux_state.enforcing을 0으로 설정; 고정 PA 0xA8000000에서 커널 덤프,
   │        원시 이미지에서 kallsyms 파싱 (SM8475에는 물리적 KASLR 없음)
   │     4. __do_sys_capset을 권한 상승 셸코드로 패치
   │        (prepare_kernel_cred(0) + commit_creds + TIF_SECCOMP 클리어);
   │        포크된 자식이 capset() 호출 → uid 0 + 전체 caps
   │
   └─ libksud.so (ReSukiSU) ── late-load 모드
         1. kernelsu.ko가 ksud의 내장 에셋에서 수동 재배치와 함께 로드됨
            (커널 심볼 익스포트에 의존하지 않음)
         2. install → /data/adb/ksu (ksud/busybox/bootctl)
         3. su 채널 온라인: /system/bin/su → 커널 훅 리다이렉트 → u:r:ksu:s0
         4. setenforce 1 — Enforcing 복원, 정책 규칙은 이미 ko에 의해 주입됨

주목할 만한 엔지니어링 포인트

  • Qualcomm GKI는 커널 심볼 익스포트를 제거합니다. 업스트림 KernelSU가 요구하는 77개 심볼이 누락되어 있어, 단순한 insmod kernelsu.ko는 실패합니다. ReSukiSU의 late-load는 심볼을 스스로 해결하여 정상적으로 로드됩니다.
  • cheese의 CPU 친화도 수정. 여러 코어가 있는 경우, 패치된 커널 텍스트가 다른 코어에서 오래된 명령어로 실행될 수 있어(I-cache 일관성) 패닉이 발생합니다. 프로세스를 단일 코어에 고정하면 익스플로잇이 훨씬 안정적입니다.
  • 로드 민감도. 부팅 후 초기화 폭풍(5-10분) 동안 실패율이 상당히 높습니다. docs/TROUBLESHOOTING.md를 참조하세요.

빠른 시작

1. RootActivator 받기

소스에서 빌드하거나(빌딩 참조) GitHub Releases 페이지에서 APK를 받으세요(저장소에는 저장되지 않음).

2. ReSukiSU 매니저 설치

ReSukiSU Releases에서 다운로드하여 매니저 APK를 설치하세요.

3. 활성화

  1. 부팅 후 5-10분 대기 (도구가 시스템 부하를 자동 감지하고 필요 시 대기함)
  2. RootActivator 열기 → Activate Root 탭
  3. 3-4분 대기 (진행 상황은 내장 로그에 표시됨)
  4. 완료되면 ReSukiSU 매니저를 열고 앱(Shizuku, 터미널, ...)에 루트 권한 부여

4. (선택) Xposed 모듈 지원

  1. NeoZygisk 설치 (ReSukiSU 매니저 → 모듈 → 저장소에서 설치)
  2. Vector 설치 (Xposed 프레임워크)
  3. 루트가 활성화된 후 기기에서 인젝터 시작 (활성화는 이를 수행하지 않음):
    root@kitploit:~
    su -c 'sh /data/adb/modules/zygisksu/post-fs-data.sh'
    
  4. 자세한 내용은 docs/VECTOR.md

저장소 구조

root@kitploit:~
├── LICENSE / CHANGELOG.md
├── README.md / README.zh-CN.md
├── exploit/            cheese 익스플로잇 (CVE-2025-21479, TB320FC로 포팅됨)
│   ├── source/         cheese.c / kallsyms_lookup.c / adrenaline.h
│   ├── device_info.txt 대상 기기 매개변수 (오프셋, 검증된 사실)
│   └── build.sh        빌드 스크립트 (Android NDK 필요)
├── app/                RootActivator (Kotlin, 수동 빌드, Gradle 없음)
│   ├── src/            MainActivity.kt (단일 파일, 코드 전용 UI)
│   ├── res/            런처 아이콘 (mipmap-xxxhdpi)
│   ├── AndroidManifest.xml
│   ├── debug.keystore  공개 APK에서 사용되는 디버그 서명 키
│   ├── build.py        빌드 스크립트 (kotlinc + d8 + aapt2 + apksigner)
│   └── README.md       앱 문서
├── tools/              헬퍼 스크립트
│   ├── fetch_assets.py         호스트: 네이티브 에셋 준비 (exploit + ksud)
│   ├── neozygisk_setup.sh      온디바이스: NeoZygisk + Vector (VECTOR.md 참조)
│   ├── status_check.sh         온디바이스: 루트 / 모듈 스냅샷
│   └── check_mods.sh           온디바이스: 모듈 검사 헬퍼
├── docs/               문서 (영어)
│   ├── ARCHITECTURE.md         두 체인에 대한 심층 분석
│   ├── TROUBLESHOOTING.md      실패 처리, 성공률 데이터
│   └── VECTOR.md               Xposed (NeoZygisk + Vector) 설정
└── screenshots/        온디바이스 PNG 증거

빌딩

exploit (Android NDK)

root@kitploit:~
cd exploit
NDK=/path/to/android-ndk ./build.sh
# Produces ./cheese (arm64) → used as app/native/libcheese.so

RootActivator APK

root@kitploit:~
cd app
python ../tools/fetch_assets.py    # prepare native assets
python build.py                    # requires kotlinc + Android build-tools
# Produces RootActivator.apk

빌드에서 허용되는 환경 변수(자세한 내용은 app/build.py 참조): KOTLIN_HOME, ANDROID_BUILD_TOOLS, ANDROID_JAR, KEYSTORE, JAVA_HOME. fetch_assets.py는 추가로 libksud.so를 추출하기 위해 RESUKISU_APK(ReSukiSU arm64 APK 경로)가 필요합니다.

제한 사항

  • 재부팅마다 재활성화 필요 (인메모리 접근 방식, 아무것도 지속되지 않음)
  • 약 20-40% 활성화 실패율 (익스플로잇 고유의 특성; 실패 시 데이터 손실 없이 기기가 재부팅됨 — 다시 시도하면 됨)
  • adb root 사용 불가 (adbd cannot run as root in production builds)
  • Xposed는 NeoZygisk가 필요함; 절대 ksud soft-reboot를 사용하지 마세요 — 시스템이 멈춥니다 (대신 NeoZygisk의 ptrace 주입 사용)

면책 조항

이 프로젝트는 보안 연구 및 교육 목적으로만 제공되며, 본인이 소유하거나 테스트가 명시적으로 승인된 기기에서만 사용해야 합니다. 모든 결과와 법적 영향에 대한 책임은 전적으로 사용자에게 있습니다. 익스플로잇은 기기를 재부팅할 수 있으며, 드물게 데이터 손실이 발생할 수 있습니다 — 먼저 중요한 데이터를 백업하세요.

크레딧

  • zhuowei/cheese — 원본 CVE-2025-21479 익스플로잇 (Zhuowei Zhang)
  • ReSukiSU — late-load 모드를 갖춘 KernelSU 포크
  • NeoZygisk — ptrace zygote 주입
  • Vector — Xposed 프레임워크
  • hawkes — adrenaline.h (KGSL 명령 정의)

라이선스

MIT

도구 다운로드
기능구현
권한 상승cheese 익스플로잇: KGSL SMMU 버그 → GPU 임의 물리적 R/W → 인메모리 루트 (uid 0 + 전체 caps)
루트 관리ReSukiSU (KernelSU 포크)가 late-load 모드로 kernelsu.ko를 로드; su는 커널 내 훅(u:r:ksu:s0)이 제공
SELinux활성화 후 Enforcing으로 복원 (ReSukiSU 정책 규칙은 계속 적용됨)
원탭 UX익스플로잇 + ksud가 내장된 RootActivator APK; 부팅 후 한 번 탭
Xposed 모듈NeoZygisk (ptrace zygote 주입) + Vector를 통해 지원
지속성설계상 없음 (인메모리): 재부팅마다 재활성화 필요 (~3-4분)