| |
| |
Prologue-README.1ST | |
| |
| |
The Video Game Console Market | |
| |
| |
About Hackers and Hacking | |
| |
| |
The Politics of Hacking | |
| |
| |
The People Behind the Hacks | |
| |
| |
| |
Voiding the Warranty | |
| |
| |
Tools of the Trade | |
| |
| |
Tools to Open Things Up | |
| |
| |
Tools to Attach and Remove Components | |
| |
| |
Tools to Test and Diagnose | |
| |
| |
Tools for Design | |
| |
| |
Deconstructing the Xbox | |
| |
| |
| |
Safety First | |
| |
| |
| |
Remove Case Screws | |
| |
| |
| |
Remove the Top Cover | |
| |
| |
| |
Move the Disk Drives | |
| |
| |
| |
Remove the Disk Drives (Optional) | |
| |
| |
Reassembling the Xbox | |
| |
| |
| |
Thinking Inside the Box | |
| |
| |
Reading a Circuit Board | |
| |
| |
Circuit Board Basics | |
| |
| |
Components | |
| |
| |
Test Points | |
| |
| |
Xbox Architecture | |
| |
| |
High-Level Organization | |
| |
| |
Functional Details | |
| |
| |
CPU | |
| |
| |
Northbridges and Southbridges | |
| |
| |
RAM | |
| |
| |
ROM | |
| |
| |
Odds and Ends | |
| |
| |
Pattern Matching | |
| |
| |
Comparison: Xbox Versus the PC | |
| |
| |
Contrast: Xbox Versus the Gamecube | |
| |
| |
| |
Installing a Blue LED | |
| |
| |
What You'll Need | |
| |
| |
Removing the Xbox Front Panel | |
| |
| |
Removing the Front Panel Circuit Board | |
| |
| |
Installing the Blue LED | |
| |
| |
Reassembling the Front Panel | |
| |
| |
Debugging | |
| |
| |
| |
Building a USB Adapter | |
| |
| |
Starting Materials | |
| |
| |
Strategy | |
| |
| |
Implementation | |
| |
| |
| |
Replacing a Broken Power Supply | |
| |
| |
Diagnosing a Broken Power Supply | |
| |
| |
Replacing the Power Supply | |
| |
| |
Strategy | |
| |
| |
Procedure | |
| |
| |
Building the Xbox Power Cable | |
| |
| |
Installing the Replacement Power Supply | |
| |
| |
Operating with the Replacement Power Supply | |
| |
| |
Debugging Tips | |
| |
| |
| |
The Best Xbox Game: Security Hacking | |
| |
| |
First Encounters with a Paranoid Design | |
| |
| |
To Snarf a ROM | |
| |
| |
An Encounter with Microsoft | |
| |
| |
Analyzing the ROM Contents | |
| |
| |
| |
A Brief Primer on Security | |
| |
| |
Who Needs Security, Anyways? | |
| |
| |
A Brief Primer on Cryptography | |
| |
| |
Classes of Cryptographic Algorithms | |
| |
| |
SHA-1 Hash | |
| |
| |
TEA | |
| |
| |
RC-4 | |
| |
| |
RSA | |
| |
| |
The Rest of the Picture | |
| |
| |
| |
Reverse Engineering Xbox Security | |
| |
| |
Extracting Secrets from Hardware | |
| |
| |
Eavesdropping a High Speed Bus | |
| |
| |
Tapping the Bus on a Budget | |
| |
| |
Building the Data Logger | |
| |
| |
Determining the Bus Order and Polarity | |
| |
| |
Making Sense of the Captured Data | |
| |
| |
| |
Sneaking in the Back Door | |
| |
| |
Back Doors and Security Holes | |
| |
| |
Visor Jam Table Attacks | |
| |
| |
MIST Premature Unmap Attack | |
| |
| |
Microsoft Retaliates | |
| |
| |
Reverse Engineering v1.1 Security | |
| |
| |
The Threat of Back Doors | |
| |
| |
| |
More Hardware Projects | |
| |
| |
The LPC Interface | |
| |
| |
LPC Interface on the Xbox | |
| |
| |
Using the LPC Interface | |
| |
| |
The Other 64 MB of SDRAM | |
| |
| |
Xbox VGA | |
| |
| |
Mass Storage Replacement | |
| |
| |
| |
Developing Software for the Xbox | |
| |
| |
Xbox-Linux | |
| |
| |
Installing Xbox-Linux | |
| |
| |
"Project B" | |
| |
| |
OpenXDK | |
| |
| |
| |
Caveat Hacker | |
| |
| |
Caveat Hacker: A Primer on Intellectual Property | |
| |
| |
| |
Classical Intellectual Property Law: An Overview | |
| |
| |
Copyright | |
| |
| |
Patent | |
| |
| |
Trade Secrets | |
| |
| |
The Constitutional Copyright Bargain | |
| |
| |
The Traditional View of Reverse Engineering | |
| |
| |
Trade Secrecy and "Improper Means" | |
| |
| |
Copyright Law and the Problem of Intermediate Copying | |
| |
| |
Patent Law | |
| |
| |
New Challenges for Reverse Engineers | |
| |
| |
The Digital Millennium Copyright Act and the Problem of Unauthorized Access | |
| |
| |
Unauthorized Access | |
| |
| |
Circumvention Technologies | |
| |
| |
Navigating the DMCA's Exemptions | |
| |
| |
1201(f): reverse-engineering for interoperability | |
| |
| |
1201(g): encryption research | |
| |
| |
1201(j): security research | |
| |
| |
End-User License Agreements and Contractual Prohibitions on Reverse-Engineering | |
| |
| |
Trade Secrets and the Economic Espionage Act | |
| |
| |
The Responsible Hacker: Ignorance Is No Defense | |
| |
| |
Civil and Criminal Offenses and Penalties | |
| |
| |
Reverse Engineering as "The Freedom to Tinker" and Other Legal Issues | |
| |
| |
| |
Onward! | |
| |
| |
The Hacking Community | |
| |
| |
Hacking Fora | |
| |
| |
Making a Contribution | |
| |
| |
Trusted Computing | |
| |
| |
Taking a Step Back | |
| |
| |
Palladium Versus TCPA | |
| |
| |
Hacking the Trusted PC | |
| |
| |
Looking Forward | |
| |
| |
Concluding Thoughts | |
| |
| |
| |
Where to Get Your Hacking Gear | |
| |
| |
Vendors for Hobbyists | |
| |
| |
Prepared Equipment Order Forms | |
| |
| |
| |
Soldering Techniques | |
| |
| |
Introduction to Soldering | |
| |
| |
Use Flux | |
| |
| |
Starter Tips | |
| |
| |
Surface Mount Soldering | |
| |
| |
Technique for Simple Components | |
| |
| |
Technique for Complex Components | |
| |
| |
Technique for Removing Components | |
| |
| |
| |
Getting into PCB Layout | |
| |
| |
Philosophy and Design Flow | |
| |
| |
Refining Your Idea | |
| |
| |
Schematic Capture | |
| |
| |
Board Layout | |
| |
| |
General Placement and Routing Guidelines | |
| |
| |
Leave Space for Via Fanouts on Surface Mount Devices | |
| |
| |
Decoupling Capacitors Fit Nicely Under SMD Pads | |
| |
| |
Know Your Special Traces | |
| |
| |
Circuit Boards Make Fine Heatsinks | |
| |
| |
Establish Preferred Routing Directions for Each Layer | |
| |
| |
Stack a Board with Orthogonal Layers | |
| |
| |
On Two-Layer Boards, Use Fingers to Bus Power | |
| |
| |
Hints on Using an Auto-Router | |
| |
| |
CAD Tools | |
| |
| |
Board Fabrication Companies | |
| |
| |
Sierra Proto Express | |
| |
| |
Data Circuit Systems | |
| |
| |
Advanced Circuits | |
| |
| |
Alberta Printed Circuits | |
| |
| |
Starter Projects | |
| |
| |
| |
Getting Started with FPGAs | |
| |
| |
What Is an FPGA? | |
| |
| |
Designing for an FPGA | |
| |
| |
Project Ideas | |
| |
| |
Where to Buy | |
| |
| |
| |
Debugging: Hints and Tips | |
| |
| |
Don't Panic! | |
| |
| |
Understand the System | |
| |
| |
Observe Symptoms | |
| |
| |
Common Bugs | |
| |
| |
Recovering from a Lifted Trace or Pad | |
| |
| |
| |
Xbox Hardware Reference | |
| |
| |
Power Supply Pinout | |
| |
| |
Video Connector Pinout | |
| |
| |
USB Connector Pinout | |
| |
| |
Ethernet Connector Pinout | |
| |
| |
ATA Connector Pinout | |
| |
| |
DVD-ROM Power Connector | |
| |
| |
LPC Connector | |
| |
| |
Fan Connector | |
| |
| |
Front Panel Connector | |
| |
| |
Index | |