2011-04-12 1 views
0

salut je videra l'autre processus pilote du noyauadresse de base de trouver des procrss en cours dans l'espace du noyau

et utiliser KeStackAttachProcess changer pilote contexte actuel

après l'adresse en mode utilisateur a changé la façon dont peut trouver l'adresse de base processus en cours J'ai besoin d'adresse de base pour le cast à PIMAGE_DOS_HEADER (et l'analyser pour trouver des sections) peut utiliser PEB?

une autre solution?

Répondre

4

Il y a une fonction API spéciale pour que:

NTKERNELAPI 
PVOID 
PsGetProcessSectionBaseAddress(
    __in PEPROCESS Process 
    ); 

Et vous pouvez utiliser le champ SectionBaseAddress dans la structure EPROCESS:

+0x128 SectionBaseAddress : 0x00400000 Void 

Elle peut varier dans les différentes versions du système d'exploitation.

+0

je ne peux pas trouver PsGetProcessSectionBaseAddress en WDK, est-il undoc? Et l'utiliser, c'est bien? – maysam

+0

Oui, c'est undoc. Vérifiez simplement si cette fonction existe sur les versions de système d'exploitation que vous voulez prendre en charge. Il existe sur mes machines w2k3 et w7 mais je ne suis pas sûr des systèmes antérieurs. –

Questions connexes