cubecubecube?
deleet
deleet
 übersicht
 suchen

projekte
 DudeWars
 SkyColor
 purzel
 ULF
 KAP

ray
 newton
 fotos
 Q2BG

io
 download
 source
 pix

übersicht / neues / Verschlüsselungsalgorithmus und Schlüssel der X-Box gefundensuchen login  hilfe!
 
raywer ist ray?beitrag bearbeiten* 02. Jun 200201:46:48 vor 5616 tagen
Seit einigen Wochen gibt es Mod-Chips für die X-Box, die (vermutlich) in Realtime ein anderes Flash-ROM simulieren (die Modchipper wollen damit Geld verdienen und sagen ungern, was sie genau tun).

Jetzt hat einer der 'guten' Hacker den Bootprozess in einem Paper dokumentiert:
This paper discusses the hardware foundations of the cryptosystem employed by the Xbox TM video game console from Microsoft. A secret boot block over-lay is buried within a system ASIC. This secret boot block decrypts and verifies portions of an external FLASH-type ROM. The presence of the secret boot block is camouflaged by a decoy boot block in the external ROM. The code contained within the secret boot block is transferred to the CPU in the clear over a set of high-speed busses where it can be extracted using simple custom hardware.

Aber es hat sich rausgestellt, dass man diese Informationen gar nicht benötigt:
The initialization procedure is implemented using a simple bytecode interpreter that reads initialization commands and data from the FLASH ROM. These bytecode commands -- stored as plaintext -- can be manipulated to cause the initialization procedure to abort before the kernel decryption/verification routine is executed, and to instead run insecure code directly out of the FLASH ROM. In other words, with plaintext-only modifications in the FLASH ROM, one can entirely bypass the Xbox’s security mechanism.
iower ist io?beitrag bearbeiten 02. Jun 200216:15:27 vor 5615 tagen
also wenn ich mich richtig erinnere wurde nicht der schlüssel gefunden sondern nur eine hälfte davon und zwar der public key. um ein eigenen bootloader zu schreiben der auch ohne löt-aktionen klappt brauchst du aber noch den private key. der ist aber nirgendwo in der xbox und einen 128bit key per brute force zu ermitteln könnte auch recht hart werden.

btw. sind die burschis jetzt nicht cracker?? :)
raywer ist ray?beitrag bearbeiten 02. Jun 200218:52:21 vor 5615 tagen
Nein, denn sie wollen das Ding ja nicht kaputtmachen, sondern für was anderes benutzen. Zum Beispiel Linux.

Erklär die Sache mit dem Schlüssel mal genauer. Kann man dann Signed Code schreiben oder was? Denn sonst muss man immer das BIOS modifizieren, und das geht nicht ohne löten (weil das X-Box-Board nicht flashen kann).

Übrigens hat gestern jemand einen der Mod-Chips reverse engineered. Das ist offenbar auch nicht mehr als ein Austausch-BIOS. Dieses BIOS schwirrt jetzt im Netz rum. Nieder mit den bösen Modchippern ;)
iower ist io?beitrag bearbeiten* 02. Jun 200223:09:39 vor 5615 tagen
linux auf einer xbox? na sowas!
also erstmal der bootvorgang so wie ich ihn verstehe:

secret boot block (location southbridge/MCPX)
decryptes and verify kernel bootloader (128bit RC4 + 32bit magic number)
if verification ok
start kernel bootloader

kernel bootloader (location FLASH ROM)
decrypt and verify kernel image
if verification ok
start kernel image

kernel image (location FLASH ROM)
verify application
if verification ok
run application

application (location DVD ROM)

in dem paper wurde der erste part identifiziert und analysiert und so wie ich den restlichen aufbau verstehe muss deine applikation so signiert sein, dass das kernel image sie nicht als ungültig verwirft. irgendwo musst du den key zum signieren herbekommen und ich glaub microsoft rückt den nicht so einfach raus. in den SDKs ist z.b. auch ein anderer key und die damit signierten programme laufen nur auf einer developer box. ich würd mal sagen vorerst schlechte karten. besonders weil das "OS" halt im flash rom steckt. also einfach eine cd zum booten wird es so wohl nie geben.

ach und man kann das bios auch fläschen aber löten muss man schon :)
raywer ist ray?beitrag bearbeiten* 03. Jun 200201:08:20 vor 5615 tagen
Ja, unsigned code. Das ist das, was ich meinte. Den Schlüssel, um selbst signed code erzeugen zu können, wird man nicht rausbekommen. Allenfalls durch social engineering. Aber wenn man den hätte, würde einen MS in Grund und Boden klagen.

Die Wege, die sich derzeit anbieten, sind:
Irgendwie das Flashen direkt in der X-Box ermöglichen. Das ist zum einen ein Hardware-Mod (aber ein einfacher, einen Widerstand einlöten), zum andern braucht man aber auch das Flash-Programm, und das müsste ja wieder signed Code sein.
Über den LPC-Stecker gehen. Das ist ein Intel-spezifischer Bus mit guter Dokumentation, der aber auf der X-Box abgeschaltet und nur in Lötpunkten ausgeführt ist. Man muss also einen Pfostenstecker auflöten (auch noch recht einfach). Bunnie entwickelt ein Board dafür und hat wohl auch raus, wie man den Stecker aktiviert.

