Registry Guard est un programme très proche de Regmon de Sysinternals (http://www.sysinternals.com/Utilities/Regmon.html ), il permet de visualiser les tentatives d'accés à la registry (Lecture, Ouverture, Création) en temps réel, mais il possédera plus de fonctionnalités que ce-dernier plus tard (notamment une fonctionnalité réseau).
Ce programme est composé d'une DLL codée en C qui permet le hook des fonctions RegCreateKeyEx, RegOpenKeyEx, et RegQueryKeyEx (d'autre fonctions sont à venir...); c'est le moteur du programme. Grâce à la fonction API de hook, cette DLL est executée dans chaque programme actifs, modifie la table d'import de ces programme et les adresses des API de la registry afin de les détourner vers les fonctions de la DLL. Ensuite, la seconde partie du programme est en réalité le programme principal (comprenant la GUI), qui reçoit les messages d'alerte envoyés par la DLL et affiche les tentatives d'accés à la registry. Ces deux parties sont donc totalement complémentaires.
Pour plus d'informations concernant la technique de hook utilisée et son fonctionnement ; des sources sont disponibles sur ce site et un article sur le PE Header (avec l'IAT) pourra vous éclairer : http://olance.developpez.com/articles/windows/pe-i czelion/import-table/
Ce programme n'est qu'une ébauche, plusieurs fonctionnalités sont à venir...