【技术实现步骤摘要】
一种基于攻击图的云外包服务数据泄露安全测试用例自动化生成方法
本专利技术涉及一种安全测试用例生成方法,尤其涉及一种基于攻击图的云外包服务数据泄露安全测试用例自动化生成方法,属于云计算安全领域。
技术介绍
云计算服务提供商提供的弹性计算服务可以为大数据的快速生成和批量分析提供技术保障,与大数据结合已经成为当前发展主流。云用户可以方便的直接选择云外包服务进行进行数据处理,然而,二者的结合也给云数据安全带来新的机遇与挑战。当前主流的云服务提供者(CloudServiceProvider,CSP,也称为云服务提供商)主要通过计算、网络、存储虚拟化技术向云用户(CloudTenant,CT,也称为云租户)提供IaaS、PaaS、SaaS层服务。典型的云平台外包数据服务场景如下:数据计算服务提供者(DataComputingServiceProvider,DCSP)租用CSP提供的IaaS层服务、租用多台虚拟机部署分布式数据计算服务集群PaaS平台、以SaaS模式向数据拥有者(DataOwner,DO)或其它DO许可的用户(这里以DO代称获取计算结果的用户)提供外包数据计算服务。如图1所示,在典型的外包数据服务中,DCSP使用CSP提供的IaaS服务建立数据服务,然后为DO提供数据计算应用,此时外包数据的生命周期包括:1)DCSP上传计算程序,DO上传数据到数据服务平台,2)DO提交数据计算任务;3)数据计算程序在数据服务平台虚拟机内存中执行,4)DO下载数据计算结果。其中,1)CSP提供IaaS层、PaaS层、SaaS层云服务,具有云平台宿主机的root用户权限,负 ...
【技术保护点】
1.一种基于攻击图的云外包服务数据泄露安全测试用例自动化生成方法,其特征在于,该方法包括以下4个步骤:步骤1基于数据流分析的覆盖云外包数据服务生命周期的数据泄露检测指标生成方法;本步骤将结合云外包数据服务场景下的DO数据生命周期,分析生命周期中存在的威胁角色及不同服务模式下威胁角色之间的关系,从攻击者视角对正常数据流进行分析,依次按照数据所处不同位置,针对不同层次的服务商以及被攻击对象自动化生成数据泄露检测指标;步骤2基于数据泄漏攻击对象攻击树模型的攻击图自动化构建本步骤2将基于步骤1中生成的数据泄露指标体系,结合数据生命周期的不同阶段及数据具体流向,采用攻击树模型来描述数据流经关键点被攻击对象的具体攻击方式,并组合被攻击对象、攻击路径及攻击方式构建攻击图;步骤3基于攻击图及XML安全测试描述语言自动化生成XML安全测试用例;通过构建的攻击图,直观描述可能导致数据泄露的攻击方式;而为了能够支持安全测试的可扩展性以及测试过程的自动化,本方法提出了基于XML的安全测试描述语言,用于描述测试过程;采用XML Schema语言描述的XSD文件对XML安全测试文件中包含的场景数据元素与属性字段进 ...
【技术特征摘要】
1.一种基于攻击图的云外包服务数据泄露安全测试用例自动化生成方法,其特征在于,该方法包括以下4个步骤:步骤1基于数据流分析的覆盖云外包数据服务生命周期的数据泄露检测指标生成方法;本步骤将结合云外包数据服务场景下的DO数据生命周期,分析生命周期中存在的威胁角色及不同服务模式下威胁角色之间的关系,从攻击者视角对正常数据流进行分析,依次按照数据所处不同位置,针对不同层次的服务商以及被攻击对象自动化生成数据泄露检测指标;步骤2基于数据泄漏攻击对象攻击树模型的攻击图自动化构建本步骤2将基于步骤1中生成的数据泄露指标体系,结合数据生命周期的不同阶段及数据具体流向,采用攻击树模型来描述数据流经关键点被攻击对象的具体攻击方式,并组合被攻击对象、攻击路径及攻击方式构建攻击图;步骤3基于攻击图及XML安全测试描述语言自动化生成XML安全测试用例;通过构建的攻击图,直观描述可能导致数据泄露的攻击方式;而为了能够支持安全测试的可扩展性以及测试过程的自动化,本方法提出了基于XML的安全测试描述语言,用于描述测试过程;采用XMLSchema语言描述的XSD文件对XML安全测试文件中包含的场景数据元素与属性字段进行定义,包括三部分数据元素:攻击策略元素AttackStrategy、测试策略元素TestStrategy以及测试报告元素TestReport;其中,攻击策略元素是由一条或者多条攻击路径attackPath元素组成的集合,定义如下:攻击策略元素定义了在某种攻击子场景下,攻击者使用场景攻击脚本路径下某一种编程语言实现的攻击脚本对攻击点发起攻击以及攻击过程的描述;测试策略元素是由一种或者多种测试方法testMethod元素组成的集合,定义如下:测试策略元素定义了在某种攻击后的子场景下,测试者使用该场景测试脚本路径下某一种编程语言实现的测试脚本对该场景是否存在某类攻击进行安全测试以及执行的测试次数;测试报告元素不包含其他子元素,描述测试者进行安全测试的测试日期以及测试报告的存储路径,定义如下:TestReport=<tester,dir,testDate>基于攻击图与XML安全测试描述语言,生成XML安全测试用例基本步骤如下:对步骤2中的攻击图执行深度优先遍历算法,从正常状态节点出发,得到其邻接节点后,依次对所有邻接节点元素进行遍历,得到所有从正常状态节点出发到异常状态节点的攻击路径;对每一条攻击路径,通过定义的AttackStrategy元素去描述每一条攻击路径对应的攻击策略,包括attackScriptLanguage,attackScriptLocation,attackScript内容;依据定义的TestStrategy元素描述测试策略,包括testScriptLanguage,testScriptLocation,testScript内容,同时依据定义的TestReport元素描述tester,dir,testDate内容,待攻击图遍历完毕之后,创建XML文件,最终生成XML安全测试用例;步骤4基于模板的安全测试脚本自动化生成为了保证自动生成的安全测试脚本可执行且符合shell语言定义的语法格式,本方法通过自定义测试脚本生成模板生成符合要求的可执行安全测试脚本;根据shell语言的基本语法格式,所定义的脚本生成模板内容包括该脚本使用的shell解释器以及相关注释说明;其次,为了生成可执行安全测试脚本还需要提取XML安全测试用例中的相关数据,通过使用ET元素解析树的方式来解析XML格式的安全测试用例,基本步骤为:首先通过xml.etree.ElementTree模块,将XML格式的安全测试用例转化ET树;对元素树进行遍历,首先获取XML安全测试用例中AttackStrategy元素对象,依次获取attackPath子元素对象,将attackPath下的attackScript、attackScriptLanguage、attackScriptLocation元素值组合并进行语法转换;同样对TestStrategy子元素testStrategy下的testScript、testScriptLanguage、testScriptLocation元素值以及TestReport中的tester,dir,testDate值组合并进行语法转换后,写入到初始安全测试脚本生成模板中;最后输出shell支持的可执行安全测试脚本,完成安全测试脚本的自动化生成过程,用于后续的安全测试。2.根据权利要求1所述的一种基于攻击图的云外包服务数据泄露安全测试用例自动化生成方法,其特征在于,步骤1.1云外包数据服务场景下数据生命周期、数据流及威胁角色权限分析;典型的云外包数据生命周期,即DCSP使用CSP提供的IaaS服务建立数据服务,然后为DO提供数据计算应用;对于数据执行过程来说,数据处理在数据服务平台作业执行虚拟机内存中进行,计算完成后上传数据计算结果到分布式文件系统,因此数据泄露威胁来自恶意CSP管理员以及DCSP管理员;步骤1.2基于数据流的数据泄露指标体系自动化生成由步骤1.1中的DO生命周期中的作业数据流可知,按照数据所处不同位置进行分类,分为内存、文件系统以及网络三类;根据数据流经节点类型进行分类,分为云平台宿主机、外包数据服务虚拟机两类;通过节点类型与数据所处不同位置进行组合,对攻击位置进一步划分:将内存进一步划分为云平台宿主机内存与外包数据服务虚拟机内存;文件系统进一步划分为云平台宿主机文件系统,外包数据服务平台虚拟机本地文件系统,外包数据服务平台分布式文件系统;网络进一步划分为云平台宿主机网络与外包数据服务虚拟机网络;按照云平台不同服务模式进行分类,分为IaaS、PaaS、SaaS三种;由步骤1.1可知,按照攻击者角色进行分类,分为CSP以及DCSP两类;不同服务模式下的攻击者角色管控能力不同:对于云平台宿主机内存,云平台宿主机网络、云平台宿主机文件系统,无论是IaaS、PaaS还是SaaS服...
【专利技术属性】
技术研发人员:樊旭东,詹静,赵勇,高雅琪,韩瑾,
申请(专利权)人:北京工业大学,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。