
iQOO Neo8 (PD2301, 5.10.246 GKI) CVE-2026-43499 GhostLock 적응 · 48 매크로 target.h + offsets.json + 15회 실측 log · write layer만 누락
기종: iQOO Neo8 PD2301 · 스냅드래곤 8+ Gen1 · kernel 5.10.246-gki-gb142569a7856
펌웨어: OriginOS PD2301_A_16.3.16.1.W10.V000L1
취약점: CVE-2026-43499 (GhostLock 계보, futex PI UAF)
| 경로 | 설명 |
|---|---|
targets/ | Neo8 전용 48 매크로 target.h ×2 + offsets.json |
logs/ | 15회 전체 실측 log(345행, R8 버전) |
patches/ | R7/R9 + fd_set 패치 diff + 7건 호환 정보 |
.github/workflows/ | NDK 원클릭 빌드 pipeline |
| 단계 | 상태 |
|---|---|
| kernelsnitch 충돌 감사 | ✅ 전부 적중 |
| kernel page prepare | ✅ attempt=1 |
| pselect route setup | ✅ LOCK=0x0E80 / W0=0x1180 / TASK=0x1280 |
| requeue fallback | ✅ R7 fix 15/15 데드락 없음 |
| PI write primitive | ❌ calls=0 success=0 — 5.10 fd_set에 kernel write 없음 |
| root | 미획득 |
로컬에서는 한계까지 도달함; kinser R11 set_pselect_write 또는 월홍 Neo8 R12 완전 패키지가 마지막 계층을 이어받기를 대기 중.
이 저장소의 소스 코드와 아이디어는 전부 아래 업스트림 저장소에서 비롯되었으며, 이 저장소는 Neo8 전용 적응 산출물만 수록합니다(target.h / offsets.json / 실측 log / 패치 diff). 이는 존중을 표하고 중복 반입을 피하기 위함입니다. 전체 소스 코드가 필요하면 원본 저장소로 가십시오:
| 업스트림 저장소 | 이 프로젝트에서의 역할 |
|---|---|
| JoinChang/ghostlock-oneplus (GhostLock 업스트림, 주요 payload 운반체) | ghostlock 소스 로직 본체 + run_main_route_threads / pselect route의 전 경로 실행 |
| NebuSec/CyberMeowfia | CVE-2026-43499 취약점 세부 원본 정보 + IonStack 버전 구현 노선 |
| x-spy/CVE-2026-43499-popsicle | 또 다른 CVE-2026-43499 참고 구현 (drivers/cheese 노선) |
| YuKongA/payload_extract_rs | OTA payload 파싱 pipeline (스트리밍 Range로 boot.img만 가져오는 방안의 출처) |
| martinosevilla/vmlinux-to-elf | Neo8 stock boot.img에서 kallsyms 심볼 테이블 176,599건 추출, target.h 48 매크로 값 산출용 |
| gitee.com/ytngtaoaaa/allroot | 커뮤니티 적응 절차 3단계 프레임워크 (boot 수집 → AI 빌드 → log 반복) |
kinser 《CVE-2026-43499의 iQOO Neo8 적응 분석 보고서》 (블로그 /archives/report) | R9 MM_STRUCT_SZ=0x3C0 / R10 PAGE_MM_STRUCT_SZ / R11 set_pselect_write 정보 출처 — write layer 부재의 최종 답이 여기에 있음 |
| 월홍 권한상승 도우미 (커뮤니티 기종 .so 패키지 체계, 이 프로젝트는 이를 위해 Neo8 서드파티 slot 생성) | 45개 기종 .so 패키지 명명/호출 규범 참고 · com.ghostlock.app 내장 65768B 버전 (실측상 유일하게 spawn root_child까지 도달한 버전) |
만약 당신이 위 저장소의 저자이며 이 인용이 불만족스럽거나 내려달라고 요구하신다면 Issue를 열어주십시오, 해당 산출물을 제거하겠습니다.
bin/ 바이너리 산출물| 파일 | 크기 | md5 | 설명 |
|---|---|---|---|
bin/boot.img | 96 MB | f99884a6… | Neo8 stock boot (PD2301_A_16.3.16.1.W10.V000L1, kernel 5.10.246), kallsyms 값 산출 원천 |
bin/preload.so | 91 KB | 3b84a04f… | R8 버전 preload 페이로드 (LD_PRELOAD=/data/local/tmp/preload.so /system/bin/id 트리거) |
bin/offsets.json | 0.9 KB | 12c68c1b… | GhostLock 외장 offsets (kernelsnitch 전부 적중한这份) |
boot.img 96 MB는 GitHub 권장 단일 파일 50 MB를 초과하지만, push 가능(hard limit 100 MB), 느릴 경우 양해 부탁드립니다.