保护 CI/CD 免受勒索软件即服务的攻击

news/2024/10/18 14:12:17/文章来源:https://www.cnblogs.com/zktq/p/18474145

对于企业来说,代码库是其宝贵的资产。然而目前勒索软件即服务 (RaaS)攻击以 CI/CD 管道为目标,劫持或破坏代码已成为一种趋势。首先来看下典型的勒索软件生命周期。

感染:攻击者通常通过恶意依赖项、脚本漏洞或受损的构建服务器渗透到系统中。

横向移动:他们暗中探索网络,寻找关键资源和代码存储库。

加密:嵌入后,勒索软件有效载荷就会开始行动,加密文件和代码库。

勒索:勒索赎金,或者随着时间推移威胁要永久加密数据或进行曝光。

勒索软件即服务如何攻击CI/CD管道

这种脆弱性源于多种因素:

对第三方依赖项的依赖增加:现代软件开发严重依赖开源和商业第三方库的庞大生态系统,虽然方便,但这引入了关键的攻击面。恶意行为者可以将勒索软件有效载荷嵌入到看似合法的依赖项中,将其转化为木马病毒,渗透到整个开发人员社区中。

木马化程序包:攻击者将勒索软件有效载荷注入流行或广泛使用的开源或商业产品中。2023年的 SolarWinds 供应链攻击就是一个例子,攻击者入侵了软件构建服务器,将恶意代码注入更新。

不透明的依赖关系:现代应用程序中 80% 的代码是开源代码,据报道,95%的漏洞是在传递依赖关系中发现的。大多数安全威胁(包括已知漏洞)都潜伏在传递关系中。挑战在于,开发人员很少能够看到他们的依赖关系树,或者它有多深。Log4Shell 就是一个例子,这个问题影响了93%的企业云环境。

自动化漏洞:CI/CD 管道在自动化方面蓬勃发展,但自动化脚本和配置可能包含语法错误、不安全的配置参数和不充分的访问控制,可能为攻击者破坏构建过程和操纵代码提供立足点。

注入攻击:攻击者利用 CI/CD 脚本中的语法错误或不安全的配置参数来注入恶意代码或操纵构建。

权限提升:通过利用构建工具或底层基础设施中的漏洞,攻击者可以在管道内提升其权限,从而获得对敏感资源的访问权限。

有限的可见性和控制:CI/CD 部署的快速性质通常超过传统的安全监控和日志分析工具,这些工具难以跟上不断发展的构建流程,为攻击者创造了可利用的盲点。68% 的组织在构建和部署阶段遇到应用程序漏洞,为保护这些动态环境带来了挑战。

零日漏洞利用:攻击者利用构建服务器或 CI/CD 平台中的零日漏洞来获得未经授权的访问并部署勒索软件有效负载。

横向移动:一旦建立了立足点,攻击者就会在 CI/CD 基础设施内横向移动,从而破坏额外的资源和代码。

这些策略凸显了 RaaS 参与者不断发展的复杂性。其影响可能是毁灭性的,从数据加密和索要赎金到声誉损害和运营瘫痪。

构建防勒索CI/CD管道

通过采用主动的 DevSecOps 思维方式,可以有效防范 RaaS 攻击并保护代码。

安全左移:在整个软件开发生命周期(SDLC)中集成安全性。利用静态应用程序安全检测工具(SAST)、动态应用程序安全检测工具(DAST)、软件组合分析(SCA)和软件物料清单(SBOM)创建,检查漏洞及依赖关系,保持对管道中每个软件组件透明。

持续警惕:管道不是静态实体,需要不断利用工具来实施管道活动的持续监控和记录。查找异常、可疑行为和未经授权的访问尝试。

访问控制:尽量减少对CI/CD环境的不必要访问。实施严格的基于角色的访问控制和最小权限利用访问控制工具严格管理用户角色和权限,确保只有授权用户才能访问敏感资源。

 

参读链接:

https://devops.com/breaking-free-from-ransomware-securing-your-ci-cd-against-raas

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/816854.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

记上报信息格式异常问题的解决

本文记述遇到字符串中包含无效字符时的格式化异常问题的全过程。本文记述解决上报信息格式异常问题的全过程。 问题描述 生产环境监控上报无法解析终端信息,通过日志发现是PCN字段前面缺失#号,导致解析程序解析失败。正常情况下,应该展示如下内容:HD1234#PCN1234发生错误情…

