
Investigación personal sobre la arquitectura de Xbox Series
| Campo | Valor |
|---|---|
| Fecha | 9-12 de marzo de 2026 + 7-? de julio de 2026 |
| Hardware | Xbox Series S (Nombre en clave: Lockhart) |
| Compilación del SO | 26100.7010.amd64fre.xb_flt_2602ge.260212-1010 + 26100.8561.amd64fre.xb_flt_2606ge.260609-2200 |
| Método de acceso | Modo desarrollador + SSH + API REST + unión de recurso compartido NTFS |
Este informe es un análisis estático y dinámico de la arquitectura interna de la Xbox Series S, realizado íntegramente a través de la infraestructura oficial de modo desarrollador de Microsoft. No se utilizaron exploits ni se violaron políticas; todo el acceso se mantuvo dentro de los límites del programa de desarrollador individual.
Contiene detalles desde los componentes de más alto nivel utilizados para el juego, hasta los componentes de controladores de sistema de más bajo nivel. Se espera que la mayoría de estos detalles sean los mismos también para Xbox One.
Se utilizó IA para formatear de manera consistente la gran investigación inicial (más de 200 salidas de análisis y más de 50 notas aleatorias) muy rápidamente. Todas las ediciones futuras se hacen a mano.
Si crees que algún punto de esto es poco claro, está poco documentado o es falso, no dudes en escribirme por DM, o si tienes respuestas a mis preguntas (en la Sección 12), también sería genial. Los GUID y otros patrones comunes se redactan en un hook de pre-commit por si acaso dejo algo que identifique mi cuenta.
Gran parte de lo que estoy trabajando son suposiciones, por lo que podría ser inexacto y cambiará a medida que obtenga más información y examine más binarios.
Por razones que puedes suponer, bajo ninguna circunstancia compartiré binarios directos, salidas de desensamblado ni nada que se considere propiedad intelectual de Microsoft o sus subsidiarias.
ERA = Partición GameOS
SRA = Partición SystemOS
HT = Kinect (¿posiblemente "Human Tracking"?)
Arden = Pila de GPU de Xbox Series X/S
NewBe = Compilador de shaders de Arden
Existe una gestión de controladores por parte del Host OS fuera del modelo conocido SRA/ERA; ver modelo de confianza (Secciones 4.2, 17.5). XVIO.SYS y XSraFlt.sys son cargados directamente por el hipervisor (a través de HostOS) antes de que Windows se inicialice y están ausentes de todos los volúmenes accesibles. No pueden ser alterados ni siquiera con acceso total al kernel, lo cual constituye el límite de seguridad principal.
HVCI está deliberadamente deshabilitado (Sección 18). IsSecureKernelRunning = 0x0 confirma que el Kernel Seguro (VTL1) no está en ejecución. La integridad del código es solo en tiempo de carga, dejando una ventana TOCTOU una vez que los binarios se mapean. Esto es una compensación deliberada de rendimiento; el límite de seguridad es la partición del hipervisor, no la protección de memoria dentro de la partición.
La unión NTFS expone el sistema de archivos completo de SystemOS a través de la red (Sección 1.2). Un único comando mklink /J desde el shell SSH asigna C:\ o cualquier otra cosa al recurso compartido de archivos de Device Portal, haciendo que cada binario del sistema sea legible remotamente sin autenticación adicional más allá del PIN de modo desarrollador.
La arquitectura entre particiones está casi completamente mapeada (Secciones 4, 14, 26-28). La partición de juego ERA se comunica con SystemOS exclusivamente a través de canales mediados por el hipervisor: búferes de anillo XVIO para E/S, traducción de GPA para memoria compartida, HvSocket para IPC y secciones de puerto ALPC para la entrega de framebuffer de copia cero otorgada por un "Host OS" padre.
La unión Deploy:\ sortea las restricciones de acceso local (Sección 25). El volumen de Windows Update solo es accesible a través del recurso compartido de red (S:\Deployment\SoftwareDistribution\) debido a alguna discrepancia en algún lugar (¿quizás xrfssvc.exe?).
La mayoría de los binarios solo tienen cadenas de descripción; no lo supe hasta hoy porque no estaba usando Windows para nada más que la conexión real con la consola. Muchas veces es aburrido (p. ej., XVUH, XVMCTRL), pero otras veces es muy descriptivo (p. ej., Durango Virtual XVNC Bus Driver, Xbox Remote File System Service).
Todas las pruebas se realizaron en una única unidad minorista de Xbox Series S en modo desarrollador. Los resultados reflejan muchas compilaciones; sin embargo, eventualmente haré un diff de las compilaciones y lo documentaré. Los hallazgos pueden variar entre revisiones de hardware (Series X, Xbox One) y versiones de firmware. Varias superficies a nivel de kernel no eran accesibles: los volcados de kernel en vivo están bloqueados por la restricción NoKernelDumps, y la superficie IOCTL de xvmctrl.sys no se enumeró por completo. Las preguntas abiertas se rastrean en la Sección 12.
| Herramienta | Propósito |
|---|---|
| Explorador de Windows | Recurso compartido de red de Xbox (Instrucciones en https://XBOX:11443/#File%20explorer > Examinar) |
SSH (DevToolsUser + PIN de VS) | Acceso al shell de SystemOS |
mklink /J | Creación de uniones NTFS para exponer unidades a través del recurso compartido de red |
Device Portal (https://XBOX:11443) | API REST, explorador de archivos, lista de procesos, volcados en vivo |
dumpbin /IMPORTS, dumpbin /EXPORTS | Análisis estático de binarios PE a través del recurso compartido de red |
| Python | Script para automatizar la API REST |
| Phasor | Entorno de ejecución de scripts para usar en la consola (copiar al recurso compartido de red, ejecutar vía SSH) descargar aquí |
reg query | Enumeración del registro desde el shell SSH |
WdApp.exe | Administrador de paquetes y control del ciclo de vida de ERA (enumeración de la superficie de comandos) |
WdConfig.exe | Enumeración de la API de configuración de la consola |
| Análisis de trazas ETL | Canalización de Windows Update a través de la unión S:\Deployment\SoftwareDistribution\ |
| Volcados de procesos en vivo | GET /api/debug/dump/usermode/live?pid=<pid> |
| Ghidra | Análisis de interfaces COM / controladores |
| IDA Pro | Grafos de llamadas de DLL complejas e interfaces COM |
| XboxTools | Mi propia colección de utilidades para varias cosas |
El acceso se estableció a través de la interfaz SSH del modo desarrollador no documentada (oficialmente, aunque hay documentación comunitaria). La técnica de unión NTFS (Sección 1.2) extendió el acceso de lectura desde el espacio temporal D:\DevelopmentFiles a todo el volumen del sistema C:\ y a todos los volúmenes de letras adicionales. Todo el análisis fue de solo lectura; no se modificó ninguna configuración del sistema (no se usó WdConfig.exe set). Xbox puede ejecutar binarios de consola Windows x86_64 estándar (compilados con /MT) directamente a través del shell SSH, lo que se usó para ejecutar herramientas de análisis localmente.