AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datei im Ram entschlüsseln

Ein Thema von napsterxx · begonnen am 4. Aug 2008 · letzter Beitrag vom 13. Aug 2008
Antwort Antwort
Seite 2 von 2     12   
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 11:46
Also ich habe nun die entschlüsselte Datei als TMemoryStream vorliegen ... und jetzt?
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
helgew

Registriert seit: 30. Jul 2008
125 Beiträge
 
#12

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 12:22
Etwas aus dem Speicher ausführen? Nun da gibt es schon gewisse Probleme. Wenn das eine normale .exe sein soll, musst du das tun, was auch ein Starten aus dem System heraus machen würde: einen Prozess erzeugen, Umgebungsvariablen bereitstellen und dann die main() des Programmes ausführen. Man muss also irgendwie den Code direkt im ram vorliegen haben (oder eben nur den Einsprungpunkt für die main() finden). Am einfachsten müsste das mit einem prozeduralen Aufruf funktionieren, dazu erstellst du eine Variable eines prozeduralen Typs, setzt diesem die richtige Adresse ( Stream.Memory + Offset ) und rufst das ganze auf
( oder mit Assembler
PUSH EAX
MOV EAX, <address>
CALL EAX
POP EAX )
Bei 64bit-Systemen gibt es meines Wissens nach das NX-Flag "no execute", welches Codeausführung im Variablenspeicher verbietet, da musst du dann wirklich eine dll mitspeichern, aus dem Stream extrahieren, auf die Platte speichern und mit LoadLibrary zugänglich machen. Viel Spaß
  Mit Zitat antworten Zitat
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 12:25
Habe zwar kein Wort verstanden à la aber Danke
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#14

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 15:15
Einfach mit CreateProcess (CREATE_SUSPENDED), GetThreadContext arbeiten, dann alle Sections der EXE im RAM auslesen, diese mittels WriteProcessMemory in den Zielprozess bringen und mittels ProtectMemory ausführbar machen. Dann nurnoch mit SetThreadContext den alten Context wieder setzen und den Mainthread des Prozesses mit ResumeThread wieder fortsetzen.

Gruß Zacherl
  Mit Zitat antworten Zitat
hboy

Registriert seit: 16. Jan 2004
364 Beiträge
 
#15

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 15:59
@Zacherl du bringst es ja schon wieder auf den Punkt *g*
Power is nothing without TControl
  Mit Zitat antworten Zitat
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 17:59
Könnte meinen letzen Beitrag einfach duplizieren und anstelle von diesem hier benutzen

Ich suche mich einfach mal durch
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
Benutzerbild von OldGrumpy
OldGrumpy

Registriert seit: 28. Sep 2006
Ort: Sandhausen
941 Beiträge
 
Delphi 2006 Professional
 
#17

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 19:14
Warum nur lese ich in letzter Zeit immer häufiger Beiträge in denen Anfänger unbedingt Unternehmungen starten wollen, die weit jenseits ihrer Fähigkeiten und Kenntnisse liegen? Ich geh ja auch nicht hin und sag "heute besteig ich den Mount Everest, nächste Woche flieg ich dann auf den Mond". Na gut, sagen könnte ich das schon, aber realistisch wärs halt nicht

Wo sind nur meine Pillen...
"Tja ja, das Ausrufezeichen... Der virtuelle Spoiler des 21. Jahrhunderts, der Breitreifen für die Datenautobahn, die k3wle Sonnenbrille fürs Usenet. " (Henning Richter)
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#18

Re: Datei im Ram entschlüsseln

  Alt 12. Aug 2008, 19:31
Diese Überschätzung wollte ich mit meinem Beitrag andeuten. Nichtsdesto trotz stimmen die Anweisungen, zu denen man auch bei einer Google Suche entsprechenden Code findet ..
  Mit Zitat antworten Zitat
napsterxx

Registriert seit: 18. Mär 2007
Ort: Borland
556 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Datei im Ram entschlüsseln

  Alt 13. Aug 2008, 10:32
Anfänger ist relativ.
Es kommt doch immer darauf an mit was man sich schon beschäftigt hat und was nicht. Ich habe mit solchen Dingen noch nie zu tun gehabt, und das will ich ändern. Zudem will ich eigentlich keinen Code sondern es wirklich verstehen. Ich weis nicht für was dieses ganzen Fnktionen sein sollen. Zudem finde ich in der MSDN nur Beschreibungen was die einzelnen Parameter sind, aber irgendwie nicht wozu genau und was genau diese Funktion macht.
Du derefernzierst p2 einmal und weißt die Adresse von i zu. Das heißt p2 (also der Zeiger auf einen Zeiger) zeigt auf den Zeiger p1 welchen du so auf i zeigen lässt.
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#20

Re: Datei im Ram entschlüsseln

  Alt 13. Aug 2008, 13:25
Vielleicht wäre dann ein Beispielcode genau das richtige für dich, um die Funktionsweise zu verstehen. Die Funktionen der einzelnen APIs lassen sich ja eigentlich schon am Namen erkennen.

Such mal nach Nicos InMemExe!

Gruß Zacherl
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 08:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz