Question Injection DLL et Hook

Taron31 Messages postés 199 Date d'inscription vendredi 16 avril 2004 Statut Membre Dernière intervention 28 février 2008 - 15 août 2006 à 01:52
Kian_ix Messages postés 26 Date d'inscription dimanche 18 février 2007 Statut Membre Dernière intervention 5 avril 2009 - 30 mai 2008 à 14:29
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

Kian_ix Messages postés 26 Date d'inscription dimanche 18 février 2007 Statut Membre Dernière intervention 5 avril 2009
30 mai 2008 à 14:29
ya un rapport avec msn ?
0
Rejoignez-nous