云存储图片生成缩略图开发

作者:狼哥 团队:坚果派 团队介绍:坚果派由坚果等人创建,团队拥有12个华为HDE带领热爱HarmonyOS/OpenHarmony的开发者,以及若干其他领域的三十余位万粉博主运营。专注于分享HarmonyOS/OpenHarmony、ArkUI-X、元服务、仓颉。团队成员聚集在北京,上海,南京,深圳,广州,宁…

PHP简介与开发环境搭建

PHP简介与开发环境搭建 一、PHP简介 PHP,全称PHP: Hypertext Preprocessor(超文本预处理器),是一种广泛使用的开源服务器端脚本语言,尤其适合Web开发。PHP由Rasmus Lerdorf在1994年创建,最初是为了维护个人网页而制作的简单程序,后来逐渐发展成为功能强大的脚本语言。PH…

2153: 【例8.3】计算球的体积 球的体积公式

include <bits/stdc++.h> using namespace std; double r, pi=3.14; int main( ) { cin >> r; cout << fixed << setprecision(2)<< 4.0/3.0pirrr; return 0; } 球体是一个半圆绕直径所在直线旋转一周所成的空间几何体,简称球。球体是有且只有一…

深入理解浮点数的运算

浮点数的运算步骤 浮点数的加减运算一般由以下五个步骤完成:对阶、尾数运算、规格化、舍入处理、溢出判断 所谓对阶是指将两个进行运算的浮点数的阶码对齐的操作。对阶的目的是为使两个浮点数的尾数能够进行加减运算。因为,当进行 $ M_{x} \times 2^{E_{x}}$与 $ M_{y} \time…

轻松上手-识图文字朗读

作者:狼哥 团队:坚果派 团队介绍:坚果派由坚果等人创建,团队拥有12个华为HDE带领热爱HarmonyOS/OpenHarmony的开发者,以及若干其他领域的三十余位万粉博主运营。专注于分享HarmonyOS/OpenHarmony、ArkUI-X、元服务、仓颉。团队成员聚集在北京,上海,南京,深圳,广州,宁…

mysql语法-DMLDQL

1.DML操作数据——添加、修改、删除 (1)添加数据:实例(2)修改数据实例注意:修改时如果update语句不加where条件,则会把表中所有数据都修改了! (3)删除数据:实例2.DQL查询 查询语法(1)基础查询:实例(2)条件查询:

免费使用AI写作助手,为你轻松打造爆款文章

在当今内容为王的时代,一篇高质量的文章能够迅速抓住读者的眼球,提升个人或品牌的曝光度。但对于许多创作者而言,灵感枯竭和写作效率低下是常见的挑战。此时,免费AI写作助手的出现,为解决这些问题提供了新的可能性。以下是这款AI写作助手的独特魅力和使用指南。一、AI写作…

从组合优化问题建模到贪心法求解以简单调度为例

此为课题组所指导本科生和低年级硕士生学习组合优化问题汇报 所用教材:北京大学屈婉玲教授《算法设计与分析》 课程资料:https://www.icourse163.org/course/PKU-1002525003 承诺不用于任何商业用途,仅用于学术交流和分享更多内容请关注课题组官方中文主页:https://JaywayX…

python: invalid value encountered in divide以及invalid value encountered in double_scalars报错

运行命令python eqtl_prepare_expression.py data.tpm.gct data.reads_count.gct --tpm_threshold 0.1 --count_threshold 2 --sample_frac_threshold 0.2 --normalization_method tmm --output data.txt时出现了报错“invalid value encountered in divide”以及“invalid val…

java报错大合集

​D:\代码\Mybatis-84\src\test\java\com\lu\TestNews.java:100:39 java: 找不到符号符号: 方法 of(int,int)位置: 接口 java.util.List解决idea中的jdk变成1..8了而List.of()是9出的所有报错,改回17 在“class java.lang.String”中没有名为“name”的属性的 getter纯属粗心…

DataDream:调一调更好,基于LoRA微调SD的训练集合成新方案 | ECCV24

尽管文本到图像的扩散模型已被证明在图像合成方面达到了最先进的结果,但它们尚未证明在下游应用中的有效性。先前的研究提出了在有限的真实数据访问下为图像分类器训练生成数据的方法。然而,这些方法在生成内部分布图像或描绘细粒度特征方面存在困难,从而阻碍了在合成数据集…