Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 07:23

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Frage an Profis über Hooken

Discussion on Frage an Profis über Hooken within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
Terrat's Avatar
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,173
Received Thanks: 670
Frage an Profis über Hooken

Deleted✔
Terrat is offline  
Old 06/16/2013, 02:17   #2

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
using ExitProcess_t = VOID (WINAPI *)(UINT);
ExitProcess_t hkExitProcess = [](UINT) { return; };
ExitProcess_t pExisProcess_orig = reinterpret_cast<ExitProcess_t>(DetourFunction(rei nterpret_cast<PBYTE>(GetProcAddress(GetModuleHandl eA("kernel32.dll"), "ExitProcess")), reinterpret_cast<PBYTE>(hkExitProcess)));

sollte funktionieren, erfordert aber einen guten C++11 Compiler und die detours 1.5 lib.

Das wird dir aber wenig bringen, XTrap wird den Detour sofort erkennen.
snow is offline  
Old 06/16/2013, 02:34   #3
 
Terrat's Avatar
 
elite*gold: 130
Join Date: Apr 2012
Posts: 1,173
Received Thanks: 670
Quote:
Originally Posted by snow911 View Post
using ExitProcess_t = VOID (WINAPI *)(UINT);
ExitProcess_t hkExitProcess = [](UINT) { return; };
ExitProcess_t pExisProcess_orig = reinterpret_cast<ExitProcess_t>(DetourFunction(rei nterpret_cast<PBYTE>(GetProcAddress(GetModuleHandl eA("kernel32.dll"), "ExitProcess")), reinterpret_cast<PBYTE>(hkExitProcess)));

sollte funktionieren, erfordert aber einen guten C++11 Compiler und die detours 1.5 lib.

Das wird dir aber wenig bringen, XTrap wird den Detour sofort erkennen.
hab ich net
kanst du mir bei einen helfen also einen zu erstellen ?
Terrat is offline  
Old 06/16/2013, 02:42   #4

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
Nein, das musst du schon selber machen.

Hier ein Tutorial zu den Detours:
und für C++11 kannst du z.B. VS2012 nutzen, das hat eine gute Unterstützung.

