El firmware personalizado , también conocido como firmware alternativo , consiste en modificaciones no oficiales, realizadas por terceros, al firmware original integrado en dispositivos como consolas de videojuegos , teléfonos inteligentes y otros sistemas embebidos . Estas modificaciones pueden estar diseñadas para introducir nuevas funciones, desbloquear capacidades ocultas o extender la vida útil del hardware. En la comunidad de videojuegos , el término "firmware personalizado" se abrevia comúnmente como CFW . Se refiere específicamente a versiones modificadas del software oficial del sistema de una consola (OFW o firmware oficial), que habilitan funcionalidades no autorizadas por el fabricante.
consolas de videojuegos
El firmware personalizado suele permitir que las aplicaciones caseras o las copias de seguridad de imágenes ROM se ejecuten directamente en las consolas, a diferencia del firmware oficial, que normalmente solo permite la ejecución de copias firmadas o de venta al público. Dado que el firmware personalizado suele asociarse con la piratería de software , fabricantes de consolas como Nintendo y Sony han realizado importantes esfuerzos para bloquear el firmware personalizado y otros dispositivos y contenidos de terceros en sus consolas.
Legalidad
Debido a que se utiliza habitualmente para eludir la gestión de derechos digitales , el firmware personalizado se considera una herramienta para facilitar la piratería , aunque el acto de instalar firmware personalizado en sí mismo puede no ser ilegal.
En Japón, los firmwares personalizados fueron prohibidos como parte de una legislación más amplia en 2018 que ilegalizó la modificación de consolas. [ 1 ]
PlayStation Portable, PlayStation 3 y PlayStation Vita/PlayStation TV
El firmware personalizado es común en las consolas portátiles PlayStation Portable lanzadas por Sony. Entre los firmwares personalizados más destacados se encuentran M33 de Dark_AleX, así como otros creados por terceros, como la serie 5.50GEN, Minimum Edition (ME/LME) y PRO. El firmware personalizado en la PlayStation Portable permitía extensiones no oficiales de las capacidades del hardware. Complementos como RemoteJoyLite [ 2 ] permitían transmitir la salida de vídeo de la consola en tiempo real a través de USB a un monitor de ordenador conectado. Además, aplicaciones caseras como iR Shell [ 3 ] aprovechaban el puerto infrarrojo integrado de la PSP-1000 original para implementar la funcionalidad de control remoto universal para dispositivos electrónicos de consumo mediante el envío de códigos remotos a través de la interfaz IR.
También se puede usar firmware personalizado en la consola PlayStation 3. Solo los primeros modelos "Fat" y Slim (CECH-20xx hasta los primeros CECH-25xx) pueden ejecutar firmware personalizado. Los modelos Slim (finales CECH-25xx y CECH-30xx) y Super Slim solo pueden ejecutar HEN (Homebrew Enabler), que tiene una funcionalidad similar a la de un firmware personalizado. También existen ODE (Optical Drive Emulator), HAN (etHANol) y HFW (Hybrid Firmware) para PS3.
La PlayStation Vita / PlayStation TV cuenta con eCFW, es decir, firmware personalizado para PSP que se ejecuta en el emulador de PSP de la PS Vita/PS TV. Estos eCFW incluyen ARK, TN-V y, más recientemente, Adrenaline, que incorpora más funciones al haber sido modificado desde el lado nativo. En 2016, un equipo llamado Molecule lanzó HENkaku (un Homebrew Enabler, con una funcionalidad similar a la de un firmware personalizado) para PlayStation Vita/PlayStation TV, que modifica el firmware de la PS Vita/PS TV a la versión 3.60, permitiendo crear un firmware personalizado en la consola. El equipo detrás del HENkaku original también lanzó taiHEN. taiHEN es un framework sobre el que se ejecuta la versión más reciente de HENkaku. Es una forma de cargar plugins a nivel de sistema, como se hacía en la PSP, permitiendo modificar o añadir funciones a la consola. Enso es una vulnerabilidad del gestor de arranque de la PS Vita/PS TV que hace que HENkaku sea permanente y permite ejecutarlo al inicio, de modo que la PS Vita/PS TV tenga un CFW completo con HENkaku Enso. Los usuarios de la versión 3.60 también pueden actualizar a la 3.65 sin perder HENkaku Enso.
Nintendo 3DS
La comunidad de modding de Nintendo 3DS se centra principalmente en firmware personalizado (software que modifica el firmware oficial sobre la marcha), lo que requiere una vulnerabilidad para obtener el control del ARM9, el coprocesador de seguridad de la 3DS, y, secundariamente, en cartuchos flash , que emulan un cartucho de juego original (que se puede usar exclusivamente para jugar copias de seguridad de ROM de cartuchos de juego sin modificar). El CFW más utilizado actualmente es Luma3DS , desarrollado por Aurora Wright y TuxSH, que permite la instalación de archivos CIA (CTR Importable Archives) sin firmar, incluye módulos de firmware del sistema reescritos de código abierto y manejo de excepciones para desarrolladores de software casero.
Otros CFW pasados y abandonados incluían Gateway (un CFW propietario bloqueado a un cartucho flash mediante DRM y el primero disponible públicamente), Pasta, RxTools (el primero gratuito y ampliamente utilizado), Cakes CFW [ 4 ] (el primer CFW de código abierto, que utilizaba un enfoque modular para parches y fue la inspiración para los siguientes), ReiNAND, en el que se basó originalmente Luma3DS, y Corbenik; [ 5 ] hasta ahora el único firmware personalizado que todavía se está desarrollando es Luma3DS (anteriormente conocido como AuReiNAND). Los CFW de 3DS solían depender de "EmuNAND"/"RedNAND", una característica que arranca el sistema desde un espacio no particionado de la tarjeta SD que contiene una copia de la memoria NAND de la 3DS. Estos EmuNAND podían proteger el sistema 3DS de un brickeo, ya que la NAND del sistema habitual no se veía afectada si el emuNAND dejaba de funcionar correctamente o era inutilizable por alguna otra razón. Las EmuNAND también podrían actualizarse por separado de la NAND del sistema habitual, lo que permitiría a los usuarios tener la última versión del sistema en la EmuNAND mientras conservan la versión vulnerable en la NAND del sistema; de este modo, sería posible jugar en línea y acceder a la Nintendo eShop en versiones obsoletas del sistema 3DS.
Las emuNAND quedaron obsoletas con el lanzamiento de arm9loaderhax, una vulnerabilidad de ARM9 que se activaba al arrancar el sistema y permitía usar SysNAND de forma segura y actualizarla. Los CFW comenzaron a parchear el código de actualización del sistema operativo para que las actualizaciones oficiales no eliminaran la vulnerabilidad. Sin embargo, esta vulnerabilidad requería una degradación a una versión muy antigua del sistema para obtener la contraseña de un solo uso (OTP) única de la consola, necesaria para la instalación.
El 19 de mayo de 2017 se publicó una nueva base de exploit llamada sighax, que reemplazó a arm9loaderhax y permitió a los usuarios obtener un control aún más temprano del sistema, otorgando ejecución de código en el contexto de la bootROM y, por lo tanto, un entorno más limpio, sin necesidad de downgrades ni OTP. Se publicó Boot9Strap, una versión de sighax fácil de usar. Sighax funciona desbordando el puntero del analizador de firmas en la pila, de modo que el hash de la imagen del firmware se compara consigo mismo, ya que el analizador no valida ciertos campos. [ 6 ] [ 7 ]
Al mismo tiempo, se anunció otro exploit de bootROM llamado ntrboot, que permite usar una puerta trasera presente en el bootROM para obtener el control total del sistema en cualquier consola 3DS, independientemente de la versión del firmware (ya que el bootROM no se puede actualizar), requiriendo únicamente un cartucho flash DS modificado y un imán. El lanzamiento inicial fue el 12 de agosto, compatible con los cartuchos AceKard 2i y R4i Gold 3DS RTS.
Nintendo Switch
Actualmente, existen varios firmwares personalizados para la consola Nintendo Switch : Atmosphère, ReiNX y SX OS. Las diferencias entre ellos son prácticamente insignificantes; Atmosphère sigue en desarrollo activo y es software libre y de código abierto . ReiNX basa gran parte de su código en Atmosphère [ 9 ] , pero con algunas modificaciones en los componentes de tiempo de ejecución y un gestor de arranque diferente, mientras que SX OS es de código cerrado y de pago, pero se basa en gran medida en el código de Atmosphère a pesar de las afirmaciones en contrario. [ 10 ]
Nintendo ha hecho que el entorno de Switch sea mucho más seguro que las consolas anteriores. A pesar de esto, existen errores notables que permiten a los usuarios explotarlos. De estos, el error de la pila Nvidia Tegra ( CVE - 2018-6242 ) [ 11 ] es el más explotado. Aprovecha el Modo de Recuperación (RCM) de la unidad Switch para insertar payloads sin firmar/sin verificar, [ 12 ] lo que a su vez otorga al usuario acceso a la ejecución de código arbitrario . Esta vulnerabilidad ha sido aprovechada por usuarios dentro de la escena de hacking de Switch para realizar ingeniería inversa del firmware, lo que ha dado lugar a otros dos exploits notables: Nereba y Caffeine. Mientras que RCM es un exploit de hardware, Nereba y Caffeine son exploits de software y dependen de que la consola tenga versiones de firmware iguales o inferiores a ciertas para poder utilizarlos. RCM, al estar relacionado con el hardware, simplemente depende de que la consola sea vulnerable a ese exploit en particular y no tiene un requisito o rango de firmware.
Debido a la divulgación por parte de Nvidia de CVE-2018-6242, Nintendo se vio obligada a abordar la vulnerabilidad, [ 13 ] y a finales de 2018 comenzó a fabricar y distribuir unidades que habían sido parcheadas por hardware y que no pueden acceder a la vulnerabilidad RCM. Cualquier unidad fabricada durante o después de este período probablemente tenga parches por hardware, incluyendo la Switch Lite y las nuevas Switch de "caja roja", y cualquier unidad que tenga parches por hardware y ejecute un firmware relativamente reciente es improbable que pueda acceder a firmware personalizado en este momento o en el futuro debido al entorno de software inusualmente seguro de la Switch. Estas Switch se conocen comúnmente como Switch "parcheadas" dentro de la comunidad de modificación de Switch. Si bien no se pueden modificar por medios normales ("softmodding"), se puede soldar un chip de modificación donde estaría el puerto USB-C de la Switch después de que se retire ("hardmodding"), evitando así la necesidad de entrar en el modo RCM.
Androide
En Android, la instalación de firmware personalizado, conocida coloquialmente como instalación de una ROM personalizada o ROM de Android , es la práctica de reemplazar la partición del sistema del sistema operativo Android , generalmente montada como de solo lectura, [ 14 ] [ 15 ] con una versión modificada de Android, también conocida como "flashear una ROM". [ 16 ] El procedimiento requiere desbloquear el gestor de arranque , que en el pasado generalmente no era compatible con los fabricantes de dispositivos, y normalmente requería cierta experiencia en la explotación de vulnerabilidades en el sistema operativo. Sin embargo, desde aproximadamente 2015 [ 17 ] varios fabricantes, incluidos Motorola , [ 18 ] OnePlus , [ 19 ] Google [ 20 ] Xiaomi y Sony [ 21 ] admiten el desbloqueo del gestor de arranque (excepto en modelos que están bloqueados por algunos operadores). Esto evita el arranque seguro, sin necesidad de exploits. Las ROM personalizadas instaladas pueden incluir diferentes características, requerir menos energía u ofrecer otros beneficios al usuario; los dispositivos que ya no reciben actualizaciones oficiales de la versión de Android pueden seguir actualizándose. Sin embargo, es posible que algunas ROM personalizadas no admitan correctamente todas las funciones de un teléfono.
Otros dispositivos
Otros dispositivos, como cámaras digitales , enrutadores inalámbricos y televisores inteligentes , también pueden ejecutar firmware personalizado. [ 22 ] Algunos ejemplos de dicho firmware personalizado son:
- Rockbox para reproductores multimedia portátiles
- iPodLinux para reproductores multimedia portátiles iPod
- CHDK [ 23 ] y Magic Lantern [ 23 ] para cámaras digitales Canon
- Proyecto Nikon Hacker para las cámaras réflex digitales Nikon EXPEED.
- Coreboot y Libreboot para ordenadores
- Muchos proyectos de firmware de terceros para enrutadores inalámbricos , entre ellos:
- Proyecto LibreWRT para Ben Nanonote, Buffalo WZR-HP-G300NH y otros ordenadores con recursos mínimos [ 24 ]
- OpenWrt y sus derivados como DD-WRT [ 23 ]
- RouterTech, para routers de puerta de enlace ADSL basados en el chipset Texas Instruments AR7 (con el gestor de arranque Pspboot o Adam2 )
- Cable Hack y Sigma para desbloquear módems de cable , pero con dudosa legalidad [ 25 ] [ 26 ]
- Firmware que permite que las unidades de DVD sean multirregión.
- SamyGO , firmware modificado para televisores inteligentes Samsung [ 27 ]
Referencias
- ↑ "Japón prohíbe modificar consolas" . GameSpot . 10 de enero de 2019. Consultado el 1 de septiembre de 2024 .
- ↑ «Remoto Joy Lite PSP» . GameBrew . 2024-05-08 . Consultado el 13 de febrero de 2026 .
- ↑ «IRShell PSP» . GameBrew . 2024-07-11 . Consultado el 13 de febrero de 2026 .
- ↑ "Desarrollador de Cakes CFW anuncia el abandono del proyecto" . GitHub .
- ↑ "El autor y responsable del mantenimiento de Corbenik anuncia su retirada del proyecto" . 4 de junio de 2016.
- ↑ "Exploit de BootROM de 3DS" . zoogie.github.io . Consultado el 20 de octubre de 2024 .
- ↑ "33.5c3" . sciresm.github.io . Consultado el 20 de octubre de 2024 .
- ↑ Estados Unidos de América contra Max Louran, Yuanning Chen y Gary Bowser , 2:20-cr-00127-RSL , páginas 11–12(Tribunal de Distrito de los Estados Unidos para el Distrito Oeste de Washington en Seattle,20 de agosto de 2020).
- ↑ "ReiNX elimina el nombre Atmosphere del código de Atmosphere" . GitHub .
- ↑ "Desarrolladores destacados de la escena y un fragmento de código de ingeniería inversa de SX OS" .
- ↑ "Entrada CVE para el error de Tegra" .
- ↑ "Lista de vulnerabilidades públicas de Switchbrew" .
- ↑ "Solicitud ante la FCC para revisión de hardware" .
- ↑ "Actualizaciones del sistema que no son A/B" .
- ↑ Raja, Haroon Q. (19 de mayo de 2011). "Explicación de las particiones de Android: arranque, sistema, recuperación, datos, caché y miscelánea" . Addictivetips . Addictivetips.com. Archivado del original el 22 de septiembre de 2012. Consultado el 15 de septiembre de 2012 .
- ↑ "ROM de Android" . Enciclopedia PCMAG . Consultado el 26 de mayo de 2023 .
- ↑ "Desbloquear gestor de arranque - Dispositivos compatibles" . LG Developer . Consultado el 29 de enero de 2021 .Ejemplo: el G4 de 2015 es el primer teléfono LG al que se le puede desbloquear el gestor de arranque.
- ↑ "Desbloqueo del gestor de arranque | Teléfonos Android MOTOROLA | Motorola Mobility LLC" .
- ↑ "Servicio posventa: ¿Rootear o desbloquear el gestor de arranque anulará mi garantía? - OnePlus" . Archivado del original el 31/12/2016.
- ↑ "Imágenes de fábrica para dispositivos Nexus y Pixel | API de Google para Android" . Google Developers . Consultado el 18 de septiembre de 2018 .
- ↑ "Desbloquear el gestor de arranque - Abrir dispositivos - Sony Developer World" .
- ↑ Cómo los hackers están burlando a los televisores inteligentes y por qué esto te importa.
- 1 2 3 "¡El firmware personalizado mola!" . Pcgamer . 2009-08-05 . Consultado el 2009-08-13 .
- ↑ "Soporte de hardware" . LibreWRT.org . Archivado del original el 23 de abril de 2015. Consultado el 21 de julio de 2015 .
- ↑ Poulsen, Kevin (12 de enero de 2009). "Acusan a un pirata informático de vender módems de cable que ofrecen banda ancha gratuita: actualización" . Wired . Condé Nast . Consultado el 15 de junio de 2016 .
- ↑ Poulsen, Kevin (5 de febrero de 2004). "Los hackers de módems de cable conquistan el cable coaxial" . SecurityFocus.com . SecurityFocus . Consultado el 16 de junio de 2016 .
- ↑ "SamyGO: reemplazo del firmware del televisor" . LWN.net . 14 de noviembre de 2009. Consultado el 11 de diciembre de 2009 .
- Firmware personalizado
- Software casero
- desarrollo de videojuegos