Entwickler-Ecke
Windows API - Hook auf funktionspointer
Aya - Do 10.01.08 20:46
Titel: Hook auf funktionspointer
Hi,
ich habe mir einen Hook gebastelt um abzufangen wenn ein Programm eine gewisse funktion aufruft. Das klappt soweit auch wunderbar, allerdings nur solange, wie die funktion von einer EXE aufgerufen werden... wenn eine DLL sie aufruft versagt mein Hook :(
Weiß jemand woran das liegen kann??
Aya~
Xentar - Do 10.01.08 21:42
Ich selber kenn mich mit Hooks nicht aus.
Und ich vermute mal, dass man dir ohne Quellcode nur wenig helfen kann?
uall@ogc - Sa 12.01.08 21:01
kommt auf den Hook an (Import/Export/Code etc.) und bist sicher dass die selbe Funktion von der Dll aufgerufen wird?
BenBE - Sa 19.01.08 00:27
Zusatzfrage: Globaler oder Prozess-Lokaler Hook?
IAT, ETH, BCO oder anderer Hook?
Wie sieht dein Hook aus???
AHT - Di 29.01.08 14:41
Ohne zu wissen, wie du da genau hookst, lässt sich das wirklich nicht sagen.
Manche Programme und DLLs ermitteln die Einsprungsadressen ihrer Importfunktionen einmalig beim Starten und sprechen diese Funktionen dann später über ein Call an (unter Umständen mehr Geschwindigkeit). Hookst du über IAT, hat die DLL sich evtl. schon vor dem Ändern der Pointer die Adressen für ihre Funktionen geholt.
Mit
TNT [
http://www.delphi-forum.de/viewtopic.php?t=80254] könntest du ja mal schauen, ob deine Pointer oder OP-Codes richtig ausgetauscht wurden.
Desweiteren gibt es auch ein paar sehr wirkungsvolle Methoden, Usermode Hooks einfach zu umgehen und damit auszuschalten.
Gruß
AHT
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!