Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Hook auslösen! (https://www.delphipraxis.net/14448-hook-ausloesen.html)

Assarbad 9. Jan 2004 17:17

Re: Hook auslösen!
 
Was willst du denn exakt machen? Code in services.exe injezieren oder an SYSTEM-Rechte kommen?

SirThornberry 9. Jan 2004 17:17

Re: Hook auslösen!
 
schau dir mal
Delphi-Quellcode:
AllocateHWnd
vielleicht hilft dir das ja weiter

Assarbad 9. Jan 2004 17:22

Re: Hook auslösen!
 
Oh, ne neue Funktion, wo ist die Dokumentation dazu? Ist das eine VCL-Methode?

Nachteil, der Code muß dennoch VORHER in die services.exe! Grade um dort reinzukommen will er aber den Hook. Also beißt sich die Schlange selbst in den Schwanz ;)

SirThornberry 9. Jan 2004 17:31

Re: Hook auslösen!
 
keine ahnung ob vcl, ist in der unit classes und in der hilfe steht unter anderem dazu
Delphi-Quellcode:
Call AllocateHWnd to create a window that is not associated with a windowed control. Typically, this method is used to create non-visual windows that respond to messages but that do not appear in the user interface. For example, the TTimer component uses this method to create a window that responds to timer messages from Windows.
also siehts eher nach non-vcl aus..

Und die dll in die services.exe zu bekommen dürfte doch ni das problem sein, oda???

SleepyMaster 9. Jan 2004 19:43

Re: Hook auslösen!
 
Ich will Code in die services.exe injezieren.
(An Systemrechte kommt man auch einfacher ran)

SleepyMaster 9. Jan 2004 19:44

Re: Hook auslösen!
 
@SirThornberry
Zitat:

Und die dll in die services.exe zu bekommen dürfte doch ni das problem sein, oda???
Und wie??? :roll:

Assarbad 14. Feb 2004 19:17

Re: Hook auslösen!
 
Das hatten wir doch schon, man kann keinen Hook auslösen. Ein Hook wird vom System aufgerufen um ein Ereignis zu signalisieren. Der Hook kann maximal das Ereignis unterdrücken indem er es nicht weiterreicht. Aber erzeugen kann er kein Ereignis!

Es gibt verschiedene API-Hooking-Technologien. Da aber die services.exe zur TCB gehört, wirst du von mir kein Rezept dafür bekommen. Such halt nach APIHooks von EliCZ oder auf Microsofts-Reserch Seite, Titel fällt mir grad nicht ein.

SleepyMaster 14. Feb 2004 22:09

Re: Hook auslösen!
 
Zitat:

man kann keinen Hook auslösen.
Und was ist wenn ich
Delphi-Quellcode:
  Keybd_event(Byte('M'), 0, 0, 0);
  Keybd_event(Byte('M'), 0, KEYEVENTF_KEYUP, 0);
verwende???

Der Hook (Tastaturhoom) wird dann von dem Prozess, der zu dem das Fenster gehört, dass im Vordergrund liegt "ausgelöst" (Das Fenster erhält ja auch die Tastatureingabe).


Zu den API Hooks: blicke da nicht ganz durch, ABER prinzipiell müssen die ganzen API-Funktionen ja auch in einer dll stehen. Kann man die nicht durch eine selbstgeschriebene austauschen, die dann erst meinen Code ausführt und dann den der Original Function in der original DLL??? (So ähnlich wie wenn man nur einen Teil der MS-Gina neuschreiben will)

Funktionieren die so??? Wenn nein: Wie dann???


Kleine Nebenfrage: Was ist TCB

Assarbad 14. Feb 2004 22:48

Re: Hook auslösen!
 
Zitat:

Zitat von SleepyMaster
Der Hook (Tastaturhoom) wird dann von dem Prozess, der zu dem das Fenster gehört, dass im Vordergrund liegt "ausgelöst" (Das Fenster erhält ja auch die Tastatureingabe).

Klar, aber wie bekommst du ein Fenster im Kontext von services.exe?

Zitat:

Zitat von SleepyMaster
Zu den API Hooks: blicke da nicht ganz durch, ABER prinzipiell müssen die ganzen API-Funktionen ja auch in einer dll stehen. Kann man die nicht durch eine selbstgeschriebene austauschen, die dann erst meinen Code ausführt und dann den der Original Function in der original DLL??? (So ähnlich wie wenn man nur einen Teil der MS-Gina neuschreiben will)

Trojaner-DLLs funzen nur, wenn du alle exportieren Funktionen des Orginals kennst!

Zitat:

Zitat von SleepyMaster
Kleine Nebenfrage: Was ist TCB

Trusted Computing Base. Das System ...

SleepyMaster 15. Feb 2004 08:21

Re: Hook auslösen!
 
Ich dachte, nur dass villeicht eine andere Hookart auch ohne Fenster "ausgelöst" werden kann.

Code:
WH_CALLWNDPROC
WH_CALLWNDPROCRET
WH_CBT
WH_DEBUG
WH_FOREGROUNDIDLE
WH_GETMESSAGE
WH_JOURNALPLAYBACK
WH_JOURNALRECORD
WH_KEYBOARD
WH_KEYBOARD_LL
WH_MOUSE
WH_MOUSE_LL [NT]
WH_MSGFILTER
WH_SYSMSGFILTER
WH_SHELL
Aber irgendwie wäre es unlogisch, da dass WH ja für Window-Hook steht (oder nicht?).

Zitat:

Trojaner-DLLs funzen nur, wenn du alle exportieren Funktionen des Orginals kennst!
Das wäre ja nicht das Problem

Ich werde mal ein bisschen weiterprobieren.

Bis dahin: Vielen Dank


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:08 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz