[Help]HackShield detected send,recv hook c++

08/17/2010 09:27 GLemon#1
Entschuldigung für noch einen Thread am selben Tag aber das passt glaub ich nicht wirklich in das andere deswegen eröffne ich einen neuen.

Wenn ich die Winsock send recv hooke detected das Hackshield nach ca. 2 minuten einen hack kann man das Bypassen ?
Und wenn ja,wie sollte ich anfangen.

Würde mich freuen auf eine Antwort.

Mit freundlichen Grüßen :)
08/17/2010 12:22 bassbanane#2
Du musst dich mal ein wenig mit dem HS beschäftigen, und es dann "bypassen" :D
Du musst halt die Funktionen hooken, die dafür verantwortlich sind, dass dein Spiel beendet wird. Du musst mal nach "hackshied bypass" oder so bei google suchen, dort gibt es eine alte Anleitung, aber wenn man Ahnung hat, kann man die auch auf die neueren Version vom HS anwenden und somit bypassen.
Wie genau man HS bypasst wird dir hier wohl niemand sagen.
08/17/2010 13:58 Lazeboy#3
kannst du mir denn sagen wie die Funktion heisst oder muss ich da mal mit Ida dran ? :D
08/17/2010 17:29 MrSm!th#4
Quote:
Originally Posted by bassbanane View Post
Du musst dich mal ein wenig mit dem HS beschäftigen, und es dann "bypassen" :D
Du musst halt die Funktionen hooken, die dafür verantwortlich sind, dass dein Spiel beendet wird. Du musst mal nach "hackshied bypass" oder so bei google suchen, dort gibt es eine alte Anleitung, aber wenn man Ahnung hat, kann man die auch auf die neueren Version vom HS anwenden und somit bypassen.
Wie genau man HS bypasst wird dir hier wohl niemand sagen.
nicht unbedingt, wenn API Funktionen gecheckt werden.
Mir sind nur Tutorials bekannt, bei denen der HS Callback gehookt wird.
Dadurch wäre das Hooken zwar undetected, wenn Memory Changes auch an den Callback gesendet werden.
Naja, da wären aber noch ein paar Funktionen, wie HS_StarService, die den Treiber laden.
Außerdem kann man Pech haben und es werden CRC Packets gesendet oder zumindest die Korrektheit von System APIs.

Warum einfach, wenns umständlich geht?

Für gewöhnlich reicht es, wenn man an nem Offset hookt.
send und recv sind __stdcall Funktionen, also kann man den __stdcall Prolog
Code:
mov edi, edi
push ebp
mov ebp, esp
überspringen und macht dann die eigene Hookfunktion zu einer __cdecl Funktion, damit der Prolog nicht 2 mal ausgeführt wird.

Also:

Code:
mov edi, edi
push ebp
mov ebp, esp
jmp your_cdecl_function
Ich bin mir nicht mehr ganz sicher, evtl könnte es Stack Probleme geben, weshalb man entweder die Register in der eigenen Funktion sichern sollte oder den jmp hinter dem sub Befehl zu positionieren (am Anfang ist ja meist ein sub, um Platz für lokale Variablen zu schaffen).
08/17/2010 17:41 Lazeboy#5
aiaiai ist das alles kompliziert ich glaube ich lerne erstmal assembler
08/17/2010 17:51 千代子#6
[Only registered and activated users can see links. Click Here To Register...]
08/17/2010 23:24 MrSm!th#7
Srsly, du warst bisher auf dem völlig falschen Weg, wenn du diese Entscheidung erst jetzt getroffen hast