Je me demande si j'obtiendrai un résultat différent lors de la production d'une somme de contrôle sur un fichier .exe avant, puis pendant ou après l'exécution de ce fichier. Je suis plus préoccupé par la pratique courante (comme la production d'un hachage SHA de l'application populaire comme firefox.exe) que par les cas limites, mais les deux sont intéressants. Merci.Hash d'un fichier .exe
Répondre
Le hachage d'un fichier doit être constant tant que le fichier est identique (c'est-à-dire qu'il ne contient que les mêmes octets, dans le même ordre). Il est très rare de trouver des applications qui réécrivent leur représentation sur disque lors de l'exécution, de sorte que le hachage doit être constant. Il existe des programmes auto-modifiables, mais ils ont tendance à fonctionner sur la copie de leur code chargée en mémoire, plutôt que sur la copie de disque. Edit: Nous devrions envisager des applications de "mise à jour automatique", mais celles-ci tendent à lancer un petit programme d'aide pour télécharger et mettre à jour l'application de base. Il est difficile (surtout sur Windows) de mettre à jour une exécution pendant son exécution. Les systèmes UNIX ont tendance à utiliser les systèmes Copy on Write, il est donc possible qu'une mise à jour logicielle puisse modifier votre exécutable sous vos pieds - mais là encore, il s'agit d'un «casse-case».
Le hachage ne changera que si l'exe change. Cela ne se produira que si l'application se modifie, ce qui ne se produira pas sur Windows sans le redémarrage de l'application. Firefox pourrait se mettre à jour (y compris un redémarrage), mais en dehors de ces cas, le hachage restera le même.
Le hachage va changer si le fichier change.
Les fichiers EXE changent rarement d'eux-mêmes. firefox.exe
changerait si l'utilisateur met à jour vers une nouvelle version.
Vous pouvez vérifier l'attribut "date de modification" d'un fichier EXE (comme firefox.exe
) après l'avoir exécuté pour voir s'il a changé, mais vous ne le trouverez probablement pas.
Si vous voulez dire la modification du dernier temps d'accès, ne vous inquiétez pas, il est stocké au niveau du système de fichiers, pas dans le fichier, donc le hachage restera le même.
- 1. Installation d'un fichier exe -VBSCript
- 2. Signature d'un fichier Windows EXE
- 3. C# hash
- 4. y compris un fichier exe à jar
- 5. Comment obtenir le nom de fichier .EXE
- 6. Rails - Constantes Hash?
- 7. Erlang Hash Arbre
- 8. Méthode de formulaire HTML = HASH?
- 9. Mise à jour d'un Hash
- 10. table de Hash en JavaScript
- 11. SHA1 hash différent sous Vista et XP
- 12. Gestion des fichiers .exe
- 13. rechercher l'icône pour .exe
- 14. extrait le fichier cab et exécute le fichier exe (à l'intérieur du fichier CAB) automatiquement
- 15. py2exe incluant les DLLs MSVC dans le fichier .exe
- 16. Comment lire la version du fichier .exe windows?
- 17. Le DllMain d'un fichier .exe peut-il être appelé?
- 18. Démarrer un autre fichier EXE dans le code managé
- 19. Exécutez le fichier exe sur un autre ordinateur
- 20. Création d'un seul fichier exe à partir du code Python
- 21. Code simple pour extraire une icône d'un fichier .exe
- 22. Comment puis-je exécuter un fichier .exe via WebService
- 23. Rediriger la sortie du fichier de commandes exe
- 24. Comment faire pour exécuter le fichier d'installation exe seul?
- 25. Déploiement d'applications Windows Forms avec un seul fichier EXE
- 26. Comment faire pour exécuter le fichier .exe par mon Webservice?
- 27. Faire un fichier .exe dans Visual Studio 2008
- 28. Comment intégrer un assembly satellite dans le fichier EXE
- 29. exe au service
- 30. DllMain dans un exe?
Une telle modification sur un disque d'un fichier exe serait probablement signalée par tout vérificateur de virus comme un comportement «semblable à un virus». –
L'exe lui-même aura-t-il jamais des composants ou des «ressources» qui, disons, contiennent des données de configuration qui pourraient changer à la suite de l'exécution de l'exe? – Brian
@Brian, généralement pas - les données de configuration sont presque toujours stockées séparément – bdonlan