To main content

App-Hack: Age of War (Game)

Veröffentlicht von Benjamin Marwell am

Hex-EditorViele Android-Games sind eine schöne Unterhaltung für zwischendurch und damit äußerst beliebt. Leider gibt es auch viele Softwarehersteller, die jene Spielsucht ausnutzen wollen, um übermäßig Geld zu verdienen. Dabei geht es nicht um kleine Euro-Beträge zum Kauf der Apps, sondern In-App-Bezahlung, um das Spiel überhaupt weiterspielen zu können. Eines davon ist Age of War von den Dreamstudios.


Einfaches Konzept

Diese Spiele haben oft eine große Gemeinsamkeit, die sie verbindet: Es gibt ein sehr einfaches Spielkonzept, welches den Spieler sehr schnell fesselt. Das klappt oft erstaunlich gut. Bei Age of War etwa schickt man sich kleine Männchen oder andere Einheiten entgegen, bis ein Spieler irgendwann so weit vorgedrungen ist, das dessen Basis zerstört ist. Das ist fast schon ein Geduldsspiel, macht aber trotzdem Spaß. Jedenfalls eine Zeit lang.

Spielszene aus Age of War
Spielszene aus Age of War

Geld oder Zeit!

Die Frechheit bei diesem Spiel: Es ist ohne Kauf der Spielwährung kaum zu bezwingen, möchte man nicht Wochen damit verbringen, die begehrten Münzen zu sammeln. Der Trick dabei: Viele Spieler möchten das Spiel weiterspielen (einfaches Konzept = Suchtfaktor!) und sind daher bereit, ein paar Münzen gegen Echtgeld zu kaufen. Wie man auf dem folgenden Bild sieht, gibt es allerlei teure Upgrades - und wenig Münzen durch das reguläre Spiel.

Upgrade in Age of Wars: Knappe Münzen
Upgrades in Age of Wars: Knappe Münzen

Die Münzen können aber auch gekauft werden. Wie man sieht kommt man mit 3.000 Münzen nicht sehr weit, lediglich ein Upgrade ist drin - und es ist noch nicht einmal sehr hoch! Die Preise (Stand 25. 07. 2012) für die aktuellen In-App-Käufe über den Android Play Store lassen sich hier einsehen:

Münzkauf in Age of War
Münzkauf in Age of War

Wie man sieht handelt es sich also um eine durchaus teure Angelegenheit, nur um ein paar Bytes zu ändern - die Münzwerte. Dabei fiel mir sofort ein, dass der Hersteller möglicherweise so unnachsichtig war, und den Münzbestand lokal auf dem Telefon speichert. Nachgucken kostet ja nichts - auf gehts!

Hex Editor - auch 2012 klappt es noch!

Kurz gerechnet: Der dezimale Wert 1.322  entspricht 0x052a  in Hex (kurz: 05 2a ). Suchen wir doch mal! Dafür brauchen wir zwei Tools: Einen Dateimanager wie etwa den OI File Manager, sowie einen Hexeditor aus dem Play Store. Sind diese installiert, macht man sich auf die Suche nach dem Spielstand.

Die Dateien liegen im Verzeichnis /mnt/sdcard/dreamstudio/ageofwar/ . Gesucht ist die Datei aow_shop . Diese wird nun mit dem frisch installierten Hexeditor geöffnet.

Öffnen des Spielstandes von Age of War
Öffnen des Spielstandes von Age of War

Nun hatte ich mich schon darauf eingestellt, die Suchfunktion betätigen zu müssen. Aber das erwies sich als völlig unnötig - mir sprangen sofort das dritte und vierte Byte ins Auge: 05 21 . Gut, machen wir doch mal etwas ganz wesentlich größeres daraus. Schnell ein 2f  davor gesetzt und die 05  durch ein ff  getauscht - fertig. Speichern nicht vergessen!

Hexeditor: Münzenbestand anpassen
Hexeditor: Münzenbestand anpassen

Spiel laden und staunen

Nun sollte man einen höheren Münzbetrag im Spiel sehen. Ich hielt es aber für unwahrscheinlich, dass ein Kauf nicht mehr macht, als zwei bis vier Bytes anzufassen - das wäre viel zu einfach, es gingen potentielle Käufer verloren. Meine Vermutung: Eine digitale Signatur hat sich irgendwo versteckt. Zu meiner Überraschung ist das aber nicht der Fall - im Shop klimpert das Geld nur so vor sich hin.

Viel kostenloses Geld bei Age of War
Viel kostenloses Geld bei Age of War

Cheat? Sicherheitslücke?

Nun darf man bei diesem Vorgehen nicht vergessen: Man bringt den Spielehersteller um sein (verdientes) Geld. Zwar ist mein Schuldgefühl bei diesem Spiel nicht so hoch, da es faktisch ein Wucher ist, für eine Byteänderung so viele Euros zu verlangen. Andererseits sollte dieser Artikel auch nur aufzeigen, wie einfach es sich einige Entwickler machen. In diesem Fall zu einfach. Da kann man dann nur den Kopf schütteln und sagen - selbst Schuld!

Noch schlimmer: Der selbe Hersteller verwendet im Spiel Epic Defense - The Elements genau das gleiche Shopsystem, welches mit genau der gleichen vorgehensweise manipuliert werden kann.

Abwehrmöglichkeiten

Wer selbst Software entwickelt, möchte solche Szenarien vermeiden. Eine Idee wäre es etwa, eine digitale Signatur anzufügen. Diese könnte als Returnstring eines XML-Servlets nach App-Kauf auf dem Telefon gespeichert werden. Dieses vorgehen ist leicht umzusetzen und kostet dank offener Standards - etwa PGP/GnuPG - keinen Cent.

Außerdem wäre es ebenso möglich, die Münzwerte auf einem Server zu speichern, was aber eine dauerhafte Internetverbindung zum Spielen vorraussetzt - das ist nicht einfach umgesetzt.

Egal welche der beiden Lösungen: einen solch einfachen Angriff auf die App wie diesen hätten sie allemal verhindert. Ob es sich für den Hersteller lohnt, ist die andere Frage. Sicherlich gibt es genug unbedarfte Anwender, die mit ihrer Kreditkarte tausende von Euros dem Hersteller zuspielen.

Weblinks

Interessanterweise hatte Apple ganz andere Probleme im iTunes App-Store - hier konnte man In-App-Käufe mit einem Hack generell kostenlos tätigen. Das Update dazu kommt erst mit iOS 6. Natürlich ist auch dieses Vorgehen höchstwahrscheinlich illegal.