|
You last visited: Today at 13:40
Advertisement
d3d hook extern
Discussion on d3d hook extern within the General Coding forum part of the Coders Den category.
08/29/2011, 17:03
|
#1
|
elite*gold: 0
Join Date: Jan 2010
Posts: 250
Received Thanks: 21
|
d3d hook extern
tag,
weiß einer von euch, wie man die endscenefunction eines anderen programms hookt?
also ohne benutzung DLLs.
MFG Dominik
|
|
|
08/29/2011, 17:33
|
#2
|
elite*gold: 115
Join Date: Oct 2007
Posts: 9,390
Received Thanks: 12,345
|
Mit OpenProcess Handle des Prozesses finden, mit VirtualAllocEx genug Speicher für deine Detourfunktion reservieren, mit WriteProcessMemory die Funktion reinkopieren, Adresse von EndScene rausfinden, mit WriteProcessMemory EndScene auf die Adresse deiner Funktion (wurde von VirtualAllocEx zurückgegeben) detouren, fertig. ;O
|
|
|
08/29/2011, 18:13
|
#3
|
elite*gold: 0
Join Date: Jan 2010
Posts: 250
Received Thanks: 21
|
haha lol dacht es wird jetzt ewig schwer
thx
|
|
|
08/29/2011, 21:51
|
#4
|
elite*gold: 0
Join Date: Jul 2010
Posts: 388
Received Thanks: 196
|
Quote:
Originally Posted by bammes
haha lol dacht es wird jetzt ewig schwer
thx
|
Ist dem Injecten einer .dll sehr ähnlich. Nicht wirklich komplizierter.
|
|
|
08/30/2011, 01:32
|
#5
|
elite*gold: 0
Join Date: Jan 2010
Posts: 250
Received Thanks: 21
|
ok is für mich wohl doch bissle schwer.
hab den prozess (hProcess) und will jetzt den speicher reservieren.
lpBaseAdress = VirtualAllocEx(hProcess, NULL, NULL, MEM_LARGE_PAGES, PAGE_EXECUTE_READWRITE);
durch msdn is mir aber nicht ganz klar geworden, wofür parameter 2u.3 stehen.
und mit writeprocessmemory hab ich bis jetzt nur variabel geändert. wie kann ich ne funktion einfügen?
|
|
|
08/30/2011, 04:24
|
#6
|
elite*gold: 1
Join Date: Jul 2005
Posts: 553
Received Thanks: 454
|
Extern zu hooken geht nicht, du musst schon im Speicherbereich sein.
Wie Metin2Spieler97 bereits geschrieben hat, musst du dafür halt deine Funktion in den anderen Prozess reinbringen und dann über Read-/WriteProcessMemory hooken, was sich allerdings nur lohnt, wenn der Hook nicht zu komplex ist, andererseits würde man dann nämlich besser eine Dll benutzen
Ich kann dir später mal einen kleinen Beispielcode schreiben, wobei es für dich wohl am einfachsten wäre, einfach eine Dll zu schreiben und die Detours Library zu benutzen.
Nämlich selbst, wenn du den Code des Zielprozesses über WriteProcessMemory praktisch von außen bearbeitest, lässt sich die Veränderung wie auch bei einer injizierten Dll, die einen Hook installiert, vom Zielprozess erkennen, falls es dir um so etwas gehen sollte.
Zu VirtualAllocEx:
"If lpAddress is NULL, the function determines where to allocate the region."
also einfach Null verwenden, irgendwo alloziieren lassen und dann über den Rückgabewert den alloziierten Speicher ansprechen.
dwSize ist die Anzahl der Bytes, die alloziiert werden sollen, sprich die Größe deiner Funktion, die du über die Subtraktion von Labels herausfinden kannst (teilweise inakurrat wegen Padding, ob 10 Bytes mehr oder weniger macht aber eigentlich keinen Unterschied)
Code:
int x()
{
int a=2,b=3;
return a*b;
}
__declspec(naked) void y()
{
}
int sizeofx=@y-@x
irgendwie so
|
|
|
08/30/2011, 05:51
|
#7
|
elite*gold: 0
Join Date: Jan 2010
Posts: 250
Received Thanks: 21
|
thx eine gute beschreibung meine fragen :-)
Ich habe vor trainer für games zu machen mit nem d3d menü (auch für multiplayergames). Dann ist es glaub ich echt sinnvoll, wenn das zielprogramm diesen eingriff net bemerkt.
wenn es dir keinen zu großen aufwand macht, werde ich mich über einen beispielcode freuen (mit erklärungskommentaren).
|
|
|
08/30/2011, 06:07
|
#8
|
elite*gold: 1
Join Date: Jul 2005
Posts: 553
Received Thanks: 454
|
Quote:
|
Ich habe vor trainer für games zu machen mit nem d3d menü (auch für multiplayergames). Dann ist es glaub ich echt sinnvoll, wenn das zielprogramm diesen eingriff net bemerkt.
|
Quote:
|
Nämlich selbst wenn du den Code des Zielprozesses über WriteProcessMemory praktisch von außen bearbeitest, lässt sich die Veränderung wie auch bei einer injizierten Dll, die einen Hook installiert, vom Zielprozess erkennen, falls es dir um so etwas gehen sollte.
|
Joa, aber ich meinte ja gerade, dass es keinen Unterschied macht, ob du intern über eine Dll hookst oder extern via WriteProcessMemory, wenn die Art zu Hooken die gleiche ist.
Und ein Hack inkl. D3D Menü.. von außen zu hooken macht eigentlich nur Sinn, wenn du ohne viel Drumherum 'nen kleinen Codecave in den Zielprozess bringen willst
Ein ganzer Hack wäre da viel zu komplex für..
Dafür müsstest du schon eine Dll benutzen und dich dann darum bemühen, deine Hooks vor dem Spiel zu verbergen, z.B. durch verschiedene Arten zu hooken (VTable, HWBPs, Page Faults) oder indem den Anti-Cheat Code umgehst/überschreibst
|
|
|
 |
