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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-65343 — CVE-2026-65343에 대한 개념 증명(PoC)으로, iOS 26.6에서 KASLR을 무력화하기 위해 커널 포인터를 유출하는 AppleKeyStore의 경계를 벗어난 읽기(out-of-bounds read) 취약점입니다. DYLD_INTERPOSE를 통한 ACM 핸들 캡처와 AKS 셀렉터 전반에 걸친 프로브를 포함합니다. | Kitploit
도구/GitHubGitHub/bytev0rtex/cve-2026-65343
iOS SecurityVulnerability AnalysisExploitationReverse EngineeringMobile SecurityBinary Exploitation
GitHubbytev0rtex/cve-2026-65343

CVE-2026-65343

CVE-2026-65343에 대한 개념 증명(PoC)으로, iOS 26.6에서 KASLR을 무력화하기 위해 커널 포인터를 유출하는 AppleKeyStore의 경계를 벗어난 읽기(out-of-bounds read) 취약점입니다. DYLD_INTERPOSE를 통한 ACM 핸들 캡처와 AKS 셀렉터 전반에 걸친 프로브를 포함합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-65343 — AppleKeyStore OOB 읽기 (KASLR 무력화)

구성 요소: AppleKeyStore 커널 확장 — _LibSer_SEPControl_Deserialize
영향: iOS / iPadOS 26.6 (23G71) 및 이전 버전
수정 버전: iOS / iPadOS 26.6.1 (23G83)
유형: SEP 제어 메시지 역직렬화 과정의 경계를 벗어난 읽기(Out-of-Bounds read)
영향: 커널 포인터 유출 → 샌드박스 및 자격(entitlement)이 없는 프로세스에서 KASLR 무력화 (DYLD_INTERPOSE ACM 핸들 캡처 경유)


크레딧

발견자: Drinor Selmanaj (Sentry), Surya Narayan Kushwaha
(Apple 보안 권고 — iOS 26.6.1 참조)


근본 원인

AppleKeyStore 커널 확장의 _LibSer_SEPControl_Deserialize는 ACM(자격 증명 관리자) 메시지 버퍼의 (payload_ptr, declared_length) 쌍을 copyout()을 통해 사용자 공간에 게시하지만, declared_length ≤ remaining 검증을 수행하지 않습니다.

declared_length = 0x800을 지정하면 드라이버는 커널 ACM 메시지 버퍼의 끝을 넘어 약 0x7E8 바이트를 복사하여 인접한 커널 힙 할당 영역을 읽습니다. 해당 인접 영역에는 KASLR 슬라이드를 계산하는 데 사용할 수 있는 커널 포인터(0xfffffff0xxxxxxxx)가 포함되어 있습니다.

root@kitploit:~
; _LibSer_SEPControl_Deserialize (영향 경로, 26.6 / 23G71)
ldr  w2, [acm_msg + declared_length_offset]  ; 사용자 제어 0x800
; 검증 없음: w2 <= (acm_msg_end - payload_ptr) ← 누락
bl   copyout                                  ; w2 바이트를 사용자 공간으로 복사

ACM 핸들 캡처 (DYLD_INTERPOSE)

사이드로드된 앱에서는 샌드박스에 의해 직접적인 IOServiceOpen("AppleKeyStore") 호출이 차단됩니다. 그러나 Security.framework의 Secure Enclave 키 서명 경로는 실제 ACM 세션 핸들을 사용하여 프로세스 내에서 IOConnectCallMethod를 호출합니다.

PoC는 __DATA,__interpose 훅(__DATA_CONST가 읽기 전용으로 설정되기 전인 dyld 로드 시점에 실행됨 — iOS 26에서는 DATA_CONST 보호로 인해 fishhook이 차단됨)을 사용합니다:

  1. 인터포즈 캡처 플래그 설정
  2. SecKeyCreateRandomKey(kSecAttrTokenIDSecureEnclave) → SecKeyCreateSignature() → 실제 ACM 핸들로 프로세스 내 IOConnectCallMethod 호출 발생
  3. (conn, handle[16]) 캡처
  4. 163개의 AKS 셀렉터에 대해 declared_length = 0x800으로 재생
  5. 출력에서 0xfffffff0xxxxxxxx 커널 포인터 스캔 → KASLR 슬라이드 계산

PoC 동작

poc_aks_oob.m은 전체 ACM 핸들 캡처 및 OOB 프로브 체인을 구현합니다:

  • Secure Enclave P-256 키 생성 (kSecAttrAccessibleAfterFirstUnlock, 생체 인증 없음)
  • 프로세스 내 AKS IOKit 호출을 트리거하기 위해 32바이트 메시지 서명
  • 163개의 모든 AKS 셀렉터에 대해 declared_length = 0x800으로 재생
  • KPTR @+XXXX = 0xfffffff0YYYYYYYY 형식으로 발견된 커널 포인터 출력
  • 알려진 AKS 심볼 오프셋에서 KASLR 슬라이드 계산 시도

SE 키 서명이 프로세스 내 대신 secd XPC를 통해 라우팅되는 경우, 폴백 프로브는 제로 핸들을 사용합니다(OOB 경로 도달 가능성 확인; 모든 셀렉터는 ACM 검증에 실패하지만 VNOP 경로는 확인됨).


iOS 26 참고: fishhook 차단

iOS 26에서는 __DATA_CONST(GOT 포함)가 프로세스 내 코드가 실행되기 전에 읽기 전용으로 매핑됩니다. 런타임 GOT 쓰기(fishhook에서 사용하는 방식)는 KERN_PROTECTION_FAILURE → SIGBUS를 트리거합니다. __DATA,__interpose를 통한 DYLD_INTERPOSE는 dyld가 커널이 __DATA_CONST 보호를 적용하기 전인 이미지 로드 시점에 인터포즈 테이블을 처리하므로 작동합니다.


요구 사항

  • iOS 26.6 (23G71) 또는 이전 버전
  • Secure Enclave 접근 (kSecAttrTokenIDSecureEnclave) — 자격 없이도 모든 사이드로드 앱에서 사용 가능
  • 샌드박스 탈출 불필요: AKS IOKit 호출은 Security.framework를 통한 프로세스 내 호출

빌드

root@kitploit:~
# Xcode 프로젝트 — Security.framework 및 Foundation.framework 링크
clang -arch arm64 \
      -isysroot $(xcrun --sdk iphoneos --show-sdk-path) \
      -framework Security -framework Foundation \
      -o poc poc/poc_aks_oob.m

codesign -s "Apple Development" --entitlements ent.plist poc

최소 자격 (ent.plist):

root@kitploit:~
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
    "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"><dict>
    <key>keychain-access-groups</key>
    <array><string>$(AppIdentifierPrefix)com.research.poc65343</string></array>
</dict></plist>

타임라인

날짜이벤트
2026-08-17수정 사항이 포함된 iOS 26.6.1 출시
2026-08-17Apple 보안 권고에 크레딧 게시

참고 자료

  • Apple 보안 권고 — iOS 26.6.1
도구 다운로드