Skip to main content

Los hackers revientan la seguridad de PS3

Linux vuelve y le podría seguir la piratería masiva.

El sistema interno de seguridad de PlayStation 3 ha quedado en entredicho, con todas sus características antipiratería fallando de forma estrepitosa. El sistema es tan vulnerable que los hackers tienen ahora los mismos privilegios que Sony para decidir qué código se ejecuta en la consola.

Al menos eso es lo que afirma el equipo Fail0verflow, un grupo de hackers con una exitosa trayectoria abriendo dispositivos cerrados como la Wii de Nintendo para ejecutar código homebrew y - por supuesto - su juguete favorito, Linux. Sí, a pesar de que se eliminase OtherOS Linux vuelve a PS3.

Los comentarios de Fail0verflow, presentados en la vigésimo séptima Chaos Communication Conference (27c3) parecían poco realistas. La PlayStation 3 se lanzó en los territorios NTSC en noviembre de 2006, y el primer intento serio de piratearla no se produjo hasta el pasado verano con la publicación del PSJailbreak.

El Cell Broadband Engine de IBM ha sido alabado de forma unánime por sus características de seguridad on-die, que aseguran que ninguna de las claves de desencriptación esenciales abandone la CPU principal, haciendo imposible su acceso a través de dumps de la memoria RAM. La protección ha durado mucho más, desde luego, que la de Wii y Xbox 360, las cuales llevan ejecutando juegos piratas varios años.

¿La explicación de Fail0verflow? Los hackers querían ejecutar su propio código en el hardware que habían comprado y la PS3 les permitía hacer eso desde el primer día. Solo cuando apareció la PS3 Slim sin soporte para Linux - la cual afirman que puede usar el sistema operativo libre igual que el modelo anterior - y cuando OtherOS se eliminó de la consola "fat" los hackers se sintieron motivados para sacar a la luz los problemas de seguridad de la consola.

El equipo también cree que la piratería es una consecuencia directa de dichos hacks, y que si la PS3 ha sido segura hasta ahora simplemente se debe a que los hackers no estaban interesados en abrir un sistema que ya estaba suficientemente abierto, con implementaciones de Linux apoyadas por la creadora de la plataforma.

La presentación de Fail0verflow en la 27c3 afirma que los hackers abren el sistema y los piratas se aprovechan de su trabajo.

Durante una presentación que duró tres cuartos de hora, el equipo reveló la metodología con la que convierten la seguridad on-die en algo irrelevante y demostraron sin ningún tipo de duda que la tecnología Hypervisor - la CPU que supuestamente evita que se ejecute código no autorizado - era casi inútil.

Según el equipo Fail0verflow, la arquitectura de PS3 parece permitir la ejecución de código sin firmar con un esfuerzo mínimo por parte de un determinado hacker - lo cual explicaría en parte cómo era posible que el exploit del PSJailbreak pudiese cargar juegos piratas incluso aunque no se tocara el Hypervisor para nada.

Por lo que se explica en la presentación parece que aunque el equipo no ha crackeado el Hypervisor con el nuevo hack, lo que si hacen es contenerlo, haciendo que su aplicación sea irrelevante. Incluso el código específico que Sony revoca y prohibe usar en PS3 realmente no se comprueba al ejecutarlo, con lo cual incluso tras pasar por el Hypervisor se puede parchear y hacer pasar como normal.

Sin embargo, el trabajo de Fail0verflow va mucho más allá de este estilo tradicional de hacking. Han publicado la técnica con la que cualquier tipo de código no autorizado se puede ejecutar en cualquier PS3. Todo ejecutable de PS3 está encriptado, o firmado, usando un cifrado privado al que (en teoría) solo Sony tiene acceso. Es por todos conocido que reventar estas claves por fuerza bruta requeriría miles y miles de ordenadores trabajando durante muchísimos años.

Pero a pesar de esta realidad matemática, Fail0verflow tiene ahora en su posesión las claves de encriptación que usa Sony. Pueden crear paquetes al más puro estilo DLC que se ejecuten en cualquier PlayStation 3 y, sí, pueden crear sus propios custom firmware. Han dicho que su objetivo es producir una actualización de firmware que permita arrancar directamente en Linux cualquier PS3, pero la metodología permite que crear cualquier otro tipo de custom firmware... y todos sabemos lo que eso significa.

¿Cómo ha conseguido Fail0verflow tan rápido esas claves? Bien, al crear los archivos encriptados uno de los elementos más importantes de la fórmula matemática es el uso de un número aleatorio. El esquema de encriptación de PS3 usa un número aleatorio que no varía nunca entre un fichero firmado y otro, cuando la forma adecuada de hacer el proceso sería usar un número aleatorio diferente cada vez que se firma un archivo. Con solo dos firmas es posible reconstruir de forma matemática la llave de encriptación gracias a esa variable constante. Es tan simple como eso. En la práctica, solo se necesita una simple ecuación.

Matemáticas simples permiten que cualquiera encripte y firme software de PS3, algo que hasta ahora solo podía hacer Sony.

Sony usa muchas claves diferentes - unas para el código de los juegos, otra para los componentes del firmware y otra para el sistema de desencriptado por SPU, por ejemplo. Todas esas se han encriptado usando el mismo número supuestamente aleatorio, haciendo que todas puedas ser recuperadas. En resumen, los hackers tienen ahora mismo el mismo nivel de privilegios que Sony a la hora de ejecutar código, y eso implica a todos los usos posibles de la consola.

Es un error monumental que tendrá repercusiones muy serias para el futuro de PlayStation 3. Los hacks por hardware como los DVD flasheados de Xbox 360 o los modchips para Wii introducen una limitación que evita que mucha gente modifique sus sistemas: quizás la gente no tenga la habilidad necesaria o el deseo de invalidar su garantía. Pero con un hack completo por software como este, compatible con todas las máquinas que hay en el mercado, se puede expandir a una velocidad inusitada.