Ces dernières années, des détails historiques sur Windows 95 ont été continuellement découverts, notamment la manière dont Microsoft regroupe divers « contenus intéressants » dans le CD d'installation, la manière dont le système d'exploitation empêche les installateurs externes de rétrograder les composants clés du système et la manière d'obtenir des redémarrages plus rapides grâce à des mécanismes spéciaux. Maintenant, une autre vieille histoire liée à la détection des installateurs a été révélée.

L'ingénieur principal de Microsoft, Raymond Chen, a récemment rappelé que même si Windows 95 a déjà la capacité d'empêcher les installateurs externes défectueux de rétrograder les composants du système, le principe est que le système doit être capable de déterminer "si le programme en cours d'exécution est un programme d'installation". C’était effectivement une question épineuse à l’époque.

Afin de résoudre ce problème, Windows 95 adopte un mécanisme de détection heuristique très basique, dont le concept central est « deviner en fonction du nom ». La méthode spécifique est la suivante : si les mots "setup", "installer", "inst" et d'autres mots apparaissent dans le nom du programme en cours d'exécution, le système en déduira qu'il "est probablement un programme d'installation". Afin de s'adapter aux différents environnements linguistiques, Windows 95 a également ajouté une variété de variantes localisées, telles que "imposta" italien, "ayarla" turc, "felrak" hongrois, etc. Tant que le nom du fichier contient ces racines, le système le traitera également comme un programme lié à l'installation.

Si le nom du programme lui-même ne contient pas ces mots-clés, Windows 95 activera une « solution de dissimulation » : vérifiez si le mot « setup » apparaît dans le chemin d'accès au fichier exécutable. L'idée de conception est toujours très simple : le véritable programme d'installation est souvent placé sous un chemin de répertoire clairement marqué comme "setup", il est donc toujours possible de l'identifier via le nom du chemin. Ce type d'« identification par devinette » basée sur les noms de fichiers et les chemins d'accès semble assez primitif dans les temps modernes, mais dans les conditions logicielles et matérielles et les méthodes de distribution de logiciels de l'année, il s'agissait d'un compromis simple et efficace.

Après avoir identifié l'installateur suspect, le système dispose également d'une stratégie correspondante sur la façon de protéger les fichiers clés. Chen a souligné que dans les deux scénarios de reconnaissance ci-dessus, Windows 95 ne vérifiera pas immédiatement les fichiers concernés, mais choisit de reporter la vérification des fichiers jusqu'au prochain démarrage du système. La raison en est qu'une fois que certains programmes d'installation ont constaté que le fichier cible est "occupé et ne peut pas être remplacé temporairement", ils appelleront ExitWindowsExec pour quitter Windows vers MS-DOS, puis remplaceront le fichier dans un environnement DOS pur via un script batch et enfin redémarreront Windows. Par conséquent, il est nécessaire d'attendre que le système termine ce processus de redémarrage avant de pouvoir « récupérer » ces fichiers qui peuvent avoir été modifiés de manière incorrecte par le script batch.

Toutefois, cette « vérification différée » ne s’applique pas à tous les scénarios. Dans certaines situations, telles que les pilotes multimédia installés via des fichiers INF, Windows 95 effectue des vérifications de fichiers en temps réel au lieu d'attendre le prochain démarrage. Chen a révélé que l'équipe responsable de cette partie de la fonction semble avoir obtenu une sorte de « laissez-passer spécial » qui peut directement déclencher une vérification instantanée pendant le processus d'installation sans avoir à suivre le mécanisme commun de vérification retardée.

Avec le recul, ces mécanismes semblent à la fois simples et « faits maison » par les ingénieurs. Windows 95 utilisait des règles extrêmement simples et des « suppositions » heuristiques pour créer un cadre d'identification et de protection de base pour les installateurs, reflétant les choix de conception faits dans des environnements aux ressources limitées à cette époque. En revanche, les systèmes d'exploitation modernes d'aujourd'hui (tels que Windows 11) ont utilisé des moyens techniques beaucoup plus complexes et sophistiqués pour l'identification des installateurs et la protection de la sécurité du système que par le passé, ce qui est presque inévitable dans l'environnement des menaces de sécurité qui n'a cessé d'évoluer et de s'intensifier au cours des dernières années.