SDL—威胁建模PASTA

Posted 王嘟嘟_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SDL—威胁建模PASTA相关的知识,希望对你有一定的参考价值。

0x00 前言

已经在之前的篇章里学习了STRIDE,可以参考:

0x01 PASTA

VerSprite Security公司在2012年提出的PASTA(Process for Attack Simulation and Threat Analysis)通过风险为中心的威胁建模方法,针对应用程序或系统环境识别可行的威胁模式。

以风险为中心,量化可能影响业务或系统的风险。

1.术语

术语含义
资产对企业具有内在价值的资源
威胁对资产产生不理影响的因素
缺陷/漏洞攻击者攻击的手段
用例系统的预期设计行为
滥用案例操作用例以使用户别有用心
行为者任何能够执行或使用用例或滥用案例的用户
攻击通过利用漏洞来进行的任何行动
攻击向量攻击通过的接口
对策缺陷的缓解可减少攻击成功的可能性
攻击树表示威胁、目标资产、相关漏洞、相关攻击模式和对策之间的关系
影响攻击造成的直接或间接经济损失

2.PASTA 的7个流程

  • 定义业务目标
  • 定义技术范围
  • 分解应用程序
  • 执行威胁分析
  • 检测漏洞
  • 枚举攻击
  • 执行风险和影响分析

3.优势

  • 可扩展性,PASTA中的部分完全可以在其他模型中进行复用,比如定义业务目标,技术范围,分解应用程序
  • 可用性,多角度分析问题,察觉可能攻击和攻击向量
  • 无约束性,通过CVE和CWE库来识别漏洞和缺陷

4.思考

关于PASTA的内容网上相对都比较少,并且落地实施的也没有公布,但是通过PASTA的流程可以知道,完全可以通过PASTA的某些流程来强化STRIDE的建模过程和完整度。并且安全方面的这个威胁建模方法只是很小的一部分,重要的是已经建模完成的Demo基础。业务拿着就可以复用,这是最好的形态。

SDL汇总

0x00 前言

最近看了很多的资料,针对SDL的内容差不多是理解了的,在这篇进行一下汇总。

0x01 链接

0x02 SDL思考

整个SDL实际上是为了适配瀑布式的开发流程,虽然说是从开发的时候提前考虑安全问题以及合规,隐私等问题,但是体量非常大,需要考虑的内容也非常多,并且十分依赖人的参与,没有实现自动化,对于一些小型企业或者一些迭代快速的软件来说就有点难以落地,有两种方案一种是针对SDL进行精简,还有一种方式就是采用其他的安全开发模式,比如说DevSecOps。

0x03 现象

SDL的完整流程主要是针对一个软件从头开始的流程,但是面临的很多问题就是,产品已经发版了,所以在落实SDL的时候,可以将目标从整个软件精简到小的功能块,可以参考PASTA的业务拆分,对单一的业务进行SDL流程

  • 威胁建模分析
  • 合法合规确认
  • 安全编码规范
  • 单个功能黑白盒测试
  • 最终结果

0x04 提前准备

实际上我们可以不等需要SDL建设的时候才去考虑相对应的流程,可以在进行SDL之前就完成相对应的内容比如:

  • 培训文档&PPT
  • 编码规范文档
  • 常规漏洞威胁表
  • 常见功能威胁建模
  • 常见威胁内容
  • 自定义工具
  • 自定义规则
  • 合规&合法文档
  • 初版应急响应文档

当然以上内容可以等DevSecOps结束后一起整理。

以上是关于SDL—威胁建模PASTA的主要内容,如果未能解决你的问题,请参考以下文章

安全开发生命周期详解(SDL:Security Development Lifecycle)

网络威胁防护,Azure 靠的是它?

安全开发你必须使用的28个DevSecOps工具

DDoS攻击如此猖獗,我们该如何解决?

网络安全 — 零信任架构

天融信网络架构安全实践