V Xboxu 360 byla zajímavá bezpečnostní trhlina
Jistý „Anonymous Hacker“ objevil v Xboxu 360 zajímavou bezpečnostní díru. Její využití není formou nějakého vzdáleného útoku po síti, je potřeba mít ke konzoli fyzický přístup. Díra spočívá v možnosti spustit na konzoli v tzv. „Hypervisor režimu“ nepodepsaný (tedy vlastně libovolný) kód a týká se kernelu s číslem 4532 (vydáno 31. října 2006) i následně vydaného 4548 (z 30. listopadu).
Situace je taková, že všechny hry a aplikace mají běžet v neprivilegovaném režimu s digitálním šifrovaným podpisem od Microsoftu. V privilegovaném (hypervisorovém) režimu běží pouze malý hypervisor, jež se stará o řádné přidělování paměti a šifrovací a dešifrovací služby. Politika v něm implementovaná nařizuje, aby každý spustitelný kód byl šifrovaný a „pouze pro čtení“, takže neprivilegovaný kód nemůže změnit kód spustitelný. Navíc proti změně kódu v paměti je tento ještě šifrován unikátním klíčem, který se při každé instanci generuje znovu.
„Anonymous Hacker“ však přišel na fintu, která spočívá v interakci neprivilegovaného kódu s hypervisorem skrze instrukce systémového volání, kde není dostatečně ošetřeno předávání parametrů. Stačí přidat na patřičné místo jeden šikovný, který daný příkaz ignoruje, ale jiná instrukce, ke které nedopatřením projde, jej pak zpracovává. Ptáte se, k čemu je taková díra dobrá? Inu, takto lze totiž v Xboxu 360 spustit třeba i alternativní operační systém :-).
Problém byl nicméně nahlášen Microsoftu, pokus o „první kontakt“ byl učiněn už loni 15. prosince. 30. prosince pak následovala veřejná demonstrace zneužití této díry, načež 3. ledna byl výrobce skutečně úspěšně kontaktován i s detaily exploitu. Šest dní poté byla vydána záplata a 28. února byla celá věc profláknuta veřejně včetně ukázkového kódu.