Flash Dateien in Flash manipulieren

Nabend die Damen und Herren!

(btw, hier eine Frage für die Denker unter Euch :))

Dies ist mein erster Post, wirft mir allerdings bitte nicht vor das ich weder die SuFu noch Google benutzt habe.
Sitzte hier auch schon seit guten 3-4 Stunden dran und bin, mal wieder, völlig ratlos.

Vorab: ich habe nichts illegales vor, mein Vorhaben verstößt weder gegen eine AGB noch gegen etwas anderes das via "klick mich wenn du mir zustimmst" abgesichert wurde, quasi eine legale Aktion auf umwegen. Um es genauer auszudrücken will, bzw soll ich nur 'testen' (mit der mündlichen Bestätigung des Entwicklers), in eine (online) Flash-Anwendung einzugreifen (welche im Intranet angeboten wird), von welcher ich weder den AS kenne, noch nähere Ahnung des Aufbaushemas habe.

Erstmal meine Problematik:
In einem Flash ist ein Button. Mit klick auf ihn wird die Nummer "5" (beispielweise nur, ob Integer, String, etc. ist erstmals egal) weitergegeben, an eine Datenbank/ PHP, wasauchimmer (an was genau es weitergegeben wird weiss ich vorerst nicht!). Anschließend wird im Flash von irgendwoher die Zahl "50" ausgelesen (woher weiss ich nicht!), in welche die "5" nach dem Klick addiert wurde (sprich vor dem Klick auf den Button war die Zahl die gespeichert war noch 45).

Jetzt: wenn ich mit einem Web-Debugging-Proxy das ganze via Breakpoints beobachte, dann seh ich einen Request der einen Zahlen-Buchstabenwert beeinhaltet, darauf eine Response (Antwort) der ein wirres Zahlenchaos beeinhaltet (bsp: 4546/6453/645/56354/6535). Jede Zahl in dieser gut 1500-2000 Zeichen langen Textreihe (ohne Zeilenumbruch) steht für einen anderen Wert, den ich aber nicht suche. Die "45" bzw "50" dort zu finden ist recht einfach (Suchen & Ersetzen). Wenn ich jetzt in der Antwort an den Server (bzw ans Flash) die "50" durch eine "99" ersetze und das ganze abschicke, dann kommt auf der folgenden Seite, auf der man die ursprünglich "50" sehen sollte (den aktuellen Wert eben des Integers (oder Strings, etc.)) die "99" gesehen - ALLERDINGS wird der Wert "99" nicht gespeichert, die manipulierte Antwort wird lediglich nur im Feld angezeigt aber nicht gespeichert.
Ein Druck auf F5 - in dem Feld wo die gewollte "99" steht, lauert die "50", welche - normalerweise korrekt, aber von mir nicht gewollt ist.

Dies ist eine von ein paar Varianten die ich bis jetzt ausprobiert habe, um Werte zu manipulieren, injektieren scheint nicht wirklich sonderlich zu klappen über die Varianten die ich bis jetzt probiert habe - allerdings soll ich auf dieser Art und Weise (via Debugging) an das Ziel kommen, soweit es mir gesagt wurde ist es auf diesem Weg möglich die (bsp) "50" in eine "99" zu verwandeln oder gar ein "HALLO" in dem Feld zu sehen wo eigentlich nur Zahlen stehen sollten (sofern String).

Würde mich über Ideen freuen, zumal ich mit meinen Fähigkeiten so langsam gegen eine Betonwand laufe.

MfG,
Proxymity
 
Zuletzt bearbeitet:
Die ganze Änderung ist Clientside.
Dadurch wirst du nichts erreichen.


Bin mir auch nicht gerade sicher,
ob das Thema hier behandelt werden darf.
Warten wir auf die Moderatoren.
 
