quellcode aus exe-Datei
hi!
mich würde mal interessieren ob es möglich ist den quellcode eines delphi-programms aus der *.exe zu lesen und wenn es möglich ist, wie es geht. :gruebel: thx im voraus! |
Re: quellcode aus exe-Datei
Hi,
dazu gabs hier glaub ich schonma ein paar beiträge. ich glaube, zumindestens teilweise ist es möglich. azu benutzt man sogennate disassembler (glaub ich). |
Re: quellcode aus exe-Datei
Ja den assembler Code das macht man mit einen Disassembler
|
Re: quellcode aus exe-Datei
proceduren und weiteres kriegst du mit folgenden programmen raus:
- DeDe - Resource Hacker (?) Hier ein Disassembler: - W32Dasm einfach ma bei google gucken und runterladen ;) |
Re: quellcode aus exe-Datei
Nein, es ist nicht möglich. Sicherlich, man kann sich die Maschinencode-Befehle mit einem Disassembler anschauen, aber damit wird man keine Freude haben. Variablen, Funktionen, Prozeduren, Klassen, etc. existieren nicht mehr im Maschinencode, und die bekommt man auch nicht mehr so zurück, wie sie ursprünglich geschrieben wurden.
|
Re: quellcode aus exe-Datei
Wenn man Assembler kann kommt schon Freude auf.....
Wer kann Assembler ? gebt mir euer Wissen ! |
Re: quellcode aus exe-Datei
Nein, es kommt auch für denjenigen keine Freude auf, der Assembler kann. Man kann mit einer Million Maschinenbefehlen einfach nichts anfangen, weil es ja z.B. keine Variablennamen gibt (es gibt auch keine Variablen an sich), es gibt keine höheren Programmstrukturen, es gibt einfach fast überhaupt nichts mehr von dem, was ursprünglich den Programmcode in Delphi ausgemacht hat.
|
Re: quellcode aus exe-Datei
Den COde in einer Hochsprache wird man auch nie bekommen, auch nicht mit Dede, das zeigt nur an, welche Prozeduren, Units, Variablen etc. verwendet wurden, mehr nicht.
Aber such mal hier im Forum (hochsprache, dekompilieren , ...) |
Re: quellcode aus exe-Datei
hi !
hier gibts DeDe hier gibts DeDe damit werden Projektdateien erstellt, die man mit Delphi öffnen kann. somit kann man das Design ändern. der sourcecode wird zu 10 % wiederhergestellt. der rest ist Assembler... Gruß Xipe |
Re: quellcode aus exe-Datei
Zitat:
|
Re: quellcode aus exe-Datei
Zitat:
Zitat:
Variablen bilden den Stackframe ... Klar gibt es keine Namen. Man kann auch nicht unterscheiden, ob eine bestimmte Ansammlung von Variablen eine Struktur (record/struct) ist, oder einfach eine aufeinanderfolgende Deklaration verschiedener Variablen. Klassen usw. werden meist schon anhand der RTTI erkannt. Mit spezifischen Tools wie DeDe wird es dann noch ein Stück einfacher, da DeDe natürlich die Strukturen (i.e. Klassen) der Borland-VCL kennt. Aber bitte, die obige Aussage ist so unhaltbar! Zitat:
Wenn also ein Kundiger sein Wissen weitergibt, verschenkt er weit wertvolleres Wissen. Außerdem ist RE (Reverse Engineering) zeitaufwendig und damit auch das Verfassen eines Tutorials. Zitat:
Zitat:
Um es nochmal zu rekapitulieren. Man kann theoretisch auch MS Word disassemblieren (lassen wir mal die rechtliche und/oder moralische Diskussion außen vor), aber man muß dann auch viele Mannjahre dafür veranschlagen. Außerdem bleibt zu bemerken, daß die API-Funktionen, sei es nun in ELF oder PE-Binaries, und manchmal auch Strings die Rettungsanker des Reverse-Engineers im weiten Meer des Assemblercode sind. Dennoch bleibt weiterhin die Aussage, daß Kompilieren sicherlich eine der besten Verschlüsselungen für Sourcecode ist ;) PS: Übrigens, was brächten mir denn die Variablennamen, wenn zB ein Ungar ein Programm geschrieben hätte und er zur Vergabe der Variablennamen ungarische Wörter und Abkürzungen benutzt hätte? |
Re: quellcode aus exe-Datei
Zitat:
Nebenbei wäre ich vorsichtig, jemandem in einer Diskussion zu unterstellen, ungebildet zu sein... Zitat:
|
Re: quellcode aus exe-Datei
Zitat:
Sie (die Funktionen, Variablen und Klassen, insofern nicht wegoptimiert - zB durch Delphis Smartlinking) sind alle noch da, haben zwar keinen Namen (auch das läßt dich mit einem interaktiven Disassembler, wie IDA, ändern) aber sehr wohl eine Bedeutung. Und genau nach dieser sucht man als RE. Übrigens ist der bisher schrecklichste Code, den ich gesehen habe, VB-Code. Das Problem dort ist, daß man quasi mit der Runtime auf "du" sein muß um die Bedeutung der Funktionen zu kennen. Schlecht, wenn man VB aufgrund von schlechten Erfahrungen seit 2 Jahren vernachlässigt hat :-) Zitat:
Das ist ja lächerlich, bitte bilde dich erstmal weiter. Weiterbilden kann man sich wohl kaum, wenn es keine Basis gibt! Weiterbilden bedeutet meist, sich zu einem bestimmten Gebiet noch mehr Wissen anzueignen, oder? Ich empfinde deine Unterstellung ziemlich beleidigend. Zitat:
Begreift doch mal bitte, daß RE nicht daran scheitert, daß man "1 Million" Assembler-Mnemonics nicht verstehen könnte, sondern vielmehr daran, daß der Zeitaufwand so riesig ist. Der Aufwand ein Programm (komplett!) zu reversen übersteigt bei weitem den Aufwand so ein Programm selber neu zu schreiben. Meist wird RE verwendet um: - Viren/Malware zu analysieren - Software zu cracken (was zweifelhaft ist, wenn die Ergebnisse veröffentlicht werden) - Kompatibilität zu anderer Software herzustellen (zB zum DOS-Programm von dem die Quellen fehlen) In allen diesen Fällen kann meist eine Komplettanalyse des Disassemblats vermieden werden, indem der RE smart genug ist die entsprechenden interessanten Stellen schnellstmöglich herauszufiltern. |
Re: quellcode aus exe-Datei
Ich vergleiche so etwas immer mit einer wertvollen chinesischen Vase. :mrgreen: Fällt die auf den Boden und liegt nur noch in Bruchstücken vor, dann kann man sie mit immensem Aufwand vielleicht wieder in etwa zusammensetzen. Aber ob sie dicht ist und keiner merkt, daß sie kaputt war, das wage ich zu bezweifeln. 8)
|
Re: quellcode aus exe-Datei
Zitat:
|
Re: quellcode aus exe-Datei
Hallo,
ihr dreht euch doch im Kreis, merkt ihr das nicht? Ein Stückchen weit hat jeder von euch recht. Wenn mans ganz exakt nimmt ist eine Rückübersetzung nicht möglich. Ich darf dann nämlich nicht davon ausgehen dass die VCL bekannt ist. Aber mit Hilfsmittel und künstlich generierten Bezeichnern ( was sind Bezeichner eigentlich nichts als Rauch und für die Funktion unwesentlich ) wird man schon etwas über den Code herausfinden können, aber nicht alles. Rainer ( Schliesst diesen Beitrag, der bringt nichts als Streit! ) |
Re: quellcode aus exe-Datei
Zitat:
Zitat:
Zitat:
|
Re: quellcode aus exe-Datei
Zitat:
|
Re: quellcode aus exe-Datei
Dumme Frage: Aber wieso sollte man von Programmen den kompletten Code auslesen können?! Wäre irgendwo nicht unbedingt schlau... Okey es gibt natürlich Möglichkeiten, aber das gilt dann wohl eher als cracken oder? Denn dann wär n Crack schreiben ja verdammt einfach oder?!
|
Re: quellcode aus exe-Datei
Zitat:
Zitat:
Setzt du Antivirensoftware ein? Dann setzt du nach deiner Meinung Software von Crackern ein, denn was meinst du wie man Malware analysiert? Ich klinke mich hier besser aus der Diskussion aus, bringt eh nix, weil offenbar eine skurrile Vorstellung von RE vorherrscht. |
Re: quellcode aus exe-Datei
Zitat:
|
Re: quellcode aus exe-Datei
Zitat:
Traurig, dass du von der Meinung eines Einzelnen auf die aller schließt... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 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