Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

21

15.12.2010, 10:37

Das ist alles neuland für mich, weis also nicht wie ich überprüfen soll, ob sie richtig injektet wird. Kann man mit einem 32bit Programm auf einen 64 bit Betriebsystem hooken? Ich denke mal nicht und wie ich die Befehle für 64bit anpasse weis ich auch nicht. Das beste wär, wenn einer mir mal ein bisschen Code gibt der funktioniert...

EDIT: soweit ich weis brauch man es doch noch nicht einmal so kompliziert mit dll injektion machen, sondern es reicht ein doch ein Inline Hook oder nicht???
Rechtschreibefehler sind gewollt und sollen euer Unterbewusstsein beeinflussen ;-)

"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."

Erschaffen statt vernichten, dass ist die wahre Kunst

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Neoticer« (15.12.2010, 11:00)


BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

22

15.12.2010, 12:16

Ich wiederhole mich noch mal etwas anders:
1) Das System interessiert nicht, Hooks funktionieren auf beiden.
2) Auch ein 64Bit-System führt 32Bit-Software aus (offensichtlich) und Hooks funktionieren da kein Stück anders als auf einem 32Bit-System.
3) Ich gehen davon aus, dass Deine Ziel-Software 32Bit ist.
4) Eine 64Bit Ziel-Anwendung (64Bit-Anwendung! Nicht 32Bit-Anwendung auf 64Bit-System!) muss anders gehookt werden als in Dem Beispiel, weil die Opcodes und Adressen anders sind.
5) DLL-Injection kannst Du z.B. einfach mit einer MessageBox prüfen, die angezeigt wird, nachdem die DLL geladen wurde. Kommt keine, so ist Deine Injection schon fehlgeschlagen
6) Für einen Hook einer Funktion in einer anderen Anwendung wirst Du dort den auszuführenden Code irgendwie einschleusen. Entweder durch Überschreiben vorhandener Speicher-Bereiche oder per DLL-Injection. Letzteres ist weniger ärgerlich.
7) 32Bit-Hooks und 64Bit-Hooks funktionieren beide. Ich habe ein 64Bit-System und Injection+Hooks laufen prima.
8) Beispiele gibt es genug. Wenn Du sie nicht zum Laufen bekommst und nicht weißt wieso, dann weißt Du meiner Meinung nach zu wenig über das gesamte Thema und musst Dich mehr damit beschäftigen. Selber lernen, nicht immer um Beispiele betteln, wenn man andere Beispiele nicht gebacken bekommt. Software schreiben, nicht kopieren!
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

23

16.12.2010, 11:00

Was soll ich denn machen wenn keines dieser Tutorials funktioniert? Soll ich denn nicht nach etwas funktionierendes fragen dürfen?

Ich hab auch noch nicht so recht verstanden wie das mit dem Unterschied zw. globalen hook und wenn man die dll nur den Prozess injectziert funktioiert.
Rechtschreibefehler sind gewollt und sollen euer Unterbewusstsein beeinflussen ;-)

"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."

Erschaffen statt vernichten, dass ist die wahre Kunst

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Neoticer« (16.12.2010, 11:08)


dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

24

16.12.2010, 11:11

Was genau willst du denn machen dass du denkst dass API Hooking hier die Lösung ist? Was genau bedeutet IP-Adresse umleiten für dich!?

25

16.12.2010, 11:16

Das hab ich doch schon im 1.Post geschrieben ;-)

wenn Pakete zu einer bestimmten IP-Adress geschickt werden, möchte das si woanders hinkommen.

also Bsp. alle Pakete die von meinem PC aus zu 142.43.68.123 gehen sollen, sollen zu 56.34.78.89 umgeleitet werden, aber alle die zu 45.78.9.xx sollen zu 127.0.0.1 gehen usw.

Mir ist egal wie ich das erreichen kann, (und eigentlich auch wie es funktioniert, hauptsache es funktioniert überhaupt)
Rechtschreibefehler sind gewollt und sollen euer Unterbewusstsein beeinflussen ;-)

"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."

Erschaffen statt vernichten, dass ist die wahre Kunst

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

26

16.12.2010, 11:46

Ich weiß was du im ersten Post geschrieben hast, nur war mir daraus nicht ganz ersichtlich was du meinst (hätte ja auch sein können dass du alle Pakete die zu einer bestimmen ip laufen einsammeln willst...)

Anyway, es besteht nicht vielleicht die Möglichkeit dass die in Windows eingebaute routing Funktionalität dir hier weiterhilft!?

27

16.12.2010, 12:19

Ja das könnt helfen, ich schaus mir mal an.
Rechtschreibefehler sind gewollt und sollen euer Unterbewusstsein beeinflussen ;-)

"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."

Erschaffen statt vernichten, dass ist die wahre Kunst

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

28

16.12.2010, 12:24

Du kannst damit eben Pakete umleiten aber afaik nicht direkt die Adressen im IP Header austauschen. Trotzdem würde ich zuerst nach einer vernünftigen Lösung suchen bevor ich Energie in so Hacks wie Winsock hooken investiere. Ich bin mir sicher dass du hier fündig werden wirst: http://www.google.at/search?hl=en&q=ip+redirect+windows

29

16.12.2010, 17:38

Es ist zum verrückt werden: Ich hab das hooking nochmal probiert. Keines der Bsp ging. Entweder sie machten garnichts, oder sie liesen das gehookte Programm abstürzen.
Rechtschreibefehler sind gewollt und sollen euer Unterbewusstsein beeinflussen ;-)

"Irren ist menschlich, aber wenn man richtigen Mist bauen will, braucht man einen Computer."

Erschaffen statt vernichten, dass ist die wahre Kunst

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Neoticer« (17.12.2010, 10:06)


BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

30

16.12.2010, 19:21

Tja, dann ist die Aufgabe wohl zu hoch für dich. So hart das jetzt auch klingt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige