当前位置:首页 > 综合

360漏洞补丁智能忽略

公司内网那台Windows Server 2012,漏洞上周又弹出了那个熟悉的补丁黄色盾牌图标。我扫了一眼,忽略是漏洞KB5031234,累积更新,补丁体积不小。忽略点进去看详情,漏洞微软的补丁说明写得云山雾罩,核心意思就一个:修了三个CVE,忽略两个远程代码执行,漏洞一个权限提升。补丁按规矩,忽略这种补丁得走变更流程,漏洞测试、补丁审批、忽略窗口期,一套下来至少两周。

但这次我犹豫了。这台服务器跑的是某个老旧的库存管理程序,开发商早就不维护了,上次打补丁直接蓝屏,折腾到凌晨三点才用快照恢复。更关键的是,这三个漏洞的利用条件——需要域认证、需要本地访问、需要特定端口开放——这台机器在内网三层交换机后面,只对两个网段开放了特定端口。攻击面窄得可怜。

于是我做了一件以前不太敢做的事:在WSUS里把这个补丁设成了“已批准但未安装”,然后手动在注册表里加了条键值,让系统忽略这个特定KB的提醒。桌面上那个黄盾牌消失了,世界清净了。

这不是偷懒。这是算账。

360安全卫士的“漏洞修复”模块里,其实一直藏着一个“智能忽略”的功能。很多人没注意过。它会把扫出来的补丁分几类:高危、重要、可选、功能更新。高危里又细分,有些是“蠕虫级”的,比如当年的MS17-010,那种必须秒打;有些是“本地提权”的,你得先能登录进来才能利用,优先级就低得多。360的算法会根据你的系统版本、已装软件、网络环境,甚至开机时长,给每个补丁算一个“实际风险值”。低于阈值的,直接折叠进“可忽略”列表。

我后来把公司那台服务器的补丁策略整个调了一遍。用PowerShell拉了一份已装补丁清单,和微软的MSRC公告交叉比对,筛出所有“远程利用且无需认证”的——这类必须打,没商量。剩下的,按CVSS评分和攻击向量分三档:需要本地认证的、需要用户交互的、纯DoS的。后两档直接进忽略名单,只在季度维护窗口统一处理。

效果立竿见影。以前每次补丁日,十几台服务器要重启,业务部门怨声载道。现在每月真正需要紧急处理的,也就两三台。省下来的时间,我拿去做了两件事:一是把内网所有服务器的RDP端口从3389改掉,加了IP白名单;二是把本地管理员密码全部换成LAPS随机管理的。这两件事对安全态势的改善,比多打十个补丁来得实在。

当然,智能忽略不是万能药。你得清楚自己在忽略什么。比如那个“永恒之蓝”,攻击向量是SMBv1的远程匿名利用,这种绝对不能忽略。但像某些.NET Framework的更新,只影响特定版本的IIS应用,而你服务器上根本没装IIS,那忽略掉毫无问题。关键是判断依据要透明,不能是“我觉得没事”。

我现在的做法是:每个被忽略的补丁,都在工单系统里留一条记录,写明忽略理由、参考的CVE编号、补偿性控制措施。三个月后回头审计一遍,如果某个漏洞突然出现了在野利用,或者攻击向量变了,再把它从忽略列表里捞出来。动态调整,而不是一劳永逸。

上周微软又发了新补丁,里面有个SMB的远程拒绝服务漏洞。按老规矩,我查了攻击条件——需要认证,且只能造成服务短暂不可用,不涉及代码执行。直接忽略。省下来的重启时间,够我把那台库存服务器的数据库索引重建一遍,那才是真正影响业务的事。

补丁管理这事,说到底是个风险管理游戏。不是打得越多越安全,而是要知道哪些必须打,哪些可以等,哪些根本不用打。360那个智能忽略功能,名字起得挺准——关键在“智能”两个字,而不是“忽略”。

分享到: