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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-43499-aristotle | Kitploit
도구/GitHubGitHub/soralis0912/cve-2026-43499-aristotle
Android SecurityPrivilege EscalationExploit FrameworksVulnerability AnalysisExploitationMobile SecurityBinary Exploitation
GitHubsoralis0912/cve-2026-43499-aristotle

CVE-2026-43499-aristotle

저장소 보기
3127일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-43499 — aristotle (au/KDDI Xiaomi XIG04)

Android 12를 실행하는 **au/KDDI Xiaomi "aristotle" (XIG04)**용 로컬 권한 상승(tmp-root)으로, CVE-2026-43499를 이용합니다. 기기 소유자 루팅 프리미티브(device-owner rooting primitive)로서, 예를 들어 개발자 옵션에 접근할 수 없을 때 ADB를 다시 활성화하기 위해 자신의 휴대폰을 루팅합니다.

이 프로젝트는 업스트림 구현체의 aristotle 포트입니다: https://github.com/x-spy/CVE-2026-43499-popsicle — Xiaomi 17 / Pro / Ultra(popsicle, Snapdragon, Android 16, 커널 6.12.23)를 대상으로 합니다. 익스플로잇 기술에 대한 모든 공로는 업스트림에 있으며, 이 포크는 단지 다른 기기와 커널 세대로 대상을 변경한 것입니다.

범위: 다음 펌웨어를 실행하는 본인 소유의 XIG04 Xiaomi/XIG04_jp_kdi/XIG04:12/SP1A.210812.016/V14.0.3.0.TMFJPKD. 범용 또는 원격 익스플로잇이 아닙니다.

Target

root@kitploit:~
device  : aristotle (au/KDDI XIG04), MediaTek, Android 12
kernel  : 5.10.136-android12-9-00020-gc9f59ef34367-ab9585114  (VA=39, 4K pages, KASLR)

The bug

CVE-2026-43499는 Linux 커널 Futex-PI 경로의 use-after-free 취약점입니다: futex_requeue()의 프록시 락 롤백 중 kernel/locking/rtmutex.c의 remove_waiter()가 waiter::task 대신 current를 대상으로 동작하여 pi_blocked_on이 댕글링 상태로 남습니다. 이는 오래되고 오랜 기간 유지된 버그로, Linux 2.6.39 – 6.18.x에 영향을 주므로 여기의 5.10.136 커널도 해당 범위에 포함됩니다(CONFIG_FUTEX_PI=y, CONFIG_RT_MUTEXES=y). 이 익스플로잇은 데이터 전용 "direct-root"를 사용하여(cred → init_cred 교체, SELinux enforcing 비활성화) 기기의 강화 조치(KASAN_HW_TAGS, MTE, CFI, )를 우회하기 위해 MTE 태그를 브루트포스합니다.

What differs from upstream (popsicle → aristotle)

업스트림은 Snapdragon / Android 16 / 커널 6.12를 대상으로 하지만, aristotle은 MediaTek / Android 12 / 커널 5.10을 사용하므로, 이 포트는 기기별 요소를 모두 다시 도출합니다:

  • rt_mutex_waiter는 기존의 평면(flat) 5.10 레이아웃입니다 (중첩된 rt_waiter_node나 wake_state/ww_ctx 없음). source/src/{slide,fops}.c 및 source/src/util.c의 fake-waiter 테이블은 13 words에서 10 words로 재구성되었습니다.
  • xbl_config 없음. KASLR은 동적으로 무력화됩니다 (slide.c의 커널 정보 유출). 업스트림이 Qualcomm XBL에서 가져온 두 물리 상수는 정적 DRAM 베이스(0x40000000, 디바이스 트리에서 가져옴)와 런타임 memstart_addr / kimage_voffset으로 대체되었습니다.
  • 이 커널에는 BTF가 없으므로, 구조체 오프셋은 BTF에서 읽는 대신 디스어셈블리로 복구하여 주입합니다.
  • 모든 오프셋, RVA 및 KASLR 앵커는 이 정확한 커널에 대해 측정되었습니다 — ARISTOTLE_CVE43499_PORT.md 참조.

Generate the target header

XIG04용으로 측정된 source/src/target.h가 이미 커밋되어 있으므로 바로 빌드할 수 있습니다. 부트 이미지에서 다시 생성하려면 aristotle 생성기를 사용하세요 (--xbl-config 없이; 동적 사용을 위해 memstart_addr/kimage_voffset RVA를 출력합니다):

root@kitploit:~
python3 gen_aristotle_target.py \
  --boot boot.img \
  --pselect-shift 0 \
  --loggers 0xffffffc012771380 \
  --boot-id-data 0xffffffc012886cf8 \
  --kernel-phys-load 0x40080000 \
  -o source/src/target.h

(세 앵커와 kernel-phys-load 값은 커밋된 헤더에 포함된 값입니다. 이 값들이 어떻게 얻어졌는지는 ARISTOTLE_CVE43499_PORT.md를 참조하세요.)

Build

Python 3와 Android NDK(r29)가 필요합니다. Android 12에서 페이로드가 로드되도록 API=31이 필요합니다:

root@kitploit:~
make -C source clean preload API=31

NDK가 자동 감지되지 않으면:

root@kitploit:~
NDK_ROOT=/path/to/android-ndk make -C source clean preload API=31

최종 산출물:

root@kitploit:~
source/build/bin/preload.so

Run

root@kitploit:~
adb push source/build/bin/preload.so /data/local/tmp/preload.so
adb shell 'chmod 0644 /data/local/tmp/preload.so'
adb shell 'LD_PRELOAD=/data/local/tmp/preload.so /system/bin/true'
adb shell '/data/local/tmp/su -c id'

성공하면:

root@kitploit:~
uid=0(root) gid=0(root) groups=0(root) context=u:r:kernel:s0
direct-root-summary root=1 id=1 su=1/... selinux=1->0 uid=0 euid=0 gid=0 egid=0

preload.so는 로드될 때 자체 su 클라이언트와 데몬을 내장 및 자가 설치하므로 별도의 su 바이너리가 필요하지 않습니다.

상태: 이 포트는 정적 분석 기준으로 코드가 완성되었지만 아직 하드웨어에서 검증되지 않았습니다. 먼저 크래시 트리거를 검증한 다음, 본인 소유 기기에서 루팅하세요. 커널별 튜닝 항목(MM_ORDER, P0_KERNEL_PHYS_LOAD, 평면 waiter 동작)은 ARISTOTLE_CVE43499_PORT.md에 나열되어 있습니다.

도구 다운로드
SCS