韧性测试相关的知识

1. 基本概念介绍

  • APT:(advanced persisitent threat):高级持续性威胁。
  • APT攻击特点:黑客技术牛皮顶级,可利用的资源丰富,善于潜伏在被攻击的系统内长期存在,具备演进能力,一般是国家和组织背景黑客集团做的攻击。
  • NIST 2009年提出韧性(NIST SP-800 53V5),NIST SP800 160vol2 聚焦mission,以及APT。
  • APT攻击会伪装成自然灾害,人因故障,让人难以定位。
  • 网络攻击生命周期:
    侦察-武器化(制作武器)-传送(植入)-漏洞利用(激活武器)-控制-执行(执行攻击)-维护(销毁记录)。
  • ATT&CK攻击战术矩阵网站:
  1. 公共(不产生破坏):侦察、资源开发。
  2. 安全(不产生破坏):初始访问、执行、持久性、权限提升、防御规避、凭证访问、披露(发现)、横向移动、收集。
  3. 韧性(对被攻击系统产生破坏):命令与控制、数据渗漏、影响。
  • 韧性定义:系统受到攻击时适应并承受攻击,能保持系统基本运行,并具备从攻击中恢复,且保障任务达成的能力。
  • 美国有NIST的网络安全框架CSF,有IPDRR模型,欧盟有ENISA提出的韧性网络策略D2R2+DR。
  • 韧性测试威胁来源是聚焦APT攻击,一般假设攻击者已经入侵到系统,并对关键资产和或者架构进行非法操作,模拟恶意的攻击和意外。

2. 研发活动中嵌入韧性

2.1 charter:项目计划书阶段

  • 介绍:开发Charter的目的是为了让开发出来的产品卖得好(市场有需求,客户愿意买)
  • 需要做好:①mission定义

2.2 概念蓝图阶段

  • 介绍:概念决策评审(CDCP):通过对业务初始计划的评审,决策业务有没有干的价值。概念阶段是IPD结构化流程的第一个阶段, 它是从接收产品开发任务到概念决策评审的过程。概念阶段的主要意义在于明确需求,同时评估产品机会是否与公司产品战略一致, 是否符合公司业务策略的要求,并作出决策的过程。
  • 需要做好以下几点:
    ②实施策略制定,③韧性目标定义④韧性SDR基线,⑤韧性威胁建模和设计。

2.3 项目计划:

  • 介绍:做计划是肯定做了方案设计,也做好了验收标准。
  • 需要做好以下几点:⑥架构设计,⑦系统设计和特性设计、⑧韧性评估,⑤韧性威胁建模和设计。

2.3.1 韧性评估:

  • 需要做好以下几点:韧性风险评估、韧性能力等级评估。

2.3.2 韧性威胁建模和设计

  • 需要做好以下几点:②⑥⑦

2.4 项目开发:

  • 介绍:按照计划开发

2.5 验证

  • 需要做好:⑨韧性测试

2.6 发布

  • 介绍:发给用户

2.7 生命周期

  • 介绍:生命周期管理

3. 价值路径威胁分析

从攻击视角出发,首先知道价值资产,分析从攻击者能获得的攻击面到价值资产的路径,哪些地方存在薄弱的地方。

3.1 攻击路径

攻击目的-价值资产分析-攻击面分析-攻击路径-攻击模式

3.2 建设威胁模式库的维度

3.2.1 威胁模式库

  • 价值资产:数据库、设备。
  • 攻击面:http接口,web接口。
  • 攻击方法:伪造、篡改。
  • 影响:不能服务,数据泄露。
  • 攻击难易程度

3.2.2 措施库

  • 如何降低攻击成功可能性的具体措施。
  • 如何限制损害范围和影响程度的具体措施。
  • 如何维持核心业务和功能的具体措施。
  • 如何恢复攻击带来的负面影响的具体措施。

3.2.3 威胁模型由粗到细

STRIDE(高):指导思想,高速人们思考角度。
ATT&CK(中):可操作性强,可以作为威胁模式库建设参考。

3.2.4 韧性测试模式

  1. 模式基本信息:名称、ID、介绍
  2. 模式来源:现网问题、已有模式库、业界模式库。
  3. 模式方法: 讲模式怎么操作,参考第六节。
  4. 应用场景介绍。
  • 韧性测试模式跟故障模式库由相似之处。
  • 实际在产品中应用可以通过测试对象和攻击模式来源正交得出测试模式。

3.3 措施

主要从检测-承受-恢复3个角度考虑,这3个角度又和3.2.2中的4个措施相关联。

4. 韧性的测试策略

4.1 按照被测对象分类

  • 韧性的功能测试,比如网络重启功能是韧性恢复功能的一个,那就测试该功能是否可行,该功能测试也叫韧性特性的测试。
  • 特性的韧性属性测试,例如网络功能受影响,检测起网络功能检测并恢复的能力,其中会用到韧性的功能特性如重启网络特性。
  • 系统级韧性测试,例如一个网络中一个节点受到攻击,除了检测节点本身的韧性外,还要关注其扩散能力,例如会不会导致其它节点也受影响。主要考虑依赖和关联影响。

4.2 按风险进行分类

  • 主要从攻击路径出发考虑,例如可能受攻击的方向-攻击者攻击采取的路径-核心资产或架构。主要从高风险的角度考虑。
  • 什么是高风险,第一个是被攻击的可能性,第二个攻击后造成的影响,第三个攻击技术的难易程度,第四个就是攻击路径的汇聚点。例如攻击对象是路径上的关键汇聚点,攻击可能性高,攻击成功后损失大,攻击技术简单,那就是高风险。

5 韧性测试设计

1、根据韧性测试策略,开发韧性所需的功能,这个阶段不需要机型模拟攻击,只需要检查功能的指标参数是否满足要求。
2、根据韧性的功能,开发模拟攻击的用例,检查韧性的检测、承受、恢复能力。

6 韧性测试执行

6.1 测试准备

  • 被测环境一般进行模块话设计,分为3部分:攻击模块(实施攻击)、被测系统模块(配置业务+起业务)、结果分析模块(数据收集、数据看板、韧性评估)
    1、被测环境准备:
    2、被测业务配置
    3、被测业务开启
    4、攻击工具部署
    工具类型:ATT&CK\DDOS等
    5、测试用例待命

6.2 测试执行

1、ATT&CK攻击模式
2、传统安全攻击模式
3、威胁模式库

6.3 结果分析

观察系统的防御、检测、响应、恢复能力。
1、观察关键业务是否运行。
2、观察业务承受能力,是否运行在指定SLA水平。
3、一般结果观察需要采用工具,进行数据收集,结果分析。
通过仿真攻击工具或者态势感知进行监控
4、常用的结果指标类型。

  1. 承受时间(初步恶化时间):受到攻击后,业务从正常状态到SLA的时间。
  2. 严重恶化时间:业务从SLA降低到最低SLA时间。
  3. 业务失效时间:业务在最低SLA以下的时间。
  4. 业务恢复时间:攻击取消到恢复到正常业务水平的时间。
  5. 业务损失率:降到SLA以下的业务量与正常业务量的比值。
  6. 业务恢复率:故障取消后业务稳定后的业务量比总的业务量的比值。

7 测试评估

7.1 评估测试能力。

  1. 测试用例集交付的韧性需求比测试设计时的韧性需求。
  2. 测试用例使用的攻击模式数比产品所需的韧性模式总数。

7.2 评估产品韧性质量。

  1. 韧性需求对应的用例通过率。
  2. 通过的需求数比总的需求数。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值