Question Injection DLL et Hook

Signaler
Messages postés
199
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
28 février 2008
-
Messages postés
26
Date d'inscription
dimanche 18 février 2007
Statut
Membre
Dernière intervention
5 avril 2009
-
Bonjour, je me pose une question conernant la fonction SetWindowsHookEx, notamment concernant l'injection de la DLL. J'ai en effet un programme de hook qui change les adresses des APIs dans l'IAT, pour que la DLL soit injectée dans les applications cibles j'utilise un WH_CBT, voice le code :

LRESULT CALLBACK HookProc(int nCode, WPARAM wParam, LPARAM lParam)
{
    return CallNextHookEx(hHook, nCode, wParam, lParam);
}

extern "C" AVHOOKDLL_API void InstallHook()
{  
    // Lance le hook
    if(!hHook) hHook = SetWindowsHookEx(WH_CBT, HookProc, hThisMod, 0);
}

extern "C" AVHOOKDLL_API void UninstallHook()
{  
    // Stop le hook
    UnhookWindowsHookEx(hHook);
    hHook = NULL;
}

La question que je me pose est assez cheloue ; je me demandais quand est-ce que SetWindowsHookEx injectait la DLL dans les processus cibles, je voudrai connaître l'ordre des événements en quelques sortes. Par exemple dans ce code, je pense que SetWindowsHookEx détecte un événement WH_CBT, injecte la DLL dans le processus en question. Car lorsque je fais les tests sur ma machine, la DLL est injectée seulement lorsqu'un événement de ce type arrive. J'aimerais avoir une confirmation, parce que je n'en suis pas sûr, parce que sinon quand est-ce que le procedure de hook est appelée ??

Merci.

___________________
MVS - Most Valuable Student ( Microsoft)

1 réponse

Messages postés
26
Date d'inscription
dimanche 18 février 2007
Statut
Membre
Dernière intervention
5 avril 2009

ya un rapport avec msn ?