IT 之家 7 月 8 日消息,据微软资深工程师雷蒙德 · 陈当地时间 7 月 7 日在微软官网发文介绍,虽然 Windows 95 本身已经具备拦截存在缺陷的第三方安装程序、防止其降级系统组件的能力,但随之而来还有一个难题:系统该如何识别安装程序或安装文件正在运行。。

IT 之家注意到,为解决这一问题,微软采用了一套十分简易的启发式判定机制,核心逻辑是通过文件名 " 猜测 " 程序是否为安装程序。判定规则很简单:如果正在运行的程序文件名中包含 setup、installer、inst 这类关键词,系统就判定它大概率是安装程序。同时这套机制还收录了其他语种的对应变体词汇,例如意大利语的 imposta、土耳其语的 ayarla、希伯来语的 felrak。
如果程序文件名里没有上述关键词,Windows 95 会启用备用判定规则:检查该可执行文件的完整存储路径中是否带有 setup 一词。背后逻辑不变 —— 安装程序的文件路径一般都会带有明确标识,方便系统识别。
陈还补充道:" 上述两种判定场景下,系统不会立刻校验文件,而是延迟至下次开机再检测。原因在于部分安装程序检测到系统文件正在占用、无法直接替换时,会调用 ExitWindowsExec 函数退出 Windows 系统,切回 MS-DOS 环境运行批处理脚本,之后再重启 Windows。我们必须等到系统重启,才能捕捉到这批脚本非法篡改的系统文件。"
不过有个例外:通过 INF 文件安装多媒体驱动时,Windows 95 会实时校验相关文件,负责多媒体驱动开发的团队当时拿到了特殊豁免权限。

Windows 95 当年竟依靠如此简陋的判定逻辑识别安装程序,近些年来各类恶意程序攻击手段愈发复杂成熟,可想而知,Windows 11 这类现代操作系统早已改用更精密、先进的识别方案。


登录后才可以发布评论哦
打开小程序可以发布评论哦