漏洞管理从来不是安全部一个人的事
上个月跟南京软件大道某公司的技术总监在门口的龙虾摊喝酒,他扒着小龙虾壳叹气,说上个月刚被勒索病毒敲了20万赎金。原因说出来都好笑——半年前第三方漏扫团队扫出来的一个OpenSSL高危漏洞,当时记在共享文档里,开发说当期排期满了,要等下季度迭代再修,结果黑客比迭代排期快多了,直接顺着这个漏洞摸进了生产网,把客户数据全加密了。
那些被漏扫报告堆出来的“虚假安全感”
说实话,这种场景我见得太多了。现在但凡有点规模的企业,每年都会花几万到几十万不等的费用采购漏扫服务,报告出来的时候,高危标红、中危标橙、低危标黄,排版整整齐齐,看着特别专业。
然后呢?
然后报告就存在企业微信的共享盘文件夹里,从年初存到年尾,连个明确的跟进责任人都没有,安全岗的人要兼着等保测评、应急响应、账号权限管控一堆杂活,根本没时间挨个追着开发问“你那个漏洞什么时候修”,最后几十页的扫描报告,成了给监管部门检查时拿出来应付的“门面材料”。
我之前去江宁一家制造企业做交流,翻他们的共享盘,从2022年到2024年的漏扫报告攒了120多份,里面有3个可以直接拿到服务器最高权限的RCE漏洞,直到去年生产系统被拖库、生产工艺参数被偷了一部分,IT负责人翻了半天才想起来,这些漏洞早在两年前的第一份报告里就提过。行业里有个公开的统计,90%以上的企业被黑客利用的漏洞,都是已经公开了修复方案的已知漏洞,从漏洞公开POC到被黑客大规模利用的窗口,平均只有72小时。很多企业的高危漏洞平均修复周期是27天,相当于黑客都把你家大门撬坏走了三回了,你才慢悠悠想起要找个锁匠换锁。
别把修复全压在开发的排期上
很多人对漏洞管理的认知还停留在“安全团队找漏洞,开发团队修漏洞”的二元对立阶段,觉得只要开发不配合,这事就推进不下去。真不是。
方法不对而已。
之前认识一个做垂直电商的技术负责人,之前他们的漏洞修复平均周期是27天,安全团队天天追着开发派单,两边闹得特别僵——开发说安全团队没事找事,天天把一些无关痛痒的小问题当成大任务派下来,根本不考虑迭代进度;安全团队说开发没有安全意识,等着被黑客打穿了才后悔。后来他们改了个规则,把所有漏洞按照实际影响范围分成三档:第一档是直接面向公网、不需要登录就能利用的漏洞,24小时内必须打补丁,实在赶不及更新代码的,先上WAF规则临时拦着;第二档是内网权限下可以利用的漏洞,7天内完成修复;第三档是低危的、需要特殊交互条件才能触发的问题,比如响应头暴露服务器版本号这种,跟着常规版本迭代走就行,不单独派单。
效果真的惊到我了。
上个月Log4j类的新0day刚出来的时候,他们2小时就把所有公网入口的临时防护规则下发完了,全程没慌神。搁之前遇到这种情况,安全部得半夜挨个给开发打语音电话,对方迷迷糊糊说“我在睡觉,明天再说”,等第二天醒过来,同行业的另外三家已经被打穿上新闻了。

不过话说回来,真不是开发不重视安全,你天天把需要特殊触发条件的低危漏洞,跟能被直接拖库的高危漏洞混在一起派单,谁都会麻。之前他们给开发派单,要求3天内改掉“页面返回的响应头里带了Nginx版本号”的问题,开发直接在群里吐槽“我改这个的时间够写完两个新功能了”,后来他们把这种低危问题统一攒到版本更新的时候批量处理,开发的配合度一下就上来了。
把漏洞管理揉进日常工作里,才不会累
很多人一提漏洞管理,就觉得要花大价钱采购专业的平台,要配专门的安全团队,小公司根本做不起。真不是。
20人以下的创业团队,哪怕用个在线共享表格,把每个漏洞的责任人、修复截止时间、当前状态标清楚,每周固定抽10分钟开个同步会,都比把报告存在网盘里强。别等季度末才集中处理漏洞,那样你会发现攒的漏洞多到根本修不完,最后大家直接集体躺平。
之前帮软件大道附近一个做小SaaS的团队搭流程,他们之前因为一个依赖库的旧版本漏洞,导致客户的合同数据被爬走,赔了小十万。后来他们把开源依赖的漏洞扫描步骤直接嵌到CI/CD流水线里,只要扫到高危的已知漏洞,直接阻断代码上线,根本不用等到系统部署完了、漏扫出来了再返工。就这么个简单的改动,半年下来,他们的高危漏洞存量直接从47个降到了3个,安全团队也不用天天追着开发催单了。
很多人总觉得网络攻击离自己很远,说“我这点小业务,黑客才懒得费力气看”。
真不是。
现在的黑客都是用自动化工具扫全网的,你系统上有个公开的已知漏洞,可能你早上刚喝完豆浆到公司,就发现系统已经被植入挖矿程序了。漏洞管理从来不是要求你做到系统100%没有漏洞——那根本不现实,再厉害的团队也做不到。你要做的,就是把那些能被人直接钻空子的窟窿先堵上,别等人家都进你家门翻抽屉了,你才想起门锁早就坏了。