Ohne C++11 musst du statt der Lambda-Funktion eine richtige Funktion schreiben (VOID WINAPI hkExitProcess { }) und statt des using brauchst du einen Prototypen mit Hilfe von typedef (typedef VOID (WINAPI *ExitProcess_t)(UINT), dann sollte es funktionieren.
snow is offline  
Old 06/16/2013, 17:58   #5


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
^Lambda-Funktionen wurden von einigen Compilern auch schon vor C++11 unterstützt, wie z.B. MSVC 10. Allerdings wird da deine Verwendung der using-Direktive Probleme machen.

Mal so nebenbei: Selbst wenn der Hook nicht erkannt wird, wird es nichts nützen. Du willst ein Symptom bekämpfen, allerdings musst du die Ursache in Angriff nehmen. Wenn das Anticheat-System ExitProcess aufruft, ist bereits alles entschieden. Das Spiel fährt herunter, Resourcen werden freigegeben und der Prozess wartet nur noch auf das Beenden des Prozesses. Ein Hook von ExitProcess wird nur Letzteres verhindern. Damit hängt sich dann dein Spiel auf. Im besten Fall läuft es weiter, aber du wirst irgendwann disconnected, weil jedes gute Anticheat seine Aktivität über das Netzwerk an den Server meldet und bleibt das aus, wirst du nunmal gekickt. Und das wird passieren, denn zumindest das Anticheat wird nichts mehr tun, selbst wenn das Spiel davon nichts mitbekommt und nichts freigibt o.Ä. (was dann aber für eine schlechte Integration sprechen würde), denn das Anticheat geht ja davon aus, dass der Prozess danach beendet ist.
So ein ExitProcess Hook kann ganz nett sein, wenn man das Spiel genau in diesem Fall analysieren will und ein Prozessschutz o.Ä. das normalerweise sofort unterbindet. Bzw. wenn man die Detection-Routine finden will, kann es natürlich ganz hilfreich sein, das bewusst zu provozieren und den Prozess bei ExitProcess dann einfrieren zu lassen.
Für dein Ziel ist der Hook aber unnütz.
MrSm!th is offline  
Old 06/16/2013, 19:09   #6

 
snow's Avatar
 
elite*gold: 724
Join Date: Mar 2011
Posts: 10,479
Received Thanks: 3,318
Gerade mal getestet: Selbst mit VS12 macht using Probleme. :<
using für Funktionsprototypen und delete für Konstruktoren geht nicht. :/

Clang kann beides..
snow is offline  
Old 06/17/2013, 20:09   #7
 
Raz9r's Avatar
 
elite*gold: 297
Join Date: Dec 2010
Posts: 1,129
Received Thanks: 1,687
ExitProcess ist häufig mit dem Attribut __declspec(noreturn) oder [[noreturn]] (je nach C++11 Support) gekennzeichnet, weswegen solche Hooks sehr häufig fehlschlagen. Nur so als Randinfo.
Raz9r is offline  
Reply


Similar Threads Similar Threads
Frage an die Profis ^^
10/14/2010 - Nostale - 9 Replies
Also ich hab mal eine frage an die Leute die sich wirklich extrem gut auskennen und zwar Gibt es einen "bot" der Automatisch Ressis Wechselt? Zum Beispiel : F1= Feuer handschuh und schuhe F2= Wasser F3=Schatten F4= Licht Gibt es sowas oder könnte man sowas überhaubt bauen? bitte um antwort und Vilt. sogar um ein download eines solchen bots ;)
[Frage] An die Photoshop Profis!
05/05/2010 - General Art - 4 Replies
Hallo liebe Com ich wollte heute ein Logo für mein Clan suchen und bin dabei auf folgendes bild gestoßen: http://www.dragondesigns.de/include/images/galler y/img_886.jpg Und ich wollte dieses Wappen/Logo für meinen Clan benutzen, da ich es super geil finde und ich selber kein hin bekomme mit Photoshop. So ich wollte jetzt fragen wie ich den Schriftzug "Clan-Name" im Bild weg bekomme um den Namen meines Clan's rein zu schreiben. Wäre total nett und lieb wenn mir das einer von euch...
Informatik Frage [Für Profis]
05/15/2009 - Metin2 Private Server - 18 Replies
Guten Abend, Also ich sprech mich mal im klaren aus... Ich selber habe das erste mal angefangen mich damit zu befassen als ich 10 war,das ist jetzt ungefähr 6 Jahre her. In der Zeit habe ich sehr viel gelernt und schreibe es auch hier nochmal wie ich es jemand anderen hier schon geschrieben habe das ich in der Zeit von Simplen 2D bis überwiegend 3D Games geschrieben habe bis hin zu 1337 ( Trojaner,Keylogger e.t.c ) bis nach Fun Software und nützlichen Programmen. Mit der Zeit gibt...
Was gefunden frage an Profis
09/11/2008 - Metin2 - 14 Replies
*removed by Vulcanraven*
Frage an Profis.....
10/24/2007 - World of Warcraft - 11 Replies
Hallo alle zusammen, bei mir in der Gilde stimmt was nicht. Seit paar Wochen gehen viele offline für 2-3 wochen mit begründung: "Mein Account wurde gehakt. Ich warte jetzt bis Blizz mein Acc freischaltet." Motivation eingentlich ganz gut, wir machen momentan erste Bosse im ScharzenTempel, sollte iengentlich reiz genug sein um mehr online zu sein oder (jetzt kommt die Frage) ist es so einfach WoW Account zu hacken? Danke voraus. MfG



All times are GMT +1. The time now is 07:26.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.