DevSecOps意味着在DevOps交付管道把安全性包含进去。该模型尽可能早地将安全原则集成到软件开发生命周期的所有适用阶段中。下图展示了安全方面在DevOps后期阶段的集成,但DevSecOps安全性集成到生命周期的所有阶段。

IT安全领导者应该在他们的组织中采用有效的漏洞管理实践来实施适当的DevSecOps。

漏洞管理

漏洞管理是一种帮助组织识别、评估、确定优先级并修复系统中漏洞的做法。最终,漏洞管理的目标是通过使用修补、加固和配置管理等技术来降低漏洞带来的风险。这有助于确保安全性,同时限制恶意用户可能利用的风险。IT安全的主要职责是防范漏洞。我们都知道,安全漏洞可能代价高昂;根据Ponemon研究所和IBM进行的联合研究,每次数据泄露的平均成本为435万美元,而85%的组织在2022年至少有一次数据泄漏。根据《2022年数据泄露报告》,以下是近年来十大数据泄露和十大数据泄漏属性。

漏洞vs.利用vs.威胁

理解漏洞、威胁和利用之间的定义和关系非常重要。
漏洞(vulnerability)是代码或软件中的缺陷,为攻击者提供了未经授权访问系统的途径。在高层次上,漏洞可以分为两种类型:

1.技术漏洞:与代码相关的bug或错误、配置不当的防火墙、未打补丁或过时的操作系统或基础设施等。
2.人的漏洞:人们有意或无意地犯错误,并通过利用人类心理获得数据、系统或包的访问权限。

漏洞利用(exploit)是黑客利用漏洞的方法。利用漏洞攻击是指一些恶意代码,用来攻击系统的漏洞。它可能会窃取信息,减慢/阻止系统运行,或者成为服务器上的寄生虫,在未来制造问题。例如,Log4Shell漏洞是Log4j程序允许用户根据本应打印在日志中的值执行任意代码的一个弱点。随后实施了许多不同的漏洞利用,试图以不同的方式使用此漏洞——其中一些漏洞利用允许您插入自己的代码。相比之下,其他人暴露了软件的私有环境变量。

威胁(threat)是指一个或多个漏洞利用漏洞发起攻击的实际事件。

漏洞管理和DevSecOps组合

为了在DevSecOps项目中有一个良好的开端,在应用程序开发的早期——最好是在开始编写代码之前——就集成安全目标。安全可以集成,并且可以在项目的初始阶段开始有效的威胁建模。当开发人员在代码进入管道之前检查代码以识别任何问题时,静态分析筛选器和策略引擎可以随时运行。这有助于开发人员立即了解安全问题,使他们能够处理安全问题的所有权。一旦在静态应用程序中检查了代码,就可以使用SAST(static
analysis security
testing,静态分析安全测试)工具执行安全测试,以识别漏洞并执行软件组合分析。应该将SAST工具集成到提交后的过程中,以确保主动扫描引入的新代码以查找漏洞。因此,在软件开发生命周期的早期集成SAST工具可以降低应用程序漏洞风险。

在代码构建之后,就可以开始进行安全集成测试。在一个独立的容器沙盒中运行代码可以自动测试网络调用、输入验证和授权等内容。这些测试是DAST工具(dynamic
application security
testing,动态应用程序安全测试)的一部分。这些测试会生成即时反馈,从而能够快速迭代以测试问题。如果发生意外的网络调用或未经净化的输入等情况,测试将失败,管道将以通知相关团队的形式生成可操作的反馈。

访问管理是需要与DevSecOps集成的下一个重要原则。我们需要确保应用程序编写相关的安全性和性能指标。需要执行角色工程,定义与每个角色相关的角色和访问权限——需要定义标准的天生权利角色。

安全扫描和漏洞管理甚至在产品/项目投入生产后仍在继续。我们需要确保通过适当的配置管理将自动补丁应用到产品的最新版本。确保产品运行的是软件及其代码的最新稳定版本。

