AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Code-Injection JMP Adresse ermitteln...

Delphi Code-Injection JMP Adresse ermitteln...

Ein Thema von xice · begonnen am 20. Mai 2009 · letzter Beitrag vom 18. Jun 2009
Antwort Antwort
Fridolin Walther

Registriert seit: 11. Mai 2008
Ort: Kühlungsborn
446 Beiträge
 
Delphi 2009 Professional
 
#1

Re: Delphi Code-Injection JMP Adresse ermitteln...

  Alt 20. Mai 2009, 19:02
Das kann nicht funktionieren.
Delphi-Quellcode:
procedure Inject;
begin
  asm
    push mem <-- Sprungstelle zum Code-Cave ... Adresse wird weiter unten im Quelltext ermittelt
    ret
    nop
  end;
end;
Das bedeutet nicht, daß da mem durch die Adresse die in mem steht getauscht wird. Dazu müsste sich der Code selbst modifizieren zur Laufzeit. Stattdessen wird daraus:
Delphi-Quellcode:
push dword ptr [Adresse von mem]
ret
nop
Da an der Adresse im fremden Prozess aber irgendetwas steht nur wahrscheinlich nicht die Adresse der Code Cave, wird entsprechend der falsche Wert gelesen und auf den Stack gepackt .

Lösung: Mach Inject zu nem Byte Array. In das packst die korrekten Opcodes (Intel Manual) und die korrekte Adresse zu der gesprungen werden soll und schreibst das Byte Array in den Zielprozess.
Fridolin Walther
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz