
investigación sobre la búsqueda del bug y la corrección de CVE-2026-84616 y CVE-2026-84607
[!IMPORTANT] Este repositorio cuenta con asistencia de investigación por agentes de IA
[!NOTE]
Investigación Abierta
Las contribuciones son bienvenidas
Aviso de iOS 27.0 149034, componente AVEVideoEncoder: "Una app en sandbox podría ejecutar código arbitrario con privilegios de kernel" — "una condición de carrera fue abordada con una gestión de estado mejorada." Este análisis: dónde reside la corrección y qué hace.
Respuesta: una nueva guarda de consistencia de estado por fotograma en com.apple.driver.AppleAVE2 que
compara el eEncType del cliente contra el sEnc.eType de la sesión y
en caso de discrepancia. El campo verificado es escrito por una cadena sin bloqueos — corrección por validación, no por bloqueo.
La corrección no llegó en el GM. Llegó en el paso beta 2 → beta 4 del ciclo de iOS 27.0:
| paso | qué cambió |
|---|---|
b8 → GM 24A435 | solo BTI (el crecimiento de __text en +0x2168 = 2148 nuevas instrucciones bti; −40 bytes funcionales) |
| b1 → GM | +7463 instrucciones de código real — el ciclo beta hizo el trabajo |
| b2 → b4 | el paso de corrección: +68 cadenas nuevas = barrido de endurecimiento de memoria del kernel + la nueva verificación de estado |
| b4 → b5 | solo trabajo de la funcionalidad MCTF |
0xfffffff008734d14 ldr w8, [x22, #0x58] ; client eEncType
0xfffffff008734d18 ldr w9, [x19, #0x270] ; session sEnc.eType
0xfffffff008734d1c cmp w8, w9 ; the new state-consistency guard
0xfffffff008734d20 b.ne → divert ; mismatch NEVER reaches frame processing
EncType mismatch with session — ausente en beta 2, presente desde beta 4 en adelante.sub_fffffff008733654.0xfffffff008737f98), y su cadena de escritura (2 niveles, termina en despacho indirecto) no llama
a ningún helper de bloqueo — lector y escritor viven en dominios de bloqueo diferentes.El barrido b2→b4 también añadió ~22 guardas de desbordamiento de enteros en la familia de
calculadores de tamaño de búfer AVE_CalcBufSizeOf* (área de píxeles, DPB, LRB, salida HSC/MCTF, …):
ave.videoencoder / AppleVideoEncoder.bundle del espacio de usuario no fue diferenciado a lo largo
de la ventana (las copias previas a la corrección viven en las cachés compartidas de dyld de las betas).[!NOTE]
Descargo de responsabilidad
Todas las afirmaciones citan artefactos verificables; vuelva a verificar antes de confiar en cualquiera de ellas. No se incluye código de exploit. La corrección se ha distribuido en iOS 27.0 (24A435) — este repositorio documenta código ya parcheado. usar solo con fines educativos. Sin código de exploit.