漏洞管理Vulnerability Management的痛点不言而喻,自从2017年以来几乎成倍增长,而且每年增多,上图显示2020年前3个季度已经有将近1万4千个CVE漏洞。然而近日Kenna Security安全公司指出,2019年披露的1.8万个CVE中仅有473个遭到可能影响公司企业的恶意利用。修复漏洞也是需要成本的,哪些该修,哪些可以按部就班,“漏洞管理”对于企业,正成为发现漏洞以外的另一个头痛的问题。近日笔者发现SecureWorks的一份产品PR文就戳中了不少这些痛点,今天且分享一下其提高漏洞管理效率的几个入手点:
通过AI识别漏洞利用趋势VTS(Vulnerability Trends Score)
基于上下文的漏洞风险评分CPS(Contextual Priotizization Score)
通过SaaS服务利用基于行业的修复优先评分
虽然这些观点跟其他厂商的提的也差不多,但过去往往都没有给出详细实现的方法,通过翻阅了SecureWorks去年(2020.09)收购的Delve Security(加拿大漏洞管理厂商)的材料,我们可以看到一些详情。
MySQL远程代码执行漏洞CVE-2016-6662基于上下文重新评估的风险分
一、通过AI识别漏洞利用趋势VTS(Vulnerability Trends Score)
将基于AI的情感分析技术套用到网络安全领域,大量收集CyberSercurity领域的新闻网络,社交网络,博客,安全公告等在线网络安全对话源,以此预测哪个漏洞最有可能被利用,哪些是网络安全专家最关注的,以及随着时间推移这些“情感”度的变化(当一个漏洞出现exploit,往往这种情感度就会快速变化)。过去很多情报厂商也以此为卖点,今天且看看Delve Security具体是怎么做的。
首先,是通过National Vulnerability Database (NVD)公布的每个CVE漏洞及其文字描述,提取特征关键字Tokens。
对提取的“关键字”打数字标签,作为LDA(Latent Dirichlet Allocation)文档主题生成模型的输入
持续对新公布的漏洞进行在线学习,通过LDA模型,生成相应的“话题” topic
然后收集网上对漏洞和漏洞利用的讨论内容,结合上面形成的topic进行关联,得出某个“话题”的热度趋势
最后通过开始从NVD提炼的topic向量和上面的趋势向量做点积运算,得出漏洞趋势分数Vulnerability Trends Score (VTS),以此作为漏洞管理优先级的其中一个参考维度
二、基于上下文的漏洞风险评分CPS(Contextual Priotizization Score)
所谓上下文,就好比如游泳健将菲尔普斯训练的时候一天要12000卡的卡路里(正常人大约就2000卡左右),如果没有游泳健将这个上下文,医生一定会认为菲尔普斯的饮食不健康。同样的,CVE的评分也是一样的道理,虽然作为评估单个漏洞可以起重要作用,但是用于衡量漏洞对企业自身风险而言还是有很大不足。如文章开头的CVE-2016-6662MYSQL漏洞一样,通过30多项上下文,以CVE评分10分为起点,结合上下文重新评估出CPS(Contextual Priotizization Score)为7分。
基于漏洞本身属性、资产的上下文、网络的上下文、组织的上下文、外部威胁情报的上下文。以专家的经验形成机器学习专家,针对以上5个方向分别独立给出判断分值,再进行聚合,最终形成CPS
更具体的可以看看该公司开源了一个名为“淘金盘”(Batea)的工具,工具通过Nmap的扫描报告,计算CVE评分在企业上下文环境下需要优先修复的漏洞资产。首先是将nmap报告处理为Python对象,然后通过Isolation Forest的异常检测算法进行筛选。样例中针对一千多个IP地址,先进行简单的二维分析,以IP地址最后一个C段为横坐标,X坐标0~300,代表IP地址的末位数值,Y轴代表端口数量,大部分IP地址都只开放有限的端口所以趋向于0,而越是离散的点代表开放的端口越多,越有可能是异常
通过不断添加更多的维度(features)加入此模型,比如端口数量、服务名称数量等,可以通过模型推测开放相同服务的资产中,其端口的熵值越大的资产,越有可能存在错误的配置。再结合漏洞CVE的维度,CVE分数越高,端口信息熵值越大的那个区域(下图标红部分)的资产,就成为需要优先关注和修复漏洞的资产清单
三、通过SaaS服务利用基于行业的修复优先评分
类比于“学生时代抄作业”,每个人都自己做题,有的做得对,有的做的错,但是当“坏”学生去抄作业的时候,发现90%的人都选了一个答案,那么这个答案是正确的几率会更大。同样,在SaaS服务时代,多个组织都选择实际修复的漏洞,就容易冒泡成为需要优先修复的漏洞。通过机器学习算法——Gradient Boosted Tree Regression(一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案)以用户的选择、偏好、用户历史修复的情况为输入,从而预测最应该优先修复的漏洞。
无独有偶,知名漏洞管理厂商rapid7也在2020年推出了社区版的漏洞评价社区AttackerKB,提供一个社区给各安全从业人员反馈对漏洞影响的评分。包括漏洞对攻击者的价值、是否在野利用、漏洞分析详情等。
同期,Tenable也在的官网的漏洞检测策略中增加了Vulnerability Priority Rating的评分。同样有它一系列的评分标准,包括漏洞被公布的时长、CVSSv3的影响分,漏洞利用代码的成熟度,受影响产品的覆盖率,威胁源信息(社交媒体、暗网等讨论情况)
相关工具地址:
“淘金盘”(Batea)开源地址:https://github.com/delvelabs/batea
“淘金盘”(Batea)在线试用:https://batea.delvesecurity.com/
AttackerKB社区:https://attackerkb.com/
声明:本文来自张三丰的疯言疯语,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。