对攻击者来说,寻找和利用网络中未打补丁的问题或常见的漏洞和暴露(CVE)是成功率最高的方法,这也是最常见的获得网络初始访问权的途径。
事实上,漏洞利用的成功率已经超过了钓鱼邮件,在很大程度上取代了凭证窃取,成为攻击者渗透网络的最可靠方法。
现状:新漏洞虽多,但旧漏洞威胁更大
X-Force数据显示,Citrix服务器的目录遍历漏洞(CVE-2019-19871)是2020年被利用最多的漏洞。
虽然这个相对较新的漏洞占据了榜单的Top地位,但在2020年十大被利用最多的漏洞榜单中,以往的安全漏洞占据了主导地位,前10名中只有2个是在2020年发现的。
由于前几年的安全漏洞仍在对尚未打补丁的设备和组织造成威胁,漏洞的累积效应使得它们遭受攻击的机率逐年增加。
自1988年以来,每年发现的新漏洞数量总体呈上升趋势。2020年发现的新漏洞数量为17992个,到2020年底,发现的漏洞总数达到180171个,达到最高点。
1988-2020年每年新发现和累积的漏洞(来源:X-Force Red)
对于安全从业人员来说,快速识别和补救漏洞的重要性迫在眉睫。
未修补的漏洞
2CVE-2006-1547和CVE-2012-0391是2020年最吸引视线的两个漏洞,它们都是Apache Struts漏洞。在X-Force的2020年最容易被利用的漏洞列表中,这两个漏洞位列第三和第四。
虽然这两个漏洞已经被发现15年和9年之久,而且早已有了补救措施,但很多时候它们仍然没有被修补,攻击者仍然试图大量利用它们。每年不断新增的漏洞数量再加上累积的旧漏洞,对攻击者来说是一座富矿。
2020年十大漏洞榜单
X-Force根据攻击者的利用频率和意图,对2020年的十大漏洞进行了排名。该排名基于2020年IBM X-Force事件响应(IR)和IBM托管安全服务(MSS)数据。根据研究结果,攻击者聚焦于企业内网常见的企业应用程序和开源框架。
- CVE-2019-19871:Citrix应用交付控制器(ADC)
- CVE-2018-2006:NoneCMS ThinkPHP远程代码执行
- CVE-2006-1547:Apache Struts中的ActionForm漏洞
- CVE-2012-0391:Apache Struts的ExceptionDelegator组件
- CVE-2014-6271:GNU Bash 命令注入
- CVE-2019-0708:Bluekeep微软远程桌面服务远程代码执行
- CVE-2020-8515:Draytek Vigor命令注入
- CVE-2018-13382和CVE-2018-13379:Fortinet FortiOS不当授权和目录遍历漏洞
- CVE-2018-11776: Apache Struts远程代码执行
- CVE-2020-5722:HTTP:Grandstream UCM6200 SQL注入
下面详细探讨三大漏洞
1. CVE-2019-19871:Citrix应用交付控制器
该漏洞披露于2019年12月,适用于Citrix ADC、Citrix Gateway和NetScaler Gateway,允许攻击者在Citrix服务器上执行任意代码或下载额外的有效载荷,例如允许执行命令和强制密码的木马后门。
这个漏洞在IBM的事件响应活动中多次出现,最活跃的是在2020年上半年。仅在2020年第一季度的所有初始妥协中,它就占了25%。在X-Force2020年1月补救的所有攻击中高达59%。
事实上,在X-Force事件响应活动中,攻击者利用该漏洞的次数是其他漏洞的15倍。IBM的托管安全服务经常观察到警报,提示攻击者正试图利用该漏洞。
2. CVE-2018-20062:NoneCMS ThinkPHP远程代码执行
2020年利用率第二的漏洞是CVE-2018-200662,它允许攻击者执行任意PHP代码。X-Force威胁情报分析师观察到,它主要针对物联网(IoT)设备。这与IBM预测的2020年针对物联网的攻击将大幅上升相吻合。
攻击者大多利用CVE-2018-2006部署各种恶意软件,例如SpeakUp后门、Mirai僵尸网络和各种加密货币矿机。
ThinkPHP是一个开源的PHP框架,虽然该漏洞在2018年12月8日的ThinkPHP 5.0.23和5.1.31版本中进行了修补,但2018年12月11日发布的版本中,该漏洞可以被PoC利用,引来攻击者的持续攻击。该漏洞迟迟未能修补可能和识别和修补物联网设备较难有关。
3. CVE-2006-1547:ApacheStruts中的ActionForm漏洞
Struts是一个开源框架,通常用于创建Java网络应用。该漏洞发现于15年前,它可使Struts网络应用程序崩溃,从而获取机密信息。攻击者意识到该框架的广泛使用所带来的机会,并利用了几个Apache Struts的漏洞。
旧漏洞被越来越频繁地利用,警示我们要定期扫描网络应用程序是否存在未修补的漏洞。
未知漏洞怎么办?
尚未公开的漏洞(包括零日漏洞)持续对企业网络构成威胁。企业可能通过渗透测试发现未知地漏洞。但X-Force观察到,与零日漏洞相比,已知的网络安全漏洞,即使具备缓解方法,仍对企业构成更重大的威胁。
虽然企业不能控制未知漏洞的利用,但他们可以针对已知漏洞采取结构化的行动,将精力集中在这一领域的相对回报率更高。漏洞管理服务可以识别、优先处理和修复现有的漏洞,帮助企业提高其资产的安全性。
如何防止网络中的漏洞?
漏洞管理很复杂。作决策时,它需要考虑资产、数据分类、业务目标、风险和性能基准等,没有一个放之四海皆准的解决方案。
有些网络中的机器和基础设施具有易被攻击的特性,需要进行严格的测试,以确保在应用更新或补丁时不发生故障。
其他网络的设备,即使有特定的补丁也最好不要接收。漏洞管理总是在平衡风险,从来都不是简单的单线程思维。
一些补丁管理措施:
- 了解你的网络。定期清点网络中的设备,包括设备、操作系统、应用程序、版本、IP地址、云资产以及这些系统的所有者。建议每季度进行一次。
- 识别风险。使用漏洞管理工具和Crown Jewel Analysis来识别重要资产,并分析哪些漏洞最有可能影响这些资产。
- 在应用补丁之前进行测试。开发一个测试环境,模拟识别补丁部署到企业环境后可能出现的问题。建议在适当的测试设备和资产样本上应用补丁。
- 部署补丁。在企业环境中部署新修的补丁。一些漏洞管理工具可以实现自动化部署补丁。
参考链接(点击链接获取报告):
https://securityintelligence.com/posts/top-10-cybersecurity-vulnerabilities-2020/