Veel apparaten op de markt hebben een hardwareconfiguratie die geavanceerder is dan we denken, en worden al snel vruchtbare grond voor enthousiastelingen die op zoek zijn naar toegang op laag niveau met één doel: Doom installeren en draaien. Met dat in gedachten komen we bij het experiment van Josh Max, die een vaste telefoon met een ARM-SoC en een aangepaste versie van Linux nam, na lang wachten root-referenties verkreeg, en de poorten van de hel opende voor de marine nog maar eens...

Doom draaien op een vaste telefoon
Doom draaien

Terwijl een deel van de wereld afscheid neemt van traditionele telefoonlijnen, blijven er nog veel producten en diensten bestaan die met deze technologie verband houden. Een van die diensten is CaptionCall, die telefoons aanbiedt met een realtime close captioning-systeem voor slechthorende gebruikers. CaptionCall-telefoons worden gesubsidieerd door de Amerikaanse overheid (via de FCC en de "Americans with Disabilities Act" van 1990), en het is niet moeilijk om tweedehands exemplaren te krijgen tegen redelijke prijzen (minder dan 30 dollar).

Doom draaien op een vaste telefoon
Zo ziet een CaptionCall-telefoon eruit

CaptionCall-telefoons hebben nog een ander interessant detail: ze zijn in wezen computers. Op zijn persoonlijke blog legt Josh Max uit dat een CaptionCall-telefoon een ARMv7 i.MX6-SoC heeft, 1 GB DDR3-RAM en 4 GB NAND-opslag. Het probleem is dat de software goed beveiligd is, en door een aangepaste versie van de Linux-kernel te gebruiken, wordt het bedrijf beschuldigd van GPL-schending. Josh besloot daar niet te stoppen en hackte de telefoon met één idee in gedachten: Doom uitvoeren.

Doom uitvoeren op een gehackte vaste telefoon

Doom draaien op een vaste telefoon

Na een aantal externe tests opende Josh de telefoon en vond hij een UART-toegangspunt, dat hem toegang gaf tot de systeemconsole. Het root-account was beveiligd, maar met een U-Boot-console (door in de eerste seconde na het inschakelen op "Escape" te drukken) startte Josh een firmware-dump via U-Boot via een seriële verbinding... wat negen uur duurde en meerdere pogingen vereiste vanwege interferentie in de communicatie.

Doom draaien op een vaste telefoon
De afbeelding is van lage resolutie, maar het toegangspunt is duidelijk zichtbaar...

Met zijn dump gebruikte Josh binwalk om de image te decomprimeren, en "John" (ik denk dat het John the Ripper is) om het root-wachtwoord te kraken, dat in minder dan tien seconden viel. In de laatste fase verwijderde Josh de eigen interface van de telefoon, installeerde een chroot voor Debian Jesse ARM, activeerde audio, video en touch-ondersteuning opnieuw, laadde IceWM, en uiteindelijk DOOM.

Het beste deel? Het werk van Josh transformeert de CaptionCall tot een uitstekend low-cost ontwikkelplatform. Op dit moment is hij bezig met reverse engineering van de code (aangezien het bedrijf deze niet deelt) en hoopt hij op 3D-versnelling. DOOM is nog maar het begin...

Bronnen: Blog van Josh Max, Hackaday