DevSecOps 中的漏洞管理(上)的更多相关文章

  1. 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架

    一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...

  2. 在Visual Studio 中使用git——分支管理-上(八)

    在Visual Studio 中使用git--什么是Git(一) 在Visual Studio 中使用git--给Visual Studio安装 git插件(二) 在Visual Studio 中使用 ...

  3. 在中间层 .NET 应用程序中通过授权管理器使用基于角色的安全

    基于角色的安全是从 Windows NT 的第一个版本开始在 Windows 平台上发展而来的.使用角色,操作系统可以通过检查称为 BUILTIN\Administrators 的组的安全上下文做出一 ...

  4. .NET Core中的认证管理解析

    .NET Core中的认证管理解析 0x00 问题来源 在新建.NET Core的Web项目时选择“使用个人用户账户”就可以创建一个带有用户和权限管理的项目,已经准备好了用户注册.登录等很多页面,也可 ...

  5. [转].NET Core中的认证管理解析

    本文转自:http://www.cnblogs.com/durow/p/5783089.html 0x00 问题来源 在新建.NET Core的Web项目时选择“使用个人用户账户”就可以创建一个带有用 ...

  6. Laravel中的日志与上传

    PHP中的框架众多,我自己就接触了好几个.大学那会啥也不懂啥也不会,拿了一个ThinkPHP学了.也许有好多人吐槽TP,但是个人感觉不能说哪个框架好,哪个框架不好,再不好的框架你能把源码读上一遍,框架 ...

  7. 深入理解javascript中的焦点管理

    × 目录 [1]焦点元素 [2]获得焦点 [3]失去焦点[4]焦点事件 前面的话 焦点作为javascript中的一个重要功能,基本上和页面交互都离不开焦点.但却少有人对焦点管理系统地做总结归纳.本文 ...

  8. C++中的内存管理

    在C++中也是少不了对内存的管理,在C++中只要有new的地方,在写代码的时候都要想着delete. new分配的时堆内存,在函数结束的时候不会自动释放,如果不delete我分配的堆内存,则会造成内存 ...

  9. iOS 如何在一个已经存在多个project的workspace中引入cocoapods管理第三方类库

    一种新的第三方库管理工具:Carthage 如何使用Carthage管理iOS依赖库 Podfile Syntax Reference v1.1.0.rc.3 https://guides.cocoa ...

  10. Spring中的事物管理,用 @Transactional 注解声明式地管理事务

    事物: 事务管理是企业级应用程序开发中必不可少的技术,  用来确保数据的 完整性和 一致性. 事务就是一系列的动作, 它们被当做一个单独的工作单元. 这些动作要么全部完成, 要么全部不起作用 事务的四 ...

随机推荐

  1. 双层循环练习,pass_break_continue,和for循环---day06

    1.双层循环练习 2.pass_break_continue pass:在代码块中无代码可写时,可用pass占位 break:终止当前循环,只能应用在循环里 continue:跳过当前循环,从下一次开 ...

  2. linux基本命令--day02

    目录树架构示意图 以下是对这些目录的解释: /bin: bin是Binary的缩写, 这个目录存放着最经常使用的命令. /boot: 这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以 ...

  3. 【LeetCode链表#7】设计一个链表并实现常见的操作方法

    设计链表 题目 力扣题目链接 设计链表的实现.您可以选择使用单链表或双链表.单链表中的节点应该具有两个属性:val 和 next.val 是当前节点的值,next 是指向下一个节点的指针/引用.如果要 ...

  4. 【Azure App Service】Local Git App Service的仓库代码遇见卡住不Clone代码的问题

    问题描述 启用App Service Local Git 部署,在Clone 代码库到本地时候,卡在Clone 'xxxxxx' ... ... 一动不动的问题? 问题解答 因为Git Clone没有 ...

  5. 【Azure 云服务】Azure Cloud Service中的错误事件 Error Event(Defrag/Perflib) 解答

    问题描述 在Azure Cloud Service的实例中,收集到各种 Error Event 内容,本文针对所收集的三种Event进行解析. 1: This operation is not sup ...

  6. 【Azure 环境】如果Azure中的某一个资源被删除后是否可以查看到删除的记录呢?如Resource Group

    问题描述 当一个资源从Azure中删除后,是否有地方可以查看到这些操作的记录呢?如操作人,操作时间等. 问题解答 可以的.通过 Azure订阅页面的活动日志,可以查看所有对订阅下资源的操作记录,包含D ...

  7. 用 NetworkX + Gephi + Nebula Graph 分析<权力的游戏>人物关系(下篇)

    在上一篇[1]中,我们通过 NetworkX 和 Gephi 展示了<权力的游戏>中的人物关系.在本篇中,我们将展示如何通过 NetworkX 访问图数据库 Nebula Graph. N ...

  8. [Python] 协程学习过程

    开始 ​ 之前一直在做那个rProxy的项目,后来发现,服务端不用协程或者异步编程这样的手段是不行的,最主要的问题就是对于每个http请求都对应一个线程,这个开销非常大.对于一个网页而言,四五十个ht ...

  9. 开源短信项目 platform-sms 发布了新版本 0.5.0

    Github : https://github.com/makemyownlife/platform-sms 短信服务 platform-sms 0.5.0 发布 ,新的版本做了非常多的优化和改进. ...

  10. 淘宝电商api接口 获取商品详情 搜索商品

    iDataRiver平台 https://www.idatariver.com/zh-cn/ 提供开箱即用的taobao淘宝电商数据采集API,供用户按需调用. 接口使用详情请参考淘宝接口文档 接口列 ...