J’essaie de trouver s’il y a un moyen d’installer essentiellement une application dans un bac à sable, afin de pouvoir facilement voir tous les fichiers qu’elle a créés et toutes les entrées de registre qu’elle a ajoutées sans chercher dans l’ordinateur des fichiers.
Ce n’a pas besoin d’être un bac à sable, du moment que ça me dit tout ce que l’installateur a fait. Il doit sûrement exister quelque chose qui fait cela. Je sais que mon antivirus me prévient quand il accède à certains fichiers et dossiers, mais je cherche une approche plus précise qui enregistre tout pour que je puisse l’analyser après.
Exécutez votre installateur. J’utilise FileZilla pour cet exemple.
Pendant que l’installateur fonctionne, vous pouvez utiliser le réticule et le glisser sur la fenêtre de l’installateur. Cela créera un filtre qui fait que Process Monitor n’affiche que les événements relatifs à ce processus.
Vous pouvez aussi attendre que l’installateur ait terminé et le repérer vous-même parmi les événements enregistrés. Vous pouvez faire un clic droit sur le Nom du processus et créer facilement un filtre Inclure.
Vous aurez maintenant un journal de chaque accès au système de fichiers ou au registre de l’installateur. Vous pouvez maintenant créer des filtres supplémentaires pour analyser davantage les données ou utiliser les fonctions disponibles depuis le menu Outils.
Notamment Résumé des fichiers et Résumé du registre pourraient être intéressants dans ce contexte.
Cependant, notez que lorsque vous filtrez les événements pour un processus spécifique uniquement, vous pourriez manquer des opérations qui ne sont pas directement causées par le processus de l’installateur lui-même. L’installateur pourrait appeler une API Windows qui cause indirectement des changements de valeurs de registre.
De même, l’installateur pourrait simplement créer un processus enfant qui effectue des modifications de fichiers et/ou de registre. Ce processus enfant ne serait pas non plus visible quand vous ne filtrez que sur le processus parent.
Quand un processus crée un processus enfant, cela sera indiqué par l’opération Process Create dans Process Monitor.