Quelle est a votre avis la meilleurs facon d'etre prevenu en temps reel de la creation de process ?
e.g. en hookant NtCreateProcessEx(), PspCreateProcess(), NtCreateSection(), ...
Dominique Vaufreydaz
Bonjour,
e.g. en hookant NtCreateProcessEx(), PspCreateProcess(), NtCreateSection(), ...
J'en etait arrive a la meme conclusion... Bref, y'a pas une joli API autre avec callback que j'aurais loopée (ca me rassure sur mes capacités de recherche...).
Ok, je vais voir de ce coté la alors.
Merci. Doms.
Bonjour,
e.g. en hookant NtCreateProcessEx(), PspCreateProcess(),
NtCreateSection(), ...
J'en etait arrive a la meme conclusion... Bref, y'a pas une joli
API autre avec callback que j'aurais loopée (ca me rassure
sur mes capacités de recherche...).
e.g. en hookant NtCreateProcessEx(), PspCreateProcess(), NtCreateSection(), ...
J'en etait arrive a la meme conclusion... Bref, y'a pas une joli API autre avec callback que j'aurais loopée (ca me rassure sur mes capacités de recherche...).
Ok, je vais voir de ce coté la alors.
Merci. Doms.
Patrick Philippot
Salut Doms,
Dominique Vaufreydaz wrote:
Quelle est a votre avis la meilleurs facon d'etre prevenu en temps reel de la creation de process ?
Le seul moyen de faire ça proprement sans intervenir au niveau des APIs est de créer un device driver. Tu as un exemple ici: http://www.codeproject.com/threads/ProcMon.asp
Mais cela ne te permet que de recevoir les notifications de créations, pas de les empêcher.
De plus, le code proposé n'est pas très solide sur certains points et j'ai dû faire quelques modifications. Voir dans les messages de cette même page le thread "CPU overload: CCustomThread" où je propose des modifications.
Si tu as besoin d'un produit pro te permettant d'intervenir *avant* que le processus ne soit effectivement créé, voir ici: http://www.infoprocess.com.au/ .
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Salut Doms,
Dominique Vaufreydaz wrote:
Quelle est a votre avis la meilleurs facon d'etre prevenu en temps
reel de la creation de process ?
Le seul moyen de faire ça proprement sans intervenir au niveau des APIs est
de créer un device driver. Tu as un exemple ici:
http://www.codeproject.com/threads/ProcMon.asp
Mais cela ne te permet que de recevoir les notifications de créations, pas
de les empêcher.
De plus, le code proposé n'est pas très solide sur certains points et j'ai
dû faire quelques modifications. Voir dans les messages de cette même page
le thread "CPU overload: CCustomThread" où je propose des modifications.
Si tu as besoin d'un produit pro te permettant d'intervenir *avant* que le
processus ne soit effectivement créé, voir ici:
http://www.infoprocess.com.au/ .
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Quelle est a votre avis la meilleurs facon d'etre prevenu en temps reel de la creation de process ?
Le seul moyen de faire ça proprement sans intervenir au niveau des APIs est de créer un device driver. Tu as un exemple ici: http://www.codeproject.com/threads/ProcMon.asp
Mais cela ne te permet que de recevoir les notifications de créations, pas de les empêcher.
De plus, le code proposé n'est pas très solide sur certains points et j'ai dû faire quelques modifications. Voir dans les messages de cette même page le thread "CPU overload: CCustomThread" où je propose des modifications.
Si tu as besoin d'un produit pro te permettant d'intervenir *avant* que le processus ne soit effectivement créé, voir ici: http://www.infoprocess.com.au/ .
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Patrick Philippot
Quelques remarques compélmentaires:
1. A partir de XP, WMI permet de capturer les événements suivants:
Donc si tu es sûr de travailler sur XP ou au-dessus, WMI est la solution propre et officielle.
2. Le mécanisme proposé dans le code de l'article cité peut laisser passer quelques notifications si les créations de processus ont lieu à intervalles très rapprochés. C'est relativement rare mais ça arrive. Dans l'utilisation que j'en fais, cela ne me gêne pas car je revérifie la liste des processus en cours d'exécution à intervalles réguliers. La lecture complète des messages liés à cet article te donnera un aperçu complet des problèmes potentiels de ce code. Mais globalement, ça fonctionne bien.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Quelques remarques compélmentaires:
1. A partir de XP, WMI permet de capturer les événements suivants:
Donc si tu es sûr de travailler sur XP ou au-dessus, WMI est la solution
propre et officielle.
2. Le mécanisme proposé dans le code de l'article cité peut laisser passer
quelques notifications si les créations de processus ont lieu à intervalles
très rapprochés. C'est relativement rare mais ça arrive. Dans l'utilisation
que j'en fais, cela ne me gêne pas car je revérifie la liste des processus
en cours d'exécution à intervalles réguliers. La lecture complète des
messages liés à cet article te donnera un aperçu complet des problèmes
potentiels de ce code. Mais globalement, ça fonctionne bien.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Donc si tu es sûr de travailler sur XP ou au-dessus, WMI est la solution propre et officielle.
2. Le mécanisme proposé dans le code de l'article cité peut laisser passer quelques notifications si les créations de processus ont lieu à intervalles très rapprochés. C'est relativement rare mais ça arrive. Dans l'utilisation que j'en fais, cela ne me gêne pas car je revérifie la liste des processus en cours d'exécution à intervalles réguliers. La lecture complète des messages liés à cet article te donnera un aperçu complet des problèmes potentiels de ce code. Mais globalement, ça fonctionne bien.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr