请及时打补丁 | 80%的漏洞利用公开时间早于CVE编号获得时间
2020-08-31 12:15:00 Author: www.4hou.com(查看原文) 阅读量:224 收藏

Exploit Database

Exploit Database 是最大的公开漏洞利用库。截至目前,Exploit Database中有45450个漏洞利用。图1左是按照漏洞利用类型分类的漏洞利用数和公布时间,图1右是按照平台分布的漏洞利用。统计数据表明web应用是2003之后最流行的漏洞利用。

Left side bar graph shows number of exploits published since 2000, categorized by Web apps, Paper, Shell code, remote, local or DOS. The pie chart on the right categorizes the state of exploit development based on the platforms they were written on, including unix, linux x86, cgi, asp, hardware, linux, windows and multiple platforms.

图1(左)按照漏洞利用类型分类的漏洞利用数和公布时间(右)按照平台分布的漏洞利用

图2是CVSS 2.0评分和漏洞利用的严重等级。49%的漏洞利用为严重等级为high(CVSS >=7),45%的漏洞利用为严重等级为medium(4=<CVSS <7)。换句话说,94%的公开漏洞利用的严重等级为medium或high。

The bar graph on the left shows number of exploits (y-axis) and CVSS score (x-axis). The pie chart on the right illustrates the state of exploit development in terms of severity, categorized as low (CVSS < 4), medium (CVSS < 7 and >= 4) and high (CVSS >=7).

图2. 2000年后公布的漏洞按严重等级划分

漏洞、补丁和漏洞利用之间的时间差

为更好地理解公开漏洞利用的影响,研究人员分析了漏洞利用和相关的CVE编号。此外,还有的漏洞利用没有对应的CVE编号,有些漏洞利用的CVE编号可能还没有公布。目前,Exploit Database中有11079(约26%)的漏洞利用有对应的CVE编号。本研究只关注那些有CVE编号的公开漏洞利用,并分析了漏洞发现、公开漏洞利用以及发布补丁的时间。

图3 是漏洞发现到公开CVE编号的时间线。精确的漏洞发现时间一般是不知道的,但分配CVE-ID的时间和CVE在CVE数据库中发布的时间是可以查到的。一般来说,CVE公布的时间就在厂商发布补丁之后的。一旦补丁发布,攻击者就可以通过逆向补丁来恢复出漏洞。从中可以看出,大多数的漏洞利用开发和公布的时间在补丁发布后的一周内。一些厂商可能会选择延迟CVE发布的时间来给用户更多的时间去更新补丁。

当CVE正式公布后,与漏洞相关的信息就会全部公开。此时,安全厂商开始开发漏洞签名和保护策略。大多数的攻击者也开始进行漏洞利用。在这场攻防对抗的游戏中,速度决定成败。也就是说CVE公布的时间、补丁和漏洞利用发布的时间对安全来说都是非常重要的。

The chart shows possible timelines for exploit development, illustrating what is considered a zero-day vulnerability vs. what is considered an N-day vulnerability, showing both in terms of when vulnerabilities are discovered, when a CVE is assigned, when a patch is released and when a CVE is published.  

图3. 漏洞发现/公布、补丁发布和漏洞利用公布的时间

Number of exploits (y-axis) vs. Week from exploit publication and patch release (x-axis)

图4. 补丁发布后几周内漏洞利用公布的数量

图4是补丁发布后每周漏洞利用公布的数量。Week 1表示漏洞补丁发布后1周内漏洞利用公布的数量。对0 day漏洞,补丁发布日期前公布漏洞利用的week为负值。因为漏洞补丁发布的时间不在Exploit Database和CVE库中,因此研究人员对2015年以来的500个高危漏洞利用作为样本进行了分析。分析发现,14%的漏洞利用在补丁发布前公开,23%的漏洞利用是在补丁发布后1周内公开的,有50%的漏洞利用是在补丁发布后一个月公开的。平均情况下,漏洞利用是在补丁发布后37天公开的。

图5是CVE公布后几周内漏洞利用公开的数量。与图4类似,漏洞利用公布时间早于CVE编号发布时间的week数为负。研究人员发现,有80%的漏洞利用公布时间早于CVE发布时间。一般来说,漏洞利用的发布时间比CVE的发布时间早23天。此外,还有75%的漏洞利用没有对应的CVE编号。

研究人员分析CVE数据库后发现,并不是所有的CVE都是在补丁发布后立刻公布的。因此,CVE发布后,漏洞利用已经发布了,这也说明攻击者比安全研究人员快一步。

Number of exploits (y-axis) vs. Week from cve publication to exploit publication (x-axis)

 图 5. CVE公布后几周内漏洞利用公开的数量

CVE编号分配后,CVE的状态就会变成reserved(预留)。预留的CVE的详细信息在CVE官方发布后不会公开。截至目前,研究人员分析了CVE列表中的177043条记录,并计算了预留的CVE数。

图6是1999年以来公布的CVE和预留CVE数量。平均来看,在CVE-ID分配40天后,CVE就会公布。但仍有超过10000个CVE的预留状态超过2年。这表明漏洞发现和CVE公布之间有很长的时间延迟。虽然有很多厂商会在补丁发布后尽快公布CVE,但仍有厂商没有及时更新CVE 状态。这些数也解释了为什么又这么多的漏洞利用在CVE官方发布之前就公开了。

Number of CVEs (y-axis) vs year (x-axis). Blue bars illustrate published CVEs and a red line illustrates reserved CVEs without a published CVE.

图6. 公布的CVE和预留的CVE数量(按年)

结论

研究人员分析的这45450个公开的漏洞利用只是漏洞利用中的一小部分。许多漏洞利用其实并没有公开,只私人拥有或在黑市交易。研究中并没有将这些数量纳入。研究再次确认了及时修复补丁和更新的重要性。随着补丁的发布,机器被黑的可能性就变大了,因此建议用户在补丁发布后尽快更新和修复。

本文翻译自:https://unit42.paloaltonetworks.com/state-of-exploit-development/如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/lDW6
如有侵权请联系:admin#unsafe.sh