Similar Threads
|
[B]Extern CS:S Triggerbot
08/06/2011 - Trading - 0 Replies
Hallo,
ich verkaufe hier meinen externen Trigger fuer CS:S.
Es wird fuer jeden kunden ein einzigartiges Programm erstellt,
in kombination mit einem komplett externen Design ist er von VAC nicht erkennbar.
Der Cheat kann beliebig vor oder nach dem Starten von CS:S geoeffnet oder beendet werden.
Der Triggerbot unterstuetzt dauerfeuer.
Hier noch ein Bild : http://img30.imageshack.us/img30/9890/darkvision.j pg
|
Webspace mit MySQL Extern
10/27/2010 - Metin2 Private Server - 3 Replies
Hey Com.,
suche einen Webspace Anbieter mit MySQL.
Gut, MySQL ist ja bei jedem Freehoster dabei,
doch überall habe ich versucht das MT2GS CMS Script
zu installieren und die MySQL Verbindung nach außen geht nicht..
Wenn jemand einen Hoster hätte,
der sowas zulässt wär ich sehr dankbar ;)
|
Gm id extern ändern
07/16/2010 - Metin2 Private Server - 6 Replies
Hallo E*PvP,
gibt es eine möglichkeit die gm-id extren, d.h auf einer webseite, ändern zu lassen?
dankeschön
lg
org.
ps:lösung=thanks
|
ECX auslesen |inj dll? or extern?
12/25/2008 - General Coding - 8 Replies
hi
also ich versuche jetzt schon ein wenig länger eine möglichkeit zu finden ECX an einer bestimmten stelle im code von Guild Wars auszulesen
bis jetzt hab ich eine DLL, die injected wird
die enthält ne func zum code patchen , um meine eigendliche funktion aufzurufen
soweit so gut, das klappt alles
da GW TLS (Thread Local Storage) nutzt hab ich meine func als "naked" definiert
|
Extern useful programs.
10/21/2006 - CO2 Exploits, Hacks & Tools - 1 Replies
Hello there.
I just want to share this with others. There is a program called No Alt-Tab . You could find it by searchinf in google "no alt tab".
It is a tiny program "always on top" that draw a transparent (you have to chose the level of opacity in option) in the full screen game window.A icon of every aplication on task bar is drawed in a tiny rectangle.Switchin' is a pleasure.
It is very useful for those who use 2 or more clients and why not other programs. Hope you enjoy this, have...
|
All times are GMT +1. The time now is 13:44.
|
|