Hexcode in Programm ausführen?

Ich suche nach einer Möglichkeit in AutoIt geschriebene Programme vor dem decompilen zu schützten, indem man die compilierte "AutoItSkript".exe per Hexeditor in Hexcode umwandelt und diesen dann in ein anderes Programm einfügt, sodass die "AutoITSkript".exe gestartet wird. Ich habe im Wiki einen Beitrag über Shellcodes gefunden indem ein kleines Assamblerprog per Hex in ein C prog ingefügt wurde. Kann man so jede beliebige .exe in eine andere packen?

Ich hoffe ich habe halbwegs verständlich erklärt was ich machen möchte. Kann mir jemand sagen was ich dazu machen muss?

mfg. Essah
 
Grundsätzlich geht das. Bei Shellcode ist es ja auch so, dass man den Hexstring ausführt, allerdings kann das vom Betriebssystem durch die Datenausführungsverhinderung geblockt werden.
 
Wenn man von DEP geblockt wird, hat man was falsch gemacht.
Nachdem der Loader auch selbst geschrieben ist kann man den Speicher nämlich mit beliebigen Rechten allozieren.

Prinzipiell kannst du entweder den Prozess forken oder den Hex-String wieder als *.exe speichern und dann ausführen lassen.

MfG
Inliferty

[Edit]
Wurde gerade darauf aufmerksam gemacht:
Dir ist hoffentlich klar das AutoIt eine interpretierte Sprache ist. Also ist der Source-Code immer verfügbar und wird interpretiert. Du hast also mit so einem Loader nur den Vorteil das vllt. manche automatisierten Tools daran scheitern.
Ein Reverser mit einem Debugger sollte jedoch noch immer schnell an deinen Code kommen.
 
Zuletzt bearbeitet:
Zurück
Oben