Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Byepervisor — Un exploit del hipervisor de PS5 para los firmwares 1.xx-2xx. | Kitploit
Herramientas/GitHubGitHub/ps5dev/byepervisor
Seguridad de Sistemas EmbebidosEscalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónIngeniería InversaVirtualización de SeguridadExplotación de Binarios
GitHubps5dev/byepervisor

Byepervisor

Un exploit del hipervisor de PS5 para los firmwares 1.xx-2xx.

Ver Repositorio
35523hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Byepervisor


Resumen

Exploit del hipervisor de PS5 para firmware <= 2.xx. El repositorio contiene dos vulnerabilidades y cadenas de exploit independientes entre sí; cualquiera de ellas puede usarse. Un exploit se incluye principalmente con fines de preservación (/_old_jump_table_exploit); solo es necesario usar la cadena de exploit principal (exploit de indicadores QA).

Esta investigación se presentó en hardwear.io NL 2024; las diapositivas se pueden encontrar aquí. La charla se publicará pronto.

Exploit de tabla de saltos

El primer exploit aprovecha una vulnerabilidad en la que las tablas de saltos del código del hipervisor se comparten con el kernel invitado, y está contenido en /_old_jump_table_exploit/. Al secuestrar la entrada de la tabla de saltos para la hiperllamada VMMCALL_HV_SET_CPUID_PS4, se puede lograr ejecución de código en el hipervisor. Ejecutamos una cadena ROP que desactiva la paginación anidada (NPT) y la trampa de ejecución en modo invitado (GMET), lo que nos permite desactivar la memoria de solo ejecución (XOM), también conocida como xotext, en las entradas de la tabla de páginas (PTEs) del kernel para volcarla, además de habilitar la escritura en las PTEs para enganchar/parchear el kernel.

Este método requiere una cantidad considerable de gadgets y offsets, que es la razón principal por la que este exploit no es el principal. Además, actualmente solo rompe el hipervisor en el núcleo donde se ejecuta la cadena ROP; el hipervisor sigue activo en otros núcleos y habría que desactivarlo.

Exploit de indicadores QA

El exploit principal y recomendado aprovecha el hecho de que los indicadores de Aseguramiento de Calidad (QA) del sistema se comparten entre el hipervisor y el kernel invitado. Cuando el hipervisor se inicializa, el código de inicio para construir las tablas de páginas anidadas comprueba los indicadores QA para el indicador de depuración de Nivel de Sistema (SL). Si este indicador está activado, las entradas de la tabla de páginas anidadas (PTEs) no tendrán el bit xotext establecido para las páginas .text del kernel y, además, las páginas .text del kernel también tendrán el bit de escritura establecido.

Estos indicadores no se reinicializan mediante el cargador seguro al reanudar desde el modo de suspensión, aunque el hipervisor sí se reinicializa. Al establecer el indicador SL, poner el sistema en suspensión y reanudarlo, podemos editar las tablas de páginas del kernel invitado para que las páginas .text del kernel sean legibles/escribibles, lo que permite volcar el kernel y realizar enganches/parches.

Notas importantes

  • Actualmente solo se admite el firmware 2.50 para el habilitador de homebrew (HEN); se añadirá soporte para otras versiones de firmware más adelante.
  • El payload del exploit (byepervisor.elf) deberá enviarse dos veces: una antes de suspender el sistema y otra después de reanudarlo.
  • Tendrás que poner el sistema en modo de reposo manualmente.
  • El volcado del kernel del exploit de indicadores QA no contendrá la región .data del hipervisor por ahora; si esto es importante para ti, usa el exploit de tabla de saltos después de portarlo o desactiva primero la paginación anidada (esto es un TODO)

Incluido actualmente

  • Código de volcado del kernel (comentado; ejecutar este código provocará un pánico del sistema, ya que intentará volcar todo lo que pueda antes de alcanzar memoria no mapeada)
  • Código para descifrar SELF de bibliotecas del sistema a través de TCP
  • Habilitador de homebrew (HEN) para firmware 2.50 (fself+fpkg)

Notas de compilación

Este payload de exploit se compila con el PS5-Payload-Dev SDK. Ten en cuenta también que la compilación de hen/ es algo especial, ya que se compila a un binario plano que se copia dentro de una cavidad de código del kernel. La totalidad del código en hen/ se ejecuta en modo supervisor/kernel.

Cómo usar

  1. Ejecuta la cadena de exploit UMTX en webkit o BD-J y ejecuta un cargador de ELF
  2. Envía byepervisor.elf
  3. Pon el sistema en modo de reposo
  4. Enciende el sistema de nuevo
  5. Envía byepervisor.elf de nuevo (si usas el cargador de ELF de John Tornblom, el cargador debería seguir aceptando payloads después de reanudar; si no, será necesario volver a ejecutar el exploit UMTX)

Trabajo futuro

  • Soportar más firmwares (offsets)
  • Hacer que byepervisor.elf solo necesite enviarse una vez
  • ¿Suspender el sistema automáticamente?
  • Parchear los vmcbs con el exploit de indicadores QA para volcar datos del hipervisor

Créditos / Agradecimientos

  • ChendoChap
  • flatz
  • fail0verflow
  • Znullptr
  • kiwidog
  • sleirsgoevy

Discord

Los interesados en contribuir a la investigación/desarrollo de PS5 pueden unirse a un Discord que he creado aquí.

Descargar herramienta