Beides wird Microsoft keinen ernsthaften Schaden zufügen, weil das nur eine Handvoll Leute machen können.
raywer ist ray?beitrag bearbeiten 03. Jun 200219:46:35 vor 5614 tagen
Hier ist noch ein wenig Bla von Visor, der einen Bug im Bootvorgang entdeckt hat (in der Phase MPX->Flash). Aufgrund dieses Bugs kann man auch eigenen Code im Flash-ROM unterbringen, ohne ihn vorher zu codieren. Trotzdem muss man weiterhin flashen.

Ein Fehler nach diesem Muster im Bootstrap2 (Flash->DVD) wär mal nicht schlecht.
raywer ist ray?beitrag bearbeiten 20. Jun 200219:04:59 vor 5597 tagen
Live-Berichterstattung von der XBox-Schlacht:

Mittlerweile haben die Leute raus, wie man den LPC-Connector auf dem Board in Gang setzt. Wenn man einen bestimmten Pin am Flash auf 0 V zieht (Kabelbrücke), liest die XBox das BIOS vom LPC. Wie das vor sich geht, ist bei Intel alles dokumentiert. Es gibt sogar spezielle Flash-Chips, die direkt per LPC ausgelesen werden können.

Derzeit machen die Hacker das aber noch mit einem FPGA (von Xilinx). Zwei oder drei haben ihren eigenen Kram gebaut und es gibt auch schon die erste Komplettplatine.

Mit dem LPC-Flash-Chip wird das aber noch mal billiger werden, vor allem, wenn man nicht mehr selbst flashen muss oder schon einen Flasher hat.

Löten muss man natürlich immer noch. Nur reicht es jetzt aus, einen Pfostenstecker aufzulöten oder auf 9 große Lötpads (2,54 mm Raster) zu löten. Vorher waren das 33 winzige Pads.

Wenn dann genug Leute so ein Ding haben, findet hoffentlich jemand mal einen Software-Bug, bei dem man ansetzen kann.

Wenn man den D0-Pin nicht auf Low zieht, versucht die XBox übrigens, auf dem Connector ein Debug-Modul zu finden, das auch bei Intel beschrieben ist.

Hat man dann sein eigenes BIOS am laufen (wie man um das Passwort herumkommt, beschreibt visor -- siehe oben), muss man noch einen Watchdog schlafen legen. In der XBox befindet sich ein Microcontroller (Microchip PIC), der beim Start einen Challenge-Code sendet und eine Response erwartet. Wenn das nicht innerhalb von 200 ms passiert, resettet der PIC die XBox. Der Algorithmus ist auch geknackt, der "Schlüssel" (eher eine Art seed) ist auch bekannt.

Will man danach die Festplatte benutzen, muss man sie erst aufschließen -- dafür gibts auch wieder einen Schlüssel und einen Algorithmus. Wie man an die kommt, ist ebenfalls bekannt. Ansonsten kann man natürlich auch die Platte tauschen.

Die technischen Probleme sind gelöst, aber nicht die juristischen. Denn es sieht derzeit so aus, dass man die obigen zwei Schlüssel braucht -- und dann hat Microsoft eine Möglichkeit, nach dem DCMA gegen die Hacker vorzugehen. Ob die Reverse-Engineering-Ausnahme gilt, wird noch heiß diskutiert.
MaZwer ist MaZ?beitrag bearbeiten 21. Jun 200207:49:07 vor 5597 tagen
Ein paar Sächelchen irritieren mich.
Warum ist der LPC-Ansatz überhaupt auf dem Board, wenn er ganz offensichtlich nie gebraucht werden wird?
Reicht es wirklich, die Platte zu tauschen? Das kann ich mir nicht vorstellen.
Das es so "einfach" ist, die Box zu knacken, läßt mich ja fast an die Verschwörungstheorie glauben, Microsoft versuche so den Billig-PC auf den Markt zu drücken, ohne die Hardwarebranche zu verärgern.
raywer ist ray?beitrag bearbeiten 21. Jun 200208:33:09 vor 5597 tagen
Ich halte mich da an Hanlon's Razor: "Never attribute to malice that which can be adequately explained by stupidity."

Im übrigen ist das Hacken der XBox nicht einfach. Die Hacker haben fast ein halbes Jahr gebraucht. Vom juristischen Standpunkt sind die diversen Sicherheitsmaßnahmen sogar ziemlich clever. Gut, das ist der dumme DCMA schuld.

Zum LPC: Auf dem Entwickler-Board brauchte man ihn noch (da war er auch bestückt). Wenn man man ein funktionierendes Board hat, ändert man das ungern. Außerdem ist davon auszugehen, dass er in der Fabrik oder in der Reparatur gebraucht wird.

Zur Platte: Die ist mit einem Code gelockt. Auf IDE-Level. Wenn man was mit der Platte machen will (schon partitionieren), braucht man den Code. Wenn man die Platte austauscht, ist die natürlich nicht gelockt. Wo soll da das Problem sein? Man fährt ja seinen eigenen Code, nicht den von MS.
iower ist io?beitrag bearbeiten 07. Jul 200222:08:49 vor 5580 tagen
update: die erste legale (sprich: nix xbox sdk) xbox linux version. braucht natürlich immer noch einen mod chip, aber damit passiert dann nicht mehr das gleiche wie mit xbox mame.
übersicht / neues / Verschlüsselungsalgorithmus und Schlüssel der X-Box gefundensuchen login  hilfe!