2016-06-04 11 views
-5

injizieren Es ist meine erste Post in diesem Forum. Ich programmiere auf Ubuntu. Ich möchte mit C++ eine ausführbare Datei in eine andere injizieren und wenn ich die endgültige ausführbare Datei starte, möchte ich, dass sie ihren Code und den injizierten Code ausführt. Ich weiß nicht, ob es möglich ist. Ich habe schon versucht, den binären Inhalt des zweiten in den ersten zu injizieren, aber es scheint nicht zu funktionieren, es führt das erste Programm aus, aber nicht was ich injiziert habe. Ich weiß, dass das das Prinzip vieler Viren ist, aber ich möchte kein Virus programmieren, es ist nur zum Lernen und für Neugier. Danke für Ihre Antworten.Wie eine ausführbare Datei in eine andere auf Ubuntu

+5

Ich werde keine Partei sein, Leuten zu sagen, wie man Viren macht. Schließlich sind Sie ein völlig Fremder, so dass Ihre Zusicherungen bedeutungslos sind –

Antwort

0

Sie können keine zufällige ausführbare Datei in eine andere injizieren. Wenn Sie aufhören, darüber nachzudenken, werden Sie sehen, dass es nicht klar ist, dass das sogar tun soll. Beide ausführbaren Dateien haben eine Meinung darüber, was 100% der CPU-Zeit für den Prozess tun sollten, und es gibt keine generische Möglichkeit, sie zusammenzuführen.

Wenn die injizierte ausführbare Datei bedeutet für die Injektion, dann muss es auch mit der Injektionsmethodik kommen. Das übliche Mittel dafür ist die Verwendung von LD_PRELOAD (z. B. fakeroot) oder unter Verwendung von ptrace (z. B. fakeroot-ng). Keine dieser Techniken ändert die eigentliche ausführbare Datei.

Wenn Sie die ausführbare Datei ändern möchten, um das zu tun, was Sie versuchen, müssen Sie das Format ELF verstehen. Dies ist jedoch außerhalb des Bereichs einer Stapelüberlauf-Antwort.

+0

Danke für Ihre Antwort, ich verstehe, dass das keine Frage ist, in diesem Forum zu stellen. – Aistun

+0

Dies ist auch kein Forum ... es ist eine Q & A-Site. Foren funktionieren auf eine etwas andere Weise als die Funktionsweise dieser Website. – rlam12

Verwandte Themen