软件供应链攻击:谁拥有风险和可以做什么?

2021年10月15日 约翰·沃尔什

软件供应链攻击:谁拥有风险和可以做什么?

编者按:本文由约翰·沃尔什合著, 高级产品营销经理, DevOps安全, 还有蒂姆·约翰逊, 导演, 产品营销, CloudBees, 最初的版本是在 CloudBees.com. 这篇文章已经更新,包括了最近的行业指导. 

当你听到一个 软件供应链攻击这将成为一个巨大的问题和公关噩梦. 然而,这些攻击并不是这样开始的. 事实上, 它们几乎总是从一个很小的间隙开始, 比如暴露的Git凭证或者配置错误的CI/CD工具, 在供应链的早期. 而这正是网络对手正在寻找的.

攻击者 感染了18000多名尽责的太阳风客户 通过在合法的软件更新中注入恶意代码. 的 2021年4月Codecov入侵 是否追踪到一个流程错误,使不良参与者能够提取凭证和修改脚本. 在 大规模Kaseya勒索软件攻击为了打入公司的全球客户群,该公司的可信赖软件遭到了攻击. 预计情况只会变得更糟. 据Gartner®, “By 2025, 全球45%的组织将经历软件供应链的攻击, 比2021年增加了3倍.”[1]

这些最近的头条新闻攻击已经导致了重大的财务和声誉损害,并促使许多组织重新检查他们自己的开发环境和交付实践,以确定漏洞. 而且他们正在触及问题的核心:未受保护的秘密(凭证, SQL / LDAP密码, SSH密钥和API令牌) 访问权限 给组织最宝贵的数据和资源. 一个单一的, 不受保护的接入点可以使攻击破坏整个it环境,并向下游转移到客户和合作伙伴.

软件交付自动化的“秘密” 

詹金斯,还有其他工具, 开发人员用来自动化软件交付的平台和容器——必须能够与整个DevOps环境中的许多系统和应用程序交互,以完成它作为“管家”的角色.要做到这一点,需要访问用于源代码控制和部署工件的强大秘密.

如果没有正确配置和保护, 这些秘密很容易成为攻击者的目标,也很有价值. CI/CD管道和其他DevOps工具都是“零级”资产:访问它们,你就可以访问更多的特权凭证. 使用损坏的特权凭证, 攻击者可以获取机密数据, 向代码库中注入恶意软件, 对应用的功能做出重大改变,或者从存储库中窃取代码和有价值的IP.

Gartner®发布了以下指导:“正规博十大app排名建议 特权访问管理(PAM) 用于监视和保护运行构建和自动化作业的特权服务帐户的工具. 在SolarWinds攻击中,攻击者修改了可信域并滥用特权角色. 正规博十大app排名认为这证实了特权账户是一个主要目标. 为了降低这种风险,通常需要由PAM管理特权帐户.”[2]

很明显,保护秘密和凭证中包含的特权访问 DevOps管道 保护软件完整性和确保供应链安全的关键是什么. 但最终谁来承担这一责任?

谁真正拥有软件供应链风险? 

向现代基础设施和DevOps的转变,在如何满足安全需求方面产生了复杂性和差异. 萨班斯-奥克斯利法案(SOX)等法规和行业标准要求组织承担供应链风险, 实现特定的 DevOps的安全控制 提供更大的透明度,将风险降到最低. 与此同时, 客户要求安全保障, 再加上现代数字体验, 正在迅速增加.

安全团队负责保护保护客户数据的数字价值链, 开始与世卫组织, 或者是什么, 在CI/CD管道和生产环境中允许访问什么, 什么时候,多久. 正规博十大app排名所面临的挑战是如何在不减慢开发者速度的情况下实现这一目标.

开发人员面临着他们自己的安全困境:专注于将创新快速推向市场, DevOps文化强调高速, 代码的密集共享, 特设工具和全自动化. 在这个文化, 低安全性的捷径往往很常见, 比如把不受保护的秘密放在JenkinsFiles中以节省时间,或者在没有充分审查的情况下重用互联网上的开源代码. 他们最不希望的就是有人阻止他们完成工作, 他们并不是真的想“拥有”安全, 然而,他们不希望为与中断有关的代价高昂的故障承担责任.

因此,一些类型的 DevOps安全、漏洞和代码扫描被集成到DevOps流程中. 但是在很多组织中, 秘密管理仍然是一个基本的功能,在各个DevOps工具中分散开来, 这使得开发人员(没有时间成为安全专家的人)很难管理和保护它们. 当安全问题被发现时——有时是在代码计划投入生产之前——开发人员会感到最后一刻的代码更改和延迟发布的痛苦.

不断变化的发展格局需要 安全与发展要携手并进 在CI/CD环境中保护机密,以减少风险和减少来自下一个供应链威胁的损害. A 秘密管理的集中式方法 使开发人员更容易维护他们现有的工作流并保持快速移动.  

