Da jetzt schon öfters nachgefragt wurde was ein Softmod ist und wie er funktioniert hier mal eine Zusammenfassung der wichtigsten Eckpunkte:
ZitatAlles anzeigenDie Vorgehensweise könnte man schon fast als "konventionell" bezeichnen. Alle großen Hacks vom sagenumwobenen NASA-Hack vor fast 20 Jahren bis zu den heute verbreiteten Viren und Trojanern laufen ganz grob nach diesem Muster ab:
Man versucht, die Software von außen mit Fehleingaben dazu zu bringen, "abzustürzen". Der sog. Buffer-Overflow wird durch unzulässig große Datenblöcke ausgelöst, die auf dem Stack das ausführenden Systems abgelegt werden. Bei einem Absturz kommt der Programmablauf durcheinander und wird abgebrochen. Dabei wird vom Stack die Rücksprungadresse zur letzten aufrufenden Methode geholt und dorthin verzweigt. Der unzulässig große Datenblock auf dem Stack hat dabei aber bereits die tatsächliche Rücksprungadresse überschrieben und durch eine Adresse ersetzt, die in eben diesen Datenblock zeigt. Der enthält dann "Schad-Code", also Programmsegmente, die den Zugriff auf ein System ermöglichen.
Bei der Xbox ist es nun gar nicht so einfach, von außen "Fehleingaben" durchzuführen. Spielstände bieten dafür aber eine gute Angriffsfläche, denn die meisten Programmierer von Xbox-Spielen gehen ja davon aus, dass solche Spielstände immer von ihrem eigenen Programm erzeugt und auch wieder eingelesen werden. Darum ist die Fehlertoleranz dieser Einlesemethoden häufig nicht besonders hoch. Das heißt, durch gezielte Veränderungen eines Spielstandes kann man viele Spiele schon mächtig durcheinander bringen. Z.B. könnte man den Profilnamen in einem Spielstand statt der üblichen 20-30 Zeichen einfach mal 10000 Zeichen lang machen und dort auch gleich den Schad-Code mit unterbringen.
Ebenso arbeitet auch der Font-Exploit. Dort werden dem Betriebssystem Font-Daten präsentiert, die einfach nicht gültig sind. Das Original-Bios der Xbox hat hier einen Fehler, der zu den oben erläuterten Effekten führt.
Der Vorteil der Ausnutzung des Font-Exploits gegenüber einem Fehler in einem Spiel liegt auf der Hand: Die Fonts werden vom Bios immer sehr früh im Startprozess geladen. Man kann also sehr früh eingreifen und die gewünschte Effekte erzielen. Würde man den Fehler eines Spieles ausnutzen, müsste man jedesmal erst dieses Spiel starten, um ein alternatives Bios zu laden - lästig.
Darum wird der Spiele-Bug nur einmal verwendet, um der Box die gepatchten Font-Dateien unterzuschieben. Danach wird der Font-Exploit verwendet, um in den Boot-Prozess der Box einzugreifen.
und hier noch die 3 verschiedenen Arten des Softmods
ZitatAlles anzeigenBeim softmod wird weder das bios geflasht noch die festplatte "gesoftmodded".
Bei einem Game Exploit,wie man ihn z.B. zum installieren des Softmod braucht,wird ein Spielstand so manipuliert,das er einen Buffer Overflow auslöst,der es ermöglicht, 60KB eigenen Code auszuführen. In diesen 60KB wird ein BIOS Loader geladen,der seinerseits wiederum die einzige Aufgabe hat,das im RAM der XBox geladene BIOS zu modifizieren oder mit einem Hackbios zu ersetzen. Das Hackbios lädt die eigentliche Softmod-Installier-Routinen,in den meisten Fällen ein Dashboard.
Beim Font Exploit,dem am meisten verwendeten Softmod,werden die Schriftdateien xbox.xtf und xbox book.xtf so modifiziert,das sie ebenfalls einen Buffer Overflow auslösen,der es wiederum ermöglicht,ein Hackbios zu laden und ein Dashboard oder anderen unsignierten Code zu starten.
Beim Audio Exploit,der früher ab und an verwendet wurde,wird die ST.DB im Verzeichnis E:\tdata\fff0eeee\music so modifiziert,das sie einen Buffer Overflow auslöst. Um diesen Mod zu "aktivieren" wird erst das normale MS Dashboard gestartet. Dann muss man den CD Player öffnen und das alternative Dashboard wird geladen. Der Nachteil dabei ist,das man mit diesem Mod das Original Dashboard nicht mehr zum CD's Rippen benutzen kann,allerdings kann man mit dem Audio Exploit leichter XBox Live benutzen,da der Mod erst aktiviert werden muss.
ist sicher ganz interresant für einige auch zu wissen wie ein Softmod aufgebaut ist