Was du manipulierst um die Anzeige zu ändern ist ja erstmal nur der Inhalt einer Variable. Ist die Variable die ausgegeben wird, nur eine Kopie der Variable, der im Endeffekt der gespeicherte Wert entnommen wird, manipulierst du schlicht und einfach die falsche. Ausserdem dürfte es doch viel einfacher sein die Datenverbindung zwischen dem Flash, das clientseitig ausgeführt wird, und dem Server mittels MITM-Angriff zu manipulieren. Du musst dann nur die vom Flash gesendeten Daten abfangen und entsprechend modifizieren. Alternativ kannst du auch direkt den geöffneten Socket manipulieren, der ja notwendig ist, damit überhaupt Daten zu einem Server gesendet werden können. Oder hab ich dich da jetzt falsch verstanden? Naja, ist spät... ich geh wohl eh besser schlafen und schau lieber morgen wieder hier rein. ;)
 
Erstmal danke für die schnellen Antworten! ;)

Was du manipulierst um die Anzeige zu ändern ist ja erstmal nur der Inhalt einer Variable. Ist die Variable die ausgegeben wird, nur eine Kopie der Variable, der im Endeffekt der gespeicherte Wert entnommen wird, manipulierst du schlicht und einfach die falsche.
An sich richtig, ja, nur erfolgt der input durch das Flash, also muss ja auf einem Weg das Flash an Server schicken, ebenso wie der Button, erst durch drücken des Buttons wird der Wert übertragen (und der Wert ist nicht fest, sprich es kann mal eine 5 sein, mal eine 10, mal eine 36573), demnach muss es ja eine Kommunikation des Flashs mit dem Server geben, in welcher er den Input überträgt, in genau diesen muss ich irgendwie hineingelangen.

Die MITM Geschichte ist mir da nicht so geläufig, grenzt an Neuland- Gebiet für mich, müsste mich da erstmal notdürftig einarbeiten, trotzdem danke für den Hinweis, werd mich informieren!

MfG,
Proxymity



Edit 1: Habe mir mal MITM zu herzen genommen, besser gesagt erstmal Wireshark angeschaut, was (unter OSX) meine Netzwerkkarte nicht erkennt... und dann (unter Win7) Abel, welches schon eher das scheint, nach dem ich suche. Hab jetzt seit gut 2 Stunden Tutorials gefuttert und bin immernoch nicht schlauer wie man mittels Abel & Co. im Internet Pakete snifft (der Server ist von hieraus nicht lokal mit mir verbunden, muss extern darauf zugreifen).

Ich stelle mir das auch nicht so einfach vor mit nem Sniff-Tool so einfach mirnichts dirnichts im Internet unfug zu treiben... wär nen dicker Hund wenn jeder dahergelaufene mal eben hier und da Pakete abfangen könnte und die Post spielen würd - was, nach meinem jetzigen Stand - ja auch ohne weiteres garnicht möglich ist, oder?

MfG,
Proxymity
 
Zuletzt bearbeitet:
Morgen!

Um das ganze nochmals aufzugreifen; in der Zwischenzeit hab ich mir mal hier, mal da ein paar Sachen über MITM angesehen, ein paar Tools ausprobiert, aber so wirklich klappen tut das nicht.

Das wohl einfachste Tool (unter Mac) "ihaxgamez", zumindest kann man somit am einfachsten durch die Eigabe eines Wertes die "richtige" Variabel herausfinden; wenn man diesen manipuliert wird es primär im Flash angezeigt (man merkt auch an der Ladezeit des Flashs deutlich das etwas geschieht, es braucht merklich länger (merklich in diesem Fall = 1/2 bis 1 Sekunde länger, und es liegt nicht an der schlechten Verbindung ;)), allerdings wird auch wie bei der debugging Methode der eingegebene Wert im Feld angezeigt, wird aber auch hier nicht gespeichert.

Durch Cain & Co. konnte ich nicht schlauer werden, "Wireshark" mag meine Netzwerk- Karte nicht, auch nach längeren Problem-lösung-suchen und einige andere Tools greifen nur lokal zu, was die Sache etwas kniffliger gestaltet.

MfG,
Proxy
 
Zurück
Oben