遵循以下三个步骤来保护管道 

大多数组织已经建立了保护证书的要求 管理的秘密 在传统资讯科技系统中, 如自动旋转, 集中存储和持续监控凭证和秘密. 然而,为了保护您的软件供应链和 保护CI/CD管道, 您还需要在整个Jenkins管道中实现这些秘密管理最佳实践, 在DevOps工具和管理控制台, 在开发人员工作站以及应用程序和脚本中. 最有效的策略如下:

  • 执行“最小特权原则来限制秘密的曝光. 应用基于角色的访问控制(RBAC),以便开发人员, 工具, 应用程序, 容器, 脚本或自动化流程只能访问所需的凭据. 这, 例如, 是否有助于防止不受信任的方配置作业,并有助于确保有价值的凭据, 例如部署令牌, 被适当的访问限制隔离或部署从第二个安全的Jenkins服务器.
  • 删除代码中的所有硬编码秘密、DevOps工具、配置文件和脚本. 永远不要使用默认密码也很重要. 例如, some 工具s establish a developer default user to create projects; other 工具 consoles can be accessed using http or with the default password.
  • 对秘密的访问进行身份验证. 这额外的一层保护要求攻击者采取额外的步骤,而不仅仅是窃取一个被称为“秘密的零.”

A 秘密集中管理平台 将使这些最佳实践更容易实现和管理,为您的组织提供一个完整和连续的“谁有权访问什么?.”

在DevOps管道中协调信任:从这里到哪里?

而关于 “左移位” 建立更安全、更有效的CI/CD实践和流程,已被广泛理解, 把它付诸实践是很困难的. 让安全团队带头是很重要的 将安全性集成到DevOps流程中 在不良做法根深蒂固之前. 而不是将安全视为“发布预防部门”,“开发人员应该把在规划阶段引入安全性作为一种惯例 在CI/CD过程中保持安全紧密集成 从一端到另一端.

以下是实现这种合作方式的四个切实可行的建议:

1. 安全团队必须加快DevOps工具和技术的发展速度,以可靠地与开发团队沟通风险和最佳实践. 并且在他们自己的安全实践中使用敏捷和DevOps方法, 例如自动化安全任务和以更小的方式交付安全功能, 更频繁的增量, 他们可以对DevOps有更深的理解.

2. 实现安全团队拥有的解决方案,该解决方案提供关键功能,例如 管理的秘密, 以机器可消费的方式,可以集成到自动化流程中, 将安全策略作为代码. 这使得开发人员更容易获得他们工作所需的访问权限, 从安全的角度来说做“正确的”事情.

3. 团队应该共同考虑如何最好地将安全资源部署到现有或新的组织模型和结构中. 例如, 建立卓越中心, 社区领导人和安全卫士,以及在开发团队中嵌入安全团队成员. Gartner的“2021年启用云原生DevSecOps调查”的结果显示,创建卓越的云中心(COE)被认为是提高安全性的唯一最有效的措施, 31%的受访者将其列为首选.”[3]

4. 为开发人员提供关于特定攻击者战术的培训,并展示示例代码模块如何暴露秘密,并提供示例作为用户故事. 例如,“作为一个攻击者,我将扫描组织的代码库寻找秘密.“让团队进行渗透测试练习或参与 红色的团队 来演示攻击者如何破坏CI/CD管道.

只要有合适的工具和策略, 安全团队可以更有效地与开发人员合作,以建立更敏捷的机制, 在您的软件供应链中安全且高效的开发环境.

 

[1] Gartner, “软件工程领导者如何减轻软件供应链的安全风险,2021年7月15日. Manjunath Bhat, Dale Gardner, Mark Horvath

[2] Gartner, “软件工程领导者如何减轻软件供应链的安全风险,2021年7月15日. Manjunath Bhat, Dale Gardner, Mark Horvath

[3] Gartner, “Survey Analysis; Enabling Cloud-Native DevSecOps,” 13 September, 2021. Dionisio Zumerle

GARTNER是GARTNER, Inc .的注册商标和服务商标. 和/或其在美国的附属机构.S. 在国际上使用,并得到许可. 保留所有权利.

 

 

 

前一篇文章
INTENT安全研究峰会:探索. 经验. 分享.
INTENT安全研究峰会:探索. 经验. 分享.

而企业则在奋力抵挡无情的攻击, 57%的人被日益恶化的gl所束缚...

下一篇文章
网络安全意识月“打击网络钓鱼”的8种方法
网络安全意识月“打击网络钓鱼”的8种方法

正规博十大app排名都曾成为网络钓鱼攻击的目标——来自看似可信或信誉良好的来源的虚假信息...

Gartner将CyberArk列为PAM 2021年魔术象限的领导者

立即下载