什么是DevOps:
开发运维 是的组合 文化哲学, 实践工具 这提高了组织高速交付应用程序和服务的能力: 以更快的速度发展和改进产品 比使用传统软件开发和基础架构管理流程的组织要高。这种速度使组织可以更好地为客户提供服务,并在市场上更有效地竞争。 (来自AWS)

 

在2010年之前,

  • 结构化开发方法
  • 人才服务器
  • 瀑布模型
 

现在,

  • 从结构化开发方法论转变为面向对象的范式
  • 从客户端服务器转变为面向服务的架构
  • 从瀑布模型转移到敏捷方法

持续集成和持续交付(CI / CD)依赖于日常工作的自动化。

敏捷和DevOps

基本SDLC不变 .
要求 ->Design->开发(实施)->Testing->Operations

Microsoft安全性DLC:

参考: 


该图显示了安全开发生命周期。

 

 

 
如何在DevOps中制定安全策略
工具和框架:

 

  • 文化:合作与贡献。每个人都要对安全负责。目标等于安全分发安全决策
  • 流程:对现有工作流程的重大更改&流程。团队沟通,协作,报告,度量,安全性,开发,运营,端到端,实施更改,持续循环。 
  • 技术:威胁建模,攻击面评估,静态&动态分析,渗透测试,模糊测试

确保DevOps安全的五项原则

  • 自动化安全性:通过综合API自动进行调用安全性测试。
  • 迅速集成到失败:集成安全性CI / CD管道以实现应用程序安全性。
  • 无误报
  • 建立安全冠军:培训开发人员的安全编码,力量倍增器,减少文化冲突,将应用程序安全知识嵌入团队
  • 保持运营可见性:继续提供应用程序安全性,闭环反馈,安全事件

SAST(静态应用程序安全测试)和DAST(动态应用程序安全测试)



持续安全性:

 

连续测试:

  • 测试驱动的安全性(TD​​S)
  • 编写表示所需行为的测试
  • 测试将失败,这是预期的。 
  • 实施控制以通过TDS测试
  • 安全团队帮助开发人员和IT运营团队 实施控制



安全架构和设计评论

  • 产品要求
  • 早期设计
  • 根据威胁模型增加安全性
  • 建筑学评论
  • 建议的安全控制

安全代码审查:

  • 审核代码
  • 验证安全控制
  • 验证架构要求

安全测试

  • 产品可以阻止模拟攻击吗?
    • 手动测试
    • 自动化工具

监控和关键绩效指标

记录管道包括:
搜集->Stream->Analyze->Store->Access

事件管理:
NIST 800-61

 

用于检测& Analysis

  • 混合方式  to detection
  • 以业务为中心的指标
  • 数据驱动的调查

为了消除收容& Recovery

  • 可行警报
  • 交流聊天
  • 维修手册
  • 采用基础架构作为代码(IaC)

对于事后活动:

  • 使验尸可行
  • 如果很少或不采取任何措施,则分析阶段将毫无价值
  • 汲取的教训必须反映在事件管理手册中

基于业务需求和合规性要求的KPI(关键绩效指标)

  • 可用性
  • 变更失败
  • 更改提前期
  • 改变音量
  • 客户问题解决时间
  • 客户发行量
  • 延迟燃烧率
  • 部署频率
  • 记录可用性
  • 平均无故障时间(MTBF)
  • 平均故障时间(MTTF)
  • 平均恢复时间(MTTR)
  • 误报数量
  • 误报数
  • 功能/验收测试次数
  • 通过/未通过安全测试的次数
  • 单元/集成测试数
  • 安全基准偏差
  • 安全控制
  • 测试范围
  • 补丁时间
  • 实现价值的时间
  • 漏洞修补频率
  • 漏洞修补提前期

来自Blogger //blog.fabiandinkins.com/2018/12/from-devops-to-devsecops-topics.html

通过 约翰

发表评论