"Hakowanie" gry (Gears of War 3) według CSI: NY
Oglądałem wczoraj (nagrany w czwartek) odcinek Kryminalnych zagadek Nowego Jorku (8 seria, odcinek 15) Znalazło się tam coś, co mnie jako programistę PHP zainteresowało - chodzi o "hakowanie" gry Gears of War 3 na konsoli Xbox 360. Pokazany został fragment kodu źródłowego owego "haka".
03.07.2012 | aktual.: 15.01.2016 15:42
O co chodzi (Uwaga, spoiler)
Odcinek opowiada o śmierci pracownika firmy windykacyjnej, który okazuje się być byłym graczem komputerowym. Z kariery musiał zrezygnować z powodu choroby kciuków z powodu zbyt długiego grania (hę?). Zostaje zatem sędzią organizowanych przez siebie amatorskich zawodów w grach, których zwycięzca ma wziąć udział w profesjonalnych zawodach. Zwycięzca jednak znany jest już wcześniej, trzeba mu tylko jakoś pomóc. Tutaj właśnie zaczyna się historia "hakowania" gry Gears of War 3:
Hak polega na zmniejszeniu obszaru trafienia jednego z graczy o połowę i zwiększeniu u innych dwukrotnie tak, aby ów jeden gracz wygrał pojedynek (jego jest ciężko trafić, za to on sam nie musi się przykładać do celowania).
Jak zhakować grę Ano tak według twórców serialu tak:
I jeszcze jedno ujęcie z dalszej części odcinka:
Zrobiłem naprawdę wielkie oczy jak to zobaczyłem, bo nie bardzo wiem, jak "zhakować" Gears of War 3 za pomocą kodu źródłowego (HTML) jakiejś strony internetowej :)
Dla czytelników, którzy nie są zorientowani - tak, jest to kod źródłowy jakiejś strony internetowej. Podobny kod można zobaczyć podglądając źródło dowolnej strony (odpowiednia opcja znajduje się zazwyczaj w menu kontekstowym w przeglądarkach internetowych).
Całość wydała mi się na tyle ciekawa, że postanowiłem się tym z Wami podzielić. Ale to jeszcze nie koniec. Kod źródłowy jest poskracany (powycinane są jego fragmenty ze środka, przez co jest także uszkodzony). Postanowiłem też poszukać jego źródła.
Poszukiwania Postanowiłem poszukać strony internetowej, z której pochodzi ten kod źródłowy. Próbowałem na rożne sposoby używając różnych fragmentów kodu ze zrzutów które widać powyżej. Dość unikalny jest generator:
<
meta
name
=
"GENERATOR"
content="4.77C-CCK-MCD {C-UDP; EBM-APPLE} (U; PPC) [Netscape]">
Choć i on jest ucięty - prawidłowo powinien wyglądać tak:
<
meta
name
=
"GENERATOR"
content="Mozilla/4.77C-CCK-MCD {C-UDP; EBM-APPLE} (Macintosh; U; PPC) [Netscape]">
Znalazłem w ten sposób kilka stron internetowych i choć miały zbliżony kod, nie były one tym źródłem.
Szukałem też po innych charakterystycznych elementach, jak Logopanel.gif, czy title1.jpg - osobno nie dawały ciekawych wyników, razem w ogóle nic nie udało się znaleźć. Oczywiście Google nie indeksuje źródeł stron, ale liczyłem, że w ten sposób może się uda.
Po dłuższych poszukiwaniach już miałem się poddać, ale postanowiłem spróbować jeszcze Google Images informacjami z tego fragmentu:
Wpisałem nazwę poszukiwanego pliku w wyszukiwarkę i przefiltrowałem wyniki podając dokładne wymiary szukanego obrazka i bingo. Źródłem haka do gry Gears of War 3 okazało się źródło strony propgraphics.inc.<
img
src
=
"Logopanel.gif"
border
=
"0"
height
=
"222"
width
=
"346"
>
Google zwróciło tylko dwa wyniki z jednej strony a jej kod źródłowy zgadza się z kodem z kartki z serialu:
I wygląd strony, gdyby link przestał kiedyś działać:
Porównanie kodu Kod źródłowy strony został skopiowany z pominięciem łamania linii, następnie wydrukowany czcionką przypominającą pismo odręczne. Znaki spacji zostały pozostawione, stąd duże odstępy w dolnej części strony.
Poniżej znajduje się porównanie oryginalnego kodu i tego z serialu:
Wycięte zostały słowa kluczowe, opis, autor i słowo Macintosh (ciekawe, czemu APPLE już nie :) ).
Podsumowanie CSI (wszystkie serie) stoi na dość wysokim poziomie. Choć w wielu miejscach pojawiają się dość zaskakujące rzeczy, kodu HTML akurat bym się tutaj nie spodziewał. Wystarczyło użyć kodu C/C++ czy podobnego, a nikt by nie zauważył. :) Albo inaczej - wystarczyło podpytać kogoś średnio obytego z programowaniem.
Aktualizacja:
Maciek właśnie napisał mi (co powiedział mu z kolei Sebastian - kolega z redakcji PCLab.pl), że Xbox na którym w serialu śledczy prowadzili rozgrywkę nie jest podłączony do zasilania i faktycznie - tak wygląda Xbox 360 Elite w serialu:
A tak podłączenie zasilania do konsoli:
Zasilanie konsoli na której grali nie jest podłączone ;)
Co więcej, na zdjęciu widać, że jednocześnie podłączone są kable HDTV i HDMI, co przy oryginalnym kablu HDTV nie jest możliwe - musiał zostać użyty zamiennik.
Daniel Kukieła
Wpis pierwotnie ukazał się na stronie PCCode.pl