MessageBox - Process Pasieren ? ( DLL INJECTION )
-
Hallo Leute, ich habe einen Hack für ein Spiel, mit einer DLL Injection ( Also über einen DLL-Injector). Jetzt möchte ich eine Sicherheit Klasse in den Hack einbauen, gegen Debuggern .. Dafür möchte ich auch die MessageBox benutzten, um den User eine Info zu geben, das ein Debugger gefunden worden ist.
Jetzt ist es so, wenn ich eine MessageBox in z.B. der DllMain reinpacken, dann muss man die MessageBox erst weg klicken, bevor der Prozess weiter ausgeführt wird, also er wird pausiert. So, wenn ich jetzt aber mit CreateThread ein Thread eröffne, und dort dann eine MessageBox starte, läuft der Prozess weiter wenn man die MessageBox nicht weg klickt, ich brauche das aber, dass die MessageBox den Prozess anhält.
-
Und was ist jetzt Deine Frage?
Um festzustellen oder ein Debugger "aktiv" ist, gibt es eine Methode. beachte aber auch, dass es möglich ist einen Prozess "non-invasiv" zu debuggen...Unnd um Threads anzuhalten gibt es SuspendThread; obwohl man diese Methode eigentlich nie aufrufen sollte... siehe dazu auch mein Blog...
-
Ja, eine WIN API MessageBox mach es dem Reverse Engineerer doch noch einfacher gib doch gleich den Quelltext mit raus !
-
1: ich versthe deine frage nicht so richtig
2: Man kann die Dll mit dissasamblern trozdem angucken(z.b. IDA PRO)
3. am besten ist wenn du einen Crypter benutzt...
da diese aber meisten als "VIREN" angezeigt werden (weil man damit natürlich auch viren verstecken kann) ist das keine soo gute idee.
4:warum willst du den User der sich warscheinlich gut damit auskennt und deinen Sourcecode haben will eine msgbox geben ?! ...
5: ich würd in diesem fall sein pc herunterfahren oder noch besser crashen lassen(wenn es so high-privatly ist) (wenns harmlos sein soll mit ExitProcess(0); die anwendung beenden lassen)