DLL Injection Fehler
-
Lad dir mal Winject herunter damit kannst du testen ob sich deine DLL in andere Prozesse injecten lässt. Dann weiss du schonmal ob der Fehler an der DLL oder am Injector selbst liegt.
-
dllinj schrieb:
Lad dir mal Winject herunter damit kannst du testen ob sich deine DLL in andere Prozesse injecten lässt. Dann weiss du schonmal ob der Fehler an der DLL oder am Injector selbst liegt.
Hab ich doch schon lange...geht damit auch nicht. also irgendwas mit der dll
-
Raten bringt Dir auch nix...
-
Was ist daran so schwierig?
#include <windows.h> BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) { MessageBoxA(0, "test", "", 0); return TRUE; }
Compile es und fertig und teste ob du es injecten kannst.
Ja eigentlich solltest du das nicht in der DllMain machen, aber zum testen wird es funktionieren. (Manche schreiben sogar immer ihren Code da rein, obwohl man es nicht sollte.)
-
Thereaver schrieb:
Was ist daran so schwierig?
#include <windows.h> BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) { MessageBoxA(0, "test", "", 0); return TRUE; }
Compile es und fertig und teste ob du es injecten kannst.
Ja eigentlich solltest du das nicht in der DllMain machen, aber zum testen wird es funktionieren. (Manche schreiben sogar immer ihren Code da rein, obwohl man es nicht sollte.)das habe ich auch mal gemacht...und es funktioniert jetzt auf einmal o.0.
Jedoch öffnet sich das Fenster zweimal und es funktioniert auch nicht bei notepad.exe (nur bei notepad++) anscheinend wegen 64bit.
-
joa, das mit den bit wurde ja bereits erklärt.
Das Fenster öffnet sich öfter, da DllMain öfter aufgerufen wird.
Es gibt ja verschiedene Gründe z. B. DLL_THREAD_ATTACH und jedesmal wird es aufgerufen. Um dies zu unterbinden kann man DisableThreadLibraryCalls aufrufen.
Aber wie gesagt, du solltest eine Funktion exportieren und diese nochmal mit CreateRemoteThread aufrufen.
-
Achja und noch ein seltsames Problem:
Ich kann NUR mit meinem Injector injecten, WENN ich die DLL zuerst mit Winject auch schonmal in den laufenden prozess injected hab...
Also ohne Winject davor -> kein Fenster erscheint
Mit Winject injected und danach mit meinem -> erscheint ein Fenster mit meinem Injector
0.0
-
Niemand eine Idee zu dem Problem im vorherigen Post?
-
ich hap ne super tuper idee: lern die basics!
-
tolle hilfe danke -,-
*ironie off*