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
IOHIDFamily-PoC-Research — CVE-2026-28992 PoC per race condition in IOHIDFamily FastPathUserClient — ricerca sulla sicurezza | Kitploit
Strumenti/GitHubGitHub/clogan9019-dotcom/iohidfamily-poc-research
Sicurezza iOSAnalisi delle VulnerabilitàExploitSicurezza MobilePaper e RicercaApprendimento e FormazioneBinary Exploitation
GitHubclogan9019-dotcom/iohidfamily-poc-research

IOHIDFamily-PoC-Research

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 →

CVE-2026-28992 PoC per race condition in IOHIDFamily FastPathUserClient — ricerca sulla sicurezza

Vedi Repository
32 mesi faNon ancora revisionato
Condividi

CVE-2026-28992 — PoC per FastPathUserClient di IOHIDFamily

Repository di ricerca sulla sicurezza. Due app PoC che dimostrano le race condition in IOHIDFamily's FastPathUserClient su iOS 18.7.1 e versioni precedenti.

⚠️ Entrambi i PoC causeranno un kernel panic e il riavvio del dispositivo. Salva prima il tuo lavoro.


Riepilogo della vulnerabilità

CampoDettaglio
CVECVE-2026-28992
ComponenteIOHIDFamily — IOHIDEventServiceFastPathUserClient
TipoCorruzione della memoria (race condition / UAF)
Raggiungibile daSandbox normale delle app, zero entitlements richiesti
Corretto iniOS 18.7.9 / iOS 26.5
RicercatoreJohnny Franks (@zeroxjf)

Causa principale

sel0 (open/gate) verifica FastPathHasEntitlement e FastPathMotionEventEntitlement nell'OSDictionary fornito dal chiamante anziché nei flag di entitlement memorizzati durante initWithTask. Un'app in sandbox supera il gate includendo quelle chiavi nel proprio dict di input.

Da qui derivano due vettori:


UAFPoc — Use-After-Free

UAFPoc/UAFPoc.xcodeproj

Race: close (sel1) elimina lo stato del provider e azzera l'offset +0x109 senza lock. copyEvent (sel2) controlla l'offset +0x108 sotto un lock per-connessione, quindi chiama il provider. Con più connessioni allo stesso provider, close e copyEvent vengono eseguiti in domini di locking differenti sugli stessi oggetti condivisi lato provider.

Tipo di crash:

  • A17+ (MTE): fault di controllo tag MTE del kernel
  • Pre-A17: data abort del kernel

AOPPanicPoc — Watchdog del coprocessore AOP

AOPPanicPoc/AOPPanicPoc.xcodeproj

Race: mach_port_destroy innesca didTerminate → teardown asincrono, non sincronizzato con i percorsi sel0 open concorrenti su altre connessioni. Il teardown libera lo stato esposto al provider mentre i thread opener lo iterano. Satura inoltre la mailbox dei provider basati su SPU → timeout del watchdog AOP.


Come compilare e sideloadare

Requisiti

  • macOS con Xcode 15+
  • Account Apple Developer (il tier gratuito funziona per il sideload)
  • iPhone 16e su iOS 18.7.1 (o qualsiasi dispositivo iOS 15.0–18.7.8 / 26.0–26.4.x)

Passaggi

root@kitploit:~
git clone https://github.com/clogan9019-dotcom/IOHIDFamily-PoC-Research.git
cd IOHIDFamily-PoC-Research

Variante UAF:

  1. Apri UAFPoc/UAFPoc.xcodeproj in Xcode
  2. Seleziona il tuo dispositivo nella barra superiore
  3. Imposta il tuo Team in Signing & Capabilities (il tuo Apple ID va bene)
  4. Product → Run (⌘R) — Xcode lo installerà e lo avvierà direttamente

Variante AOP:

  1. Apri AOPPanicPoc/AOPPanicPoc.xcodeproj in Xcode
  2. Stessi passaggi per la firma
  3. Product → Run (⌘R)

Ottenere il log del panic

Dopo che il dispositivo si riavvia:

  1. Collega al Mac
  2. Apri Xcode → Window → Devices and Simulators → View Device Logs
  3. Trova il log Panic più recente (file .ips)
  4. Salvalo in panic-logs/ e committalo per l'analisi

In alternativa tramite Terminale:

root@kitploit:~
# Dopo il riavvio, estrai il log
idevicecrashreport -u <UDID> ./panic-logs/

Cosa cercare nel log del panic

Su A18 (iPhone 16e) dovresti vedere uno dei seguenti:

  • MTE tag check fault — la variante UAF che libera e rialloca un oggetto heap con tag
  • AOP watchdog timeout — la variante AOP che satura la mailbox SPU

Campi chiave da annotare:

root@kitploit:~
Kernel version:      Darwin Kernel Version ...
Hardware Model:      iPhone17,5
panic(cpu N ...):    <la stringa di panic effettiva>
Backtrace:
  ... IOHIDEventServiceFastPathUserClient ...

I nomi delle funzioni nel backtrace indicano esattamente quale percorso di codice ha innescato il problema.


Cronologia della divulgazione

DataEvento
SconosciutaBug scoperto da Johnny Franks (@zeroxjf)
11 maggio 2026Corretto in iOS 18.7.9 / iOS 26.5
21 giugno 2026Codice PoC pubblico rilasciato

Segnalazione ad Apple

Le varianti non corrette o i bug correlati possono essere segnalati a: https://security.apple.com/submit

Per i bug del kernel: descrivi componente, passaggi di riproduzione, tipo di crash e allega il log di panic .ips.


CVE correlati su iOS 18.7.1

CVEComponenteStato su 18.7.1
CVE-2025-43510AppleM2ScalerCSCDriver (DarkSword Stage 5)Non corretto (corretto in 18.7.2)
CVE-2026-28992IOHIDFamily FastPathUserClientNon corretto (corretto in 18.7.9)
CVE-2026-43655AppleM2ScalerCSCDriver lettura OOBNon corretto e mai backportato su 18.x
CVE-2026-20687UAF del kernel → scrittura in memoria del kernelNon corretto (corretto in 18.7.7)

Solo a scopo educativo e di divulgazione responsabile.

Scarica lo strumento