Doom puede correr prácticamente en cualquier sitio, incluso si la plataforma seleccionada no cuenta con una pantalla en el estricto sentido de la palabra.
El último logro ha sido lograr ejecutar el código del título en un tractor de John Deere. La hazaña ha sido lograda por Sick Codes, un investigador de ciberseguridad, quien junto a la modder de Doom, Skelegant, desarrolló una versión "especial" del juego que en lugar de estar ambientada en el infierno, lo hace en un campo de maíz, donde el tractor sirve como arma para acabar con los demonios.
La hazaña fue mostrada públicamente durante la conferencia Def Con, que se celebra en las Vegas y en un video de Sick Codes se puede ver que corre como una superposición semitransparente directamente sobre la interfaz de usuario del tractor, en un proceso que duró meses según el investigador y que implicó realizar jailbreaking en el sistema Linux de un tractor John Deere modelo 4240.
Playing Doom on a John Deere tractor display (jailbroken/rooted) at @defcon pic.twitter.com/ih0QUTGNuS
— Sick.Codes (@sickcodes) August 14, 2022
Hackear tractores tiene más sentido de lo que parece
La piratería de tractores viene motivada por las limitaciones que los fabricantes imponen en sus vehículos y en el caso de los agricultores que usan las unidades de John Deere, su intención es poder modificar y reparar los equipos sin tener que acudir a una estación de servicio autorizada, lo que aumentaría los costos.
Sin embargo, luego de que Sick Codes descubriera en 2021 varias vulnerabilidades que afectaban la seguridad de las unidades John Deere a nivel del sistema operativo y en su programación, la compañía comenzó a corregir algunos de los defectos, hecho que los propios agricultores le reclamaron al investigador.
Sick Codes detalló que su motivación este año fue por un lado la seguridad alimentaria mundial, pero también la exposición que hace vulnerables a los equipos agrícolas, junto a la posibilidad que esto abre a que los agricultores puedan controlar su propio equipo, algo motivado por el "derecho a reparar" sobre lo que uno compra, al menos en Estados Unidos.
Como parte de este movimiento, la propia John Deere anunció que parte de su software de reparación llegaría a los propietarios de equipos y que en 2023 llegaría una "solución mejorada para clientes" para que usuarios y mecánicos puedan descargar y aplicar actualizaciones oficiales por su cuenta en las unidades, en lugar de que sean realizadas directa y unilateralmente de forma remota por la compañía o de que los agricultores sean obligados a ir a un concesionario autorizado para hacerlo.
Aprovechando vulnerabilidades en la verificación
Wired señala que el método de Sick Codes requirió de experimentar con una serie de placas de circuitos con pantalla táctil para encontrar las omisiones en los requisitos de autenticación y restaurar el dispositivo como si un distribuidor certificado estuviera accediendo a él.
En este modo el sistema le ofrecía más de 1.5 GB de datos en registros, con los cuales los proveedores de servicios autorizados pueden diagnosticar problemas, lo que le dio adicionalmente otro posible ataque con acceso más profundo.
With epic just-in-time help by NZ based doom modder @Skelegant. She helped get this run using DeHacked Doom, since gzdoom was a mission. Together, we teamed up to make this happen. She is amazingly talented. pic.twitter.com/OfVDMvRhzR
— Sick.Codes (@sickcodes) August 14, 2022
Luego soldó unos controladores directamente e hizo que su ataque pasara por alto las protecciones del sistema, lo que terminó por darle acceso root del sistema.
Según Sick Codes, de momento se requiere acceso físico a la placa del circuito, pero señala que es posible desarrollar una herramienta a partir de las vulnerabilidades para ejecutar el jailbreak más fácil.
De momento John Deere no se ha posicionado al respecto, pero Sick Codes duda que la empresa solamente pueda solucionar el problema sin realizar una revisión significativa en el sistema de los nuevos diseños de tractores, algo que es poco probable se implemente en los equipos existentes.