Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-65330 — Prova di concetto per un bypass del diversificatore PAC corretto nel gestore setxattr di tmpfs su iOS 26.6, che dimostra la raggiungibilità del percorso di firma vulnerabile dallo spazio utente. | Kitploit
Strumenti/GitHubGitHub/bytev0rtex/cve-2026-65330
Escalation di PrivilegiSicurezza iOSAnalisi delle VulnerabilitàExploitReverse EngineeringSicurezza MobileBinary Exploitation
GitHubbytev0rtex/cve-2026-65330

CVE-2026-65330

Prova di concetto per un bypass del diversificatore PAC corretto nel gestore setxattr di tmpfs su iOS 26.6, che dimostra la raggiungibilità del percorso di firma vulnerabile dallo spazio utente.

Vedi Repository
19h 41m faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-65330 — Bypass PAC in tmpfs setxattr

Componente: XNU VFS — default_setxattr_doubleagent (VNOP tmpfs)
Interessati: iOS / iPadOS 26.6 (23G71) e versioni precedenti
Corretto in: iOS / iPadOS 26.6.1 (23G83)
Tipo: Diversificatore PAC fisso nella firma del puntatore del gestore xattr
Impatto: Controllo del PC dal contesto del kernel; escalation completa dei privilegi se combinato con una primitiva di scrittura nel kernel


Crediti

Scoperto da: Bhaswanth Chigurupati, Billy Jheng Bing Jhong, Pan Zhenpeng (@Peterpan0927) di STAR Labs SG Pte. Ltd.
(secondo Apple Security Advisory — iOS 26.6.1)


Causa principale

default_setxattr_doubleagent, il gestore VNOP xattr per il filesystem tmpfs, firma il puntatore a funzione del gestore xattr utilizzando un diversificatore PAC fisso, costante in fase di compilazione: #0x307a.

root@kitploit:~
; kernel XNU — default_setxattr_doubleagent (decompilato)
handler_ptr = vnode_operations[VNOP_SETXATTR_SLOT];   // letto dalla tabella vnop
signed_ptr  = PACDA(handler_ptr, 0x307a);             // firma con diversificatore FISSO
... call AUTDA(signed_ptr, 0x307a) → BLR             // autentica e salta

Poiché il diversificatore è fisso e pubblicamente noto, un attaccante con una primitiva di scrittura nel kernel può:

  1. Creare un puntatore firmato PAC verso un indirizzo arbitrario del kernel:
    forged = PACIA(shellcode_addr, 0x307a)
  2. Scrivere forged nello slot appropriato della tabella vnode_operations del vnode di destinazione.
  3. Chiamare setxattr() su qualsiasi file nel mount tmpfs → il kernel esegue shellcode_addr.

Ruolo nella catena di exploit

Nella catena di escalation dei privilegi del kernel iOS 26.6:

root@kitploit:~
CVE-2026-64788 (IOGPUFamily UAF)  →  primitiva r/w nel kernel
CVE-2026-65330 (questo bug)       →  controllo del PC → root (uid=0)

La primitiva sign_ptr (PACIA con diversificatore #0x307a) è implementata nel POC del jailbreak utilizzando assembly ARM64e inline. La primitiva di lettura/scrittura nel kernel viene utilizzata per:

  1. Individuare il puntatore v_op del vnode di destinazione.
  2. Scrivere il puntatore PAC contraffatto in vnode_operations[VNOP_SETXATTR_SLOT].
  3. Attivare l'esecuzione tramite setxattr("/tmp/trigger", ...).

Comportamento del PoC

Il PoC autonomo (poc_pac_bypass.c) esercita il percorso VNOP vulnerabile:

  • Crea un file di test in /var/root/poc65330_test
  • Chiama setxattr() con XATTR_NAME="com.apple.poc.cve65330.test" → raggiunge default_setxattr_doubleagent
  • Esegue un passaggio di stress di 10 iterazioni per confermare che il VNOP viene esercitato ripetutamente
  • Chiama removexattr() per raggiungere il percorso di pulizia
  • Elimina il file di test

Il PoC non crea un puntatore PAC contraffatto né sovrascrive dati del kernel — dimostra solo che il percorso di firma vulnerabile #0x307a è raggiungibile dallo spazio utente tramite una normale chiamata di sistema setxattr().


Requisiti

  • iOS 26.6 (23G71) o versioni precedenti
  • Jailbroken o fuori sandbox per la creazione di file in /var/root/ (la chiamata setxattr stessa è raggiungibile da qualsiasi processo — il percorso del file può essere modificato in una posizione scrivibile dalla sandbox)
  • Primitiva di scrittura nel kernel richiesta per lo sfruttamento completo del controllo del PC

Compilazione

root@kitploit:~
# Binario C autonomo (nessun framework richiesto)
clang -arch arm64 -o poc poc/poc_pac_bypass.c

# Per dispositivo (con firma):
clang -arch arm64 -isysroot $(xcrun --sdk iphoneos --show-sdk-path) \
      -o poc poc/poc_pac_bypass.c
codesign -s "Apple Development" poc

Verifica del diversificatore

Il diversificatore fisso 0x307a è stato verificato dal disassemblaggio del kernelcache 26.6 (23G71):

root@kitploit:~
; default_setxattr_doubleagent + 0x?? (approssimativo)
MOVZ  x1, #0x307a          ; costante diversificatore
PACDA x0, x1               ; firma puntatore gestore

Il corrispondente AUTDA x0, x1 nel punto di chiamata utilizza la stessa costante, confermando che qualsiasi puntatore contraffatto PACIA con diversificatore 0x307a viene autenticato correttamente.


Cronologia

DataEvento
2026-08-17iOS 26.6.1 rilasciato con la correzione
2026-08-17Crediti Apple pubblicati nell'advisory di sicurezza

Riferimenti

  • Apple Security Advisory — iOS 26.6.1
Scarica lo strumento