目 录
第一部分 楔子
第二部分 漏洞管理实践
一、 检查流程线上化
二、 弱密码治理
三、 漏洞评估及清分
四、 开源组件风险治理
第二部分 展望
一、 黑盒漏扫是原罪
二、 资产白盒漏洞评估
三、 漏洞管理革命
四、 漏洞情报及知识库
第一部分 楔子
去年《银行业漏洞管治理实践与展望--漏洞管理的道与术》文章提出下一阶段的展望:重点是全面、深入地实现资产安全管理,一年过去了,我仍陷入在漏洞管理的泥潭里,资产管理工作未能深入。
漏洞层出不穷,漏管接入渠道源越多,需要治理的资产和漏洞也越多,于是,这一年,我在资产核实、漏洞清分的深坑里欲仙欲死。
2023年总共新增了2.9万个CVE漏洞,51.8%为高危及严重,漏洞平均分为7.12,平均“高危”等级,仅以CVSS评分标准开展漏洞管理运营就像老师划重点:全书都是重点,所有漏洞都需要改。
近期,在跟香港pwc对线中,他们对于漏洞的认知就是,扫描发现的中、高风险都要改,所有漏洞都要有管控,后半句我赞同,但前半句只能说想得太美。
漏洞能不能改、要不要改这是一个复杂的风险评估过程,它应该遵循风险应对标准,可以是风险规避、风险接受、风险转移、风险减轻的任意一种。所有被发现的漏洞都应该被管控,但并不是所有的漏洞都是能修复的。
近十年,漏洞数量暴增,但是具备POC漏洞的仅有10%左右,90%以上的高危严重漏洞利用暂不可利用,而具备POC的漏洞有44%为中低风险。
从这些数据里可以看出,漏洞管理是矛盾的:漏洞总量很多,实际风险较少;高危低伤很多,低危高伤不少;评分普遍偏高,实际风险较低。
如何从这些矛盾中找出漏洞管理的主要矛盾,这便是漏洞管理运营的难点,于是建立有效的漏洞评估及清分机制便势在必行,必要时,必须推倒现有漏洞管理的体系,进行一次深度的漏洞管理革命。
第二部分 漏洞管理实践
2024年,主要完成了项目/需求的安全检查流程线上化,进行了弱密码治理和开源组件风险治理,建立了漏洞红名单、漏洞白名单、扫描黑名单、资产白名单,使漏洞清分管理效率得到了大幅提高。
一、检查流程线上化
前期,项目/需求的安全检查由项目经理根据项目管理平台上安全检查标签,向安全管理人员申请检查,并线下沟通检查、整改进度和结果。存在如下问题:
1.安全检查依赖项目经理申请,存在漏查、检查不及时的情况。
2.检查进度、整改进度通过线下沟通,效率低下。
3.上线变更流程未有效关联检查、漏洞结果。
于是,安全检查流程线上化就势在必行了,当项目/需求进入安全检查节点时,项目管理平台推送检查工单给漏管平台,安全人员在漏管平台上接单并开展检查,并最终实现安全检查和漏洞整改闭环管理。
在这个过程中,工单处置、漏洞整改均使用漏管平台,项目管理平台只作检查发起和结果展示。具体流程如下:
(1)项目管理平台根据项目安全检查标签创建不同类别安全检查工单(主机扫描、web扫描、代码审计、渗透测试、安全评估等);
(2)项目经理填写检查信息后,项目管理平台调用API接口在漏管平台创建检查单;
(3)安全人员在漏管平台上接单,进行手工检查或使用漏扫集成的工具进行漏洞扫描;
(4)安全人员将需要整改的漏洞派发给相应项目经理整改;
(5)项目经理登录漏管平台确认和处置漏洞;
(6)项目管理平台定期调用漏管接口查询检查单状态和漏洞状态;
最终实现项目/需求的安全检查流程线上化,提高了安全检查、整改效率,并进一步加强了项目/需求上线前的安全检查门禁管控。
二、弱密码治理
弱口令包括默认密码、常用简单密码、空密码等,弱口令问题一直都是企业安全管理主要问题之一,也是广大安全人员的痛,是最容易被利用和攻击的一类漏洞,一发入魂。
随着设备数量日益增加、种类日益繁多,堡垒机未能纳管的内网终端、中间件管理台、web管理端等都是弱密码的重灾区。发生弱密码的原因很多,主要有:
(一)账号密码管理流程不完善
1.用户创建后未及时提交密码管理员上收;
2.密码未及时上收或未及时设置改密策略;
(二)密码安全配置不到位
1.资产账号创建时就已经是弱密码;
2.weblogic、tomcat等初始密码未修改;
3.SNMP初始配置未及时修改;
4.Redis、MySQL、FTP存在空密码或未授权;
5.未及时禁用非必要用户;
(三)安全意识不到位
1.堡垒机不能托管的设备或资产使用常用简单密码;
2.强密码被修改为弱密码;
所以,在事前,有必要完善中间件、FTP、web管理台等上线安全配置管理规范,将密码管理纳入上线配置管理流程,实现系统上线后密码上收的闭环管控。
事后则可以通过HIDS、漏洞扫描、脚本排查等方式发现弱密码漏洞,比较好的实践有:
1.HIDS:HIDS设置弱密码字典,每日自动输出弱密码资产及用户,并同步至漏洞管理平台。
2.漏洞扫描:启用漏扫工具或资产测绘工具的弱密码、空密码以及未授权访问POC扫描功能,通过扫描发现弱口令。
3.脚本排查:使用运维agent自动执行弱密码排查脚本John the Ripper:https://www.openwall.com/john/k/john-1.9.0.tar.gz
三、漏洞评估及清分
在实际漏洞管理过程中,确认不改的漏洞总会在其他资产上重复出现,而需要改的漏洞又不能快速筛选出来。于是,跟厂家提建议做了漏洞红名单、漏洞白名单功能。
漏洞红名单:添加到这个名单里的漏洞,都提示要优先派发或自动派发,内置勒索攻击漏洞、两高一弱漏洞、关键漏洞和一些紧急必须修复的漏洞。
漏洞白名单:添加到这个名单里的漏洞,都自动设置不修复关闭流程。这主要是一些危害小、利用难、无需关注处理的漏洞。
在漏洞派发时掌握的漏洞知识沉淀下来,通过红名单、白名单这两个库,一个自动过滤不需要关注的漏洞,一个筛选出优先关注的漏洞,掐头去尾也能处理不少漏洞,随着红、白名单漏洞库的沉淀和积累,自动处理的漏洞也会逐渐增多,漏洞清分效率也能能大大提高。
近两年,人行、金管局等监管通报的漏洞增多,如何迅速排查哪些资产存在漏洞,这是近几年所有安全人员都头大的问题,每次都全网扫描不现实,邮件排查又没法保证质量。
这时,红名单就派上用场了,将两高一弱、勒索攻击等监管通报的高危漏洞录入红名单,通过红名单可自动匹配出漏管平台里的漏洞并标识相应标签,根据标签即可筛选出命中漏洞的资产并督促整改。
当然,利用红名单的排查漏洞,首先得把资产覆盖面、漏洞覆盖面、漏洞时效性等做好,这又是漏洞管理的运营难点了。
红名单和白名单应该互斥,添加到红名单里的漏洞应该自动将白名单里的去掉,添加白名单漏洞时应校验漏洞是否在红名单,如果在,则添加失败。
红名单应该是是已知可被利用的漏洞,它是精准的、有实质风险、宁缺毋滥的,添加进去的就一定要改的。
白名单漏洞则属于一种妥协,它是随时可转化成红名单的,毕竟漏洞也很可能突然被曝出来可利用了。
但,仅仅依赖红名单挑选出要修复的还远远不够,还应该综合漏洞信息和修复方案,优先推进容易修复、影响面广的漏洞修复工作。
同时,在漏洞管理实践中,扫描黑名单、资产白名单、服务红名单、漏洞关联分析也是很有用且必要的。
扫描黑名单:不能扫描或者无需扫描的IP,漏洞管理平台编排任务时剔除漏扫黑名单里的资产。
资产白名单:可以忽略漏洞的蜜罐资产、无需关注的资产,平台自动关闭该资产的漏洞。
服务红名单:将两高一弱高危端口服务加入服务红名单后,漏管发现该服务开放即可通知对应资产责任人确认。
漏洞关联分析:分析漏洞影响对象,关联资产指纹,筛选出该漏洞可能影响的资产,实现漏洞情报的自动排查,提高漏洞处置效率。
四、开源组件风险治理
如果将开源组件漏洞全导入漏洞管理平台,那漏洞管理平台将没法使用,因为组件资产量太多、漏洞量也实在太大了,安全人员根本没法有效管理所有漏洞。
于是,我们采取了几个策略:组件黑名单、组件版本基线、漏洞聚合。组件黑名单、版本基线应该覆盖哪些组件?这是一个现实问题,应该既要贴合实际,又要立足未来发展。
组件黑名单:分析“两高一弱”以及近几年容易利用、危害高的高危漏洞对应的组件及版本,将命中此类漏洞的所有组件版本的均纳入组件黑名单。
组件版本基线:通过扫描公司全量代码仓库梳理影响应用Top1500,外加maven官方top1000(https://mvnrepository.com/popular),整合形成开源组件版本库,再分析其安全版本,形成版本基线。
漏洞聚合:对组件命中的所有漏洞进行聚合分析给予组件风险评级,将高危、严重的存量组件推动整改升级。即使这样,需要整改的组件还是很多,毕竟,开源组件太太太太多了。
对于新建系统的开源组件,则需要在设计评审、上线评审等关键环节做好把关,同时,还需要对公司组件仓库进行扫描和监测。
第二部分展望
一、黑盒漏扫是原罪
50个高危漏洞的资产和1个高危漏洞的资产,都是版本型漏洞,先修哪个?相信大家都很容易选择,肯定修复50个高危漏洞的资产,但是实际结果可能并不是这样。
在漏洞管理实践中,一般从漏洞维度来推动漏洞整改的,看到的是漏洞的点,而不是资产的面。
漏扫是黑盒,不同工具能力不一样,相同漏洞,不同检测脚本得出的结果也可能完全不一样,比如笔者前段时间发现的某市问政平台存在shiro反序列化漏洞,命令执行都成功了,但是CNVD反馈是未复现。
事后发现目前大多数人使用的是git上最新的4.7版本shiro利用工具,它在扫描时会被Connection reset,而笔者使用的却可以执行。
漏扫的出现是为了发现已知漏洞,现在的漏扫除了发现POC漏洞以外,大多数是版本型漏洞,而一般系统、软件的banner信息都可以隐藏或自定义的,所以漏洞扫描工具扫描一定会漏报、误报。
所以黑盒扫描是不靠谱的,漏洞管理仅仅依赖漏洞扫描是完全不够的,黑盒原理是漏洞管理难的原罪。
二、资产白盒漏洞评估
回归本源,漏洞治理的本质是减少漏洞,如何减少漏洞?毋庸置疑就是升级、更新,但哪些更新、哪些不更新呢?这是一个现实问题。
转变思路,既然漏洞扫描识别的是资产的版本,那是否可以在主机内执行脚本,收集资产的版本、补丁信息,再进行主机资产漏洞风险评估呢?
就像系统组件漏洞评估可以使用离线工具生成SBOM文件,通过分析SBOM文件判定系统使用的组件版本是否有漏洞,同理,在主机内执行脚本获取操作系统、中间件以及各类软硬件的版本、补丁等信息后,也应该可评估系统的风险和漏洞。
从原理上来说,使用非扫描模式,以知识图谱推理的方式发现漏洞、威胁,推动版本升级和补丁更新,应该是行得通的。
漏洞扫描是黑盒,以资产版本评估漏洞这属于白盒。白盒相较黑盒好的一点便是全面、精准,当然不好的一点是目前好像没有厂家这么搞。它需要重构底层漏洞知识库,从漏洞角度转变为资产角度:
CVE编号 | 漏洞名称 | 漏洞等级 | 漏洞描述 | 修复方案 | 影响产品 | 影响版本 |
产品 | 版本 | 风险等级 | 漏洞情况 | 建议升级版本/修复方案 | 修复影响 |
从漏洞角度管理漏洞,2024年10月oracle推出的weblogic版本涉及5个漏洞,安全人员需要派发5条漏洞给资产责任人,资产负责人则需要分析5条漏洞信息和5条漏洞整方案,而它实际说的都是同一件事→升级!
而从资产角度管理漏洞,则只需要派发一条漏洞给资产责任人,内容也很精简、明确→升级!
这样的漏洞整改效率毋庸置疑会更高,前者还在分析漏洞时,后者已经在测试补丁了。
针对生产系统的漏洞扫描,其实是有风险的,所以在等级保护实施或外部检查时,企业总是会有疑虑的。但是,使用资产白盒漏洞评估则可以很好地避免扫描风险,并且获取精准的漏洞风险信息。
三、漏洞管理革命
所以,针对软硬件的漏洞管理,我们需要一次思想革命,走出发现漏洞、分析漏洞、处置漏洞、复测漏洞的漏洞管理泥潭,进而转变思路为:发现资产版本信息、分析版本漏洞信息、升级或补丁。
传统的补丁管理多采取被动响应模式,即在发现漏洞后补丁升级,资产白盒漏洞评估则是主动出击,通过持续监控,主动发现资产应该打的补丁,并通过补丁自动化变更,实现更高效的处置漏洞。
从资产版本入手,需要管理的数量级应该暴减,毕竟资产版本数量应该少于漏洞数量,所以,从资产版本风险角度推动操作系统、中间件、数据库的版本升级和补丁更新,这可能是漏洞治理的最优解。
对于追求稳的金融行业,升级打补丁那都是望而生畏的一件事,所以一直是缝缝补补,如果不转变为主动出击的思维,历史包袱只会越来越重,所以,企业风险管理策略也需要转变,逐步建成大周期大版本升级、小周期现版本更新的常态化机制。
漏洞管理革命不止企业要转变思维,安全公司同样也需要,它需要把现有的漏洞数据转化为高质量的版本/补丁风险管理数据。
现在的漏洞库基本都存在影响产品没有、不全、不准,厂家、扫描器、用户对产品的命名也存在不统一、不规范,这都是需要治理,也是漏洞管理转型的难点。
当然,现阶段还有种过渡的解决方案,那便是聚合资产漏洞分析,综合漏洞给定资产风险级别,推动版本升级,实现升级一次修复一批,提高漏洞修复成效。
从资产角度入手做资产的版本风险管理后,漏洞管理是软硬件版本维度,而不是漏洞维度,这样选对先修50个高危漏洞的资产就是一道送分题。
但,我们最终目的还是管漏洞,所以不能陷入追求资产精准、全面的资产安全管理怪圈,应该是先管已知需要管理的资产,这些做好了,再通过网管、资产测绘等手段发现和管理未知资产。
要把漏洞管理从锦上添花变成必需品,需要安全公司跳出漏洞管理修修补补的传统做法,深入资产漏洞治理的无人区,形成版本管理、补丁管理全流程管控,为企业提供版本升级、补丁更新的工作指引,从根源上预防漏洞、治理漏洞。
从漏洞管理角度管漏洞,那叫管杀不管埋,而从资产管理角度管漏洞,则属于扶上马送一程。
当然,漏洞管理革命并不是说完全弃用漏洞管理平台,只是软硬件漏洞管理做法变更,而传统的错误安装、配置错误、使用过时的协议、架构问题和其他漏洞还是需要依赖传统的漏洞管理产品、漏洞扫描产品。
四、漏洞情报及知识库
漏洞管理,资产信息是基础,漏洞发现是手段,漏洞情报则是武器库,丰富的漏洞情报,可以让安全人员快速评估漏洞危害、制定漏洞修复计划。
现在每家安全公司都维护一套漏洞库,大多数漏洞库侧重点都是漏洞,核心信息只会涉及软硬件影响面(厂商、应用及版本)和漏洞本身技术层面的评估(威胁类型、利用场景、危害大小等),在漏洞修复(修复方案、修复难易、是否重启、修复方式)等方面则比较欠缺,而且由于资源限制,漏洞库的信息准确度、及时性并不那么完善。
这就需要安全厂商和漏洞管理人员持续维护和更新漏洞知识库了,最终实现当漏洞管理平台发现相同漏洞时,可自动化变更、自动验证并更新漏洞状态。
当然,这只是理想状态,实际的漏洞管理任重而道远,仍需我们继续努力努力再努力。
针对漏洞管理,本人设计了关于漏洞管理的调研问卷,感谢各位大佬抽出时间参与,希望能收集各位对漏洞管理的看法和经验,在收集完成后也将在下一篇文章里分享各位的想法和见解,为行业提供漏洞管理的思路。
最后,贴出近两年优质的漏洞管理文章合集,以飨读者:
1.虎符智库__汪列军__漏洞情报:为什么、要什么和怎么做
https://mp.weixin.qq.com/s/uXj3ahOt9wfGvllr8cfZJw
2.虎符智库__武鑫__奇安信的漏洞管理实践
https://mp.weixin.qq.com/s/2bIy7611x7DFaeN9Tw9lOg
3.安全村secUN__黄清华__浅谈甲方单位的漏洞管理
https://mp.weixin.qq.com/s/V7L9XWkE5cMxpP7VC4tATw
4.安全村secUN__杨启维__漏洞全流程自动化动态清零运营与实践
https://mp.weixin.qq.com/s/jltR3I6LCn8XRI9mgohhiQ
5.极思__刘亦翔__全量安全资产管理-进阶实践
https://mp.weixin.qq.com/s/b8W-FtTy4B8cGtPfp_2uRw
6.安全女巫__aderduo__漏洞治理难度大?建立完善的漏洞管理流程是关键!
https://mp.weixin.qq.com/s/OYsDeW_nKEAEzz8vCf30vw
声明:本文来自Pensecife,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。