如何评估和划分安全风险

作者 | Owen Garrett
译者 | 明知山
策划 | 丁晓昀
https://www.infoq.com/articles/assessing-security-risks

开源软件支撑着绝大多数面向互联网的应用程序。这类项目的可用性、可获取性和质量提升了企业的创新能力,并帮助它们取得成功。它们是很好的公共产品,应该受到赞美和保护。

开源的普遍存在意味着任何已经被发现的漏洞都会产生深远的影响。攻击者看到了巨大的机会,大量的企业和用户必须快速做出响应,在他们开发的应用程序以及使用的第三方应用程序和组件中识别易受攻击的软件实例。

事实上,软件漏洞是很常见的。那么,安全专业人员如何评估漏洞可能带来的风险,并将组织的精力集中在修复那些最重要的漏洞上呢?

1 建立全面的可见性——你无法保护你看不到的东西

安全团队负责整个应用程序的完整性,包括所有不是由企业开发人员开发的开源组件和第三方依赖项。人们已经做了很多工作来改进软件开发过程的安全性,并通过“左移”计划和 SBOM(Software Bill of Materials,软件物料清单) 来跟踪依赖项,让部署到生产环境中的代码具有高度的安全性。但是,每当有新漏洞被发布时,该如何快速识别已经部署到生产环境中的代码在哪些地方将会出现这些漏洞?安全程序的第一步通常是全面获取整个 CI/CD 管道范围内的应用程序代码安全性的可见性,一直从构建阶段到部署阶段,并跨越所有的应用程序和基础设施,包括运行的容器、Kubernetes、云供应商、虚拟机和 / 或裸机。消除你的盲点,以便尽早检测到并降低攻击的破坏性。

2 关注最重要的东西:可利用性与脆弱性

在获得全面的可见性之后,组织经常会看到大型的基础设施中存在数以万计的漏洞。然而,理论上的漏洞列表几乎没有什么实际用途。在企业可以花时间修复的所有漏洞中,最重要的是要找出哪些漏洞对应用程序的安全性影响最大,因此必须首先修复它们。

为了找出这些漏洞,关键在于要了解脆弱性(Vulnerability,在已部署的软件中可被攻击者利用从而产生特定结果的弱点)与可利用性(Exploitability,可被攻击者用于获取利益的攻击路径)之间的区别。

需要高级别和本地访问权限的漏洞通常较少受到关注,因为对于远程攻击者来说要获得攻击路径比较困难 (除非攻击者已经获得访问本地主机的高级权限,他们才有机会获得进一步的控制权)。值得关注的是可能由以下因素触发的漏洞,例如,不会被防火墙设备过滤的远程网络流量,以及直接从不可信的网络源接收流量的主机。

3 评估和划分潜在的漏洞利用

在根据漏洞的可利用性对其进行划分并以此来确定修复优先级时,你需要考虑以下的部分或全部标准:

漏洞的严重程度:CVSS(Common Vulnerability Scoring System,通用漏洞评分系统) 分数为漏洞的严重程度提供了一个基线,可用于对漏洞进行比较。然而,CVSS 分数并没有考虑实际的应用程序和基础设施的上下文,所以离获得准确的信息存在一定的差距。

攻击向量——网络与本地系统访问:网络访问漏洞通常是攻击的第一步,而本地系统访问漏洞要在攻击者进入应用程序后才能发挥作用。这意味着你需要立即封掉任何会导致服务受攻击的网络攻击路径,同时找到服务节点上潜在的攻击行为,并采取纠正措施。

贴近攻击表面:是否存在一种攻击路径,攻击者可以通过该路径到达并利用该漏洞?在考虑攻击路径时,需要考虑攻击者可能会绕过防火墙、负载平衡器、代理和其他跳转点,并解决其中的任何一个攻击点,同时让开发人员更新、测试和重新部署易受攻击的应用程序。

