• Trainer
  • Forums
  • Suche
  • Members
  • Kalender
  • Hilfe
  • Extras
Forum stats
Show team
Neue Beiträge ansehen
Heutige Beiträge ansehen
Home of Gamehacking - Archiv
Login to account Create an account
Login
Benutzername:
Passwort: Passwort vergessen?
 



  Home of Gamehacking - Archiv Coding Visual Basic 6, VB.NET
« Zurück 1 2 3 4 Weiter »
Code Injekten in VB

Ansichts-Optionen
Code Injekten in VB
iNvIcTUs oRCuS Offline
Super Moderator
****
Beiträge: 2.688
Themen: 529
Registriert seit: Aug 2010
Bewertung: 19
#12
08.07.2011, 20:44
Ja ne is schon klar. CE handiert ja nunmal mit "Allocated Memory" um seine Scripts auszuführen. Dieser Speicher is ja nunmal dynamisch.

Ich kann mich noch an eine Funktion in CE v5.6.1 erinnern da konnte man seine Codecave direkt vorgeben, also wo diese gemacht werden soll.
Im Debuggerfenster/MemoryView mit rechts geklickt und CE hat nen Jump von der gerade markierten Adresse zu einer anderen Adresse gemacht wo dann die Codecave sein soll. Und das alles inklusive Originalcode und dem Rücksprung. Schade das es diese Funktion nicht mehr gibt.

Ich mache die Codeinjections nun immer folgendermaßen. An dem Befehl den ich mit meinem Jump zu meiner Codecave mache, einen Befehl davor einen Breakpoint gesetzt und die Codecave manuell geschrieben.

Aber das mit dem dynamischen Speicher ist auch kein Problem. Man kann das nämlich auch ganz komfortabel mit in eine Codecave packen, also die Berechnung des Rücksprungs.

Beispiel:
[code=ASM]
Originalcode
7476A4B7 - 8B 42 20 - mov eax,[edx+20]
7476A4BA - 89 41 10 - mov [ecx+10],eax

Geänderte Bytes
7476A4B7 - E9 44 5F C9 8B - jmp 00400400
7476A4BC - 90 - nop

Codecave würde normalerweise so aussehen
00400400 - 8B 42 20 - mov eax,[edx+20]
00400403 - 89 41 10 - mov [ecx+10],eax
00400406 - E9 B1 A0 36 74 - jmp 7476A4BC

Aber so funktionierts auch
00400400 - 8B 42 20 - mov eax,[edx+20]
00400403 - 89 41 10 - mov [ecx+10],eax
00400406 - 50 - push eax
00400407 - B8 BC A4 76 74 - mov eax, 7476A4BC
0040040C - FF E0 - jmp eax

Da aber hier das EAX Register "überschrieben" wird müssen wir nach dem Jump zur Codecave folgendes noch machen...
7476A4BC - 58 - pop eax
[/code]

Das bedeutet dann natürlich das bei einem 5 Byte Befehl der durch den Sprung zur Codecave überschrieben wird, kein Platz mehr ist für das zurückholen des Wertes des EAX Registers vom Stack. Man müsste also noch nen weiteren Befehl mit in die Codecave nehmen.
Irren ist menschlich. Aber wer richtigen Mist bauen will, braucht einen Computer !!!

Traineranfragen per PM werden prinzipiell gelöscht...

[Bild: signatur6akm7.gif]
Suchen
Antworten
Share Thread:            


Nachrichten in diesem Thema
Code Injekten in VB - von chesar - 07.07.2011, 19:40
RE: Code Injekten in VB - von DNA - 07.07.2011, 20:20
RE: Code Injekten in VB - von iNvIcTUs oRCuS - 07.07.2011, 20:38
RE: Code Injekten in VB - von Acubra - 08.07.2011, 01:16
RE: Code Injekten in VB - von DNA - 07.07.2011, 21:40
RE: Code Injekten in VB - von iNvIcTUs oRCuS - 08.07.2011, 02:20
RE: Code Injekten in VB - von Acubra - 08.07.2011, 02:28
RE: Code Injekten in VB - von iNvIcTUs oRCuS - 08.07.2011, 03:06
RE: Code Injekten in VB - von DNA - 08.07.2011, 08:35
RE: Code Injekten in VB - von iNvIcTUs oRCuS - 08.07.2011, 13:19
RE: Code Injekten in VB - von DNA - 08.07.2011, 16:16
RE: Code Injekten in VB - von iNvIcTUs oRCuS - 08.07.2011, 20:44

  • Druckversion anzeigen
  • Thema abonnieren


Benutzer, die gerade dieses Thema anschauen:
1 Gast/Gäste

  • Kontakt
  • Forum team
  • Forum stats
  • Nach oben
 
  • RSS-Synchronisation
  • Lite mode
  • Home of Gamehacking - Archiv
  • Help
 
Forum software by © MyBB - Theme © iAndrew 2014



Linearer Modus
Baumstrukturmodus