网络连接的存在:尽管所有可以从外部触及的漏洞都值得关注,但带有通用网络连接的应用程序的漏洞是最值得关注的。攻击者通常会使用侦察 (Recon) 技术发现这些漏洞。

这里的关键是将运行时上下文添加到漏洞数据中,这样就能够识别最容易被利用的漏洞,并确定首先要修补哪些漏洞,因为它们对应用程序的安全性构成了最大的危险。

考虑使用开源的 ThreatMapper 等工具来帮助你识别最容易被利用的漏洞。随着条件发生变化,你需要持续不断地运行这样的工具,将安全工作放在在最需要的地方。

4 限制侦察活动

攻击者通常会根据事先准备好的剧本,使用在 MITRE ATT&CK 中记录的战术和技术展开攻击活动。这些战术遵循的是网络杀伤链等模型,从侦察活动开始,然后再进行初步的攻击。最初的攻击通常旨在获得有限的本地控制权,然后攻击者就有了大量的选择来探索、升级特权、安装持久控制系统和侦察邻近的系统,以便横向传播并找到更大的战利品。

要限制侦察活动的有效性,首先要确定攻击者可能采取的攻击路径。为了实现双保险,确保每一条攻击路径都有过滤技术保护:

通过 WAF 捕获并丢弃已知的侦察流量;

使用基于协议和源的过滤技术来限制能够访问这些路径的客户端;

使用额外的应用程序级过滤:

确保事务经过身份验证;

对于 API 流量,确保事务来自可信的客户端。

ThreatMapper 可以可视化最容易被利用的漏洞的攻击路径,这样你就可以确定如何将它们关闭。

5 收集“攻击指标”和“损害指标”

尽管已经尽了最大的努力来保护攻击表面并限制了可见性,但仍然可能由于各种原因发生攻击——零日攻击、蓄意破坏供应链、对影子 IT 和其他非托管资产缺乏可见性,等等。通过 NVD 发布的 CVE 大约是每天 50 个,因此在产品中发现新漏洞的可能性非常大。

因此,另一条关键的防线是监控内部网络、主机和工作负载的攻击指标 (IoA) 和损害指标 (IoC)。

IoA 可以包括来自不寻常来源的探测、侦察流量,或者可能表明存在 C2C(容器到容器) 网络、远程遥测或泄漏企图的网络流量。IoC 表明主机出现了问题,攻击者已经进入,包括异常的进程行为、文件系统访问或文件系统修改。

建议构建“红色团队”功能,让它定期扫描应用程序,找出攻击信号及其对组织的影响。寻找一些可以帮助你自动化和管理大量 IoA 和 IoC 事件的工具,包括最小化误报、存储事件以供后续的分析,最重要的是将事件关联起来,以便了解攻击特征以及这些攻击对应用程序的渗透情况。有了这些知识,你就可以部署有针对性的对策,阻止来自内部或外部的侦察或攻击流量,并隔离受损的工作负载。

6 结论

Log4j 告诉我们,漏洞是不可避免的,但这不应该成为阻止组织使用开源代码作为创新和实现其他有价值的目标的障碍。在指导组织开展安全工作时,安全主管们可以获取跨所有基础设施的应用程序流量的全面可见性,结合漏洞可利用性评估和优先级排序的策略,在寻找攻击痕迹时持续保持警惕,降低与 Log4j 和下一个重大漏洞相关的风险。

作者简介

Owen Garrett 是 Deepfence 公司的产品和社区主管,为 Deepfence 的安全技术制定开源战略。他以他在 Riverbed、NGINX 和 F5 等公司 20 年的软件工程和产品领导经验为基础,在 Deepfence 指导公司的路线图,为云原生应用创建一个开源的“安全和可观察性”平台。在加入 Deepfence 之前,Owen 领导 NGINX 的产品开发,让 NGINX 发展成为部署最为广泛的开源项目之一,保护了超过 5 亿个网站,成为无数生态系统项目的核心。Owen 在网络技术方面拥有多项专利,经常在技术会议上发表演讲,是行业活动的思想领袖。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容