一种自动化安全渗透测试方法技术

技术编号:16703651 阅读:47 留言:0更新日期:2017-12-02 17:03
本发明专利技术公开了一种自动化安全渗透测试方法,包括:步骤1,自动化响应模型训练,建立对应模型;步骤2,扫描目标信息系统,获取主机信息;步骤3,扫描目标信息系统漏洞,获取漏洞信息;步骤4,根据步骤2和步骤3获取的主机信息和漏洞信息,结合攻击策略库建立攻击模型,根据攻击模型对目标信息系统尝试攻击,获取攻击反馈结果;步骤5,对渗透测试全过程进行综合分析,生成渗透测试报告并梳理测试步骤及中间结果,并对系统安全性进行分析,提供相关解决方案;步骤6,响应模型自适应更新,调整响应策略。

An automated safety penetration test method

The invention discloses a method for testing, penetration of automated security includes: Step 1, automatic response model training, establish the corresponding model; step 2, scan the target information system, access to the host information; step 3, scanning target information acquisition system vulnerabilities, vulnerability information; step 4, according to steps 2 and 3 for the host information and vulnerability information, combined with the model of attack attack strategy, attack model tries to attack the target information system according to the acquired attack feedback results; step 5, of all the penetration testing process to conduct a comprehensive analysis and report generation penetration testing combing test steps and intermediate results, and the system safety analysis, providing solutions. Step 6, response model; adaptive update, adjust the response strategy.

【技术实现步骤摘要】
一种自动化安全渗透测试方法
本专利技术属于网络安全领域,涉及一种自动化安全渗透测试方法。
技术介绍
随着信息技术的快速发展,安全漏洞对信息系统造成极大的安全隐患,成为木马病毒等恶意代码传播的入口和途径。为及早发现信息系统存在的安全问题,确定危害程度,必须周期性地针对信息系统进行渗透测试并根据渗透测试结果进行系统的安全性修复。渗透测试是指安全工程师模拟黑客使用的信息探测技术、漏洞评估技术和攻击手段,对目标的安全性作深入的探测,发现系统最脆弱环节的过程[1]。渗透测试的结果需要记录在案,并以此作为信息系统脆弱性解决的依据。渗透测试具有确定组织信息资源面临的威胁,参考风险量化保障支出,降低组织的IT安全成本,提供更好的安全保障投资收益,发现和解决存在的弱点,了解弱点的基本技术、设计和执行,保证为组织提供一个全面和彻底的安全架构[2]。渗透测试依赖漏洞扫描工具对目标信息系统进行扫描,结合相关的漏洞利用工具对系统漏洞进行攻击和利用,以此来获取系统控制权限。在渗透测试过程中,目前使用较为广泛的开源渗透测试工具为metasploit渗透测试框架,但此框架仅仅提供渗透测试中漏洞攻击和利用阶段的功能。利用metasploit渗透测试框架加载漏洞扫描工具目前依然无法满足全面、完整的自动化渗透测试需求。从实践的角度来看,目前的渗透测试工作存在以下不足:(1)渗透测试过程需要使用多种安全性分析工具,由于各类工具的渗透策略、功能及使用方法不尽相同,这一状况无法满足高效的、自动化的渗透测试需求。(2)缺乏有效的人工和自动化相结合的测试平台,测试所需的各类工具间的数据格式不统一,无法进行自主交互,需要测试人员花费大量的时间和精力进行数据整合以驱动渗透测试过程,无法满足高频的渗透测试需求。文献引用:[1]SCAMBRAYJ,McCLURES,KURTZG.Hackingexposed[M]2nded[S1]:Brooks,2001.[2]ARCEI,CACERESMAutomatingpenetrationtestsanewchallengefortheISindustry[M][S1]:CoreSecurityTecnologies,2001.
技术实现思路
针对现有技术中存在的问题,本专利技术提出了一种自动化安全渗透测试方法,通过建立渗透测试平台,对信息系统安全性进行人工及自动化的测试,深入分析目标系统的安全性。为达到上述目的,本专利技术采用的技术方案是:建立渗透测试平台,通过人工和自动化相结合的手段对信息系统主机状态和拓扑结构进行深度的扫描和分析。在分析漏洞过程中,自动调用漏洞验证库中验证脚本对目标系统进行渗透测试,并在渗透测试结束后对整个渗透测试过程和结果进行分析并生成测试报告。本专利技术包括以下步骤:步骤1,自动化响应模型训练,建立对应模型生成攻击策略库;步骤2,扫描目标信息系统,获取主机信息;步骤3,扫描目标信息系统漏洞,获取漏洞信息;步骤4,根据步骤2和步骤3获取的主机信息和漏洞信息,结合攻击策略库建立攻击模型,根据攻击模型对目标信息系统尝试攻击,获取攻击反馈结果;步骤5,对渗透测试全过程进行综合分析,生成渗透测试报告并梳理测试步骤及中间结果,并对系统安全性进行分析,根据渗透过程和结果,结合渗透测试发现的漏洞及采用的解决方案生成报告性文件,提供相关解决方案;步骤6,响应模型自适应更新,调整响应策略。步骤1包括如下步骤:步骤1-1,通过众测或其他方式,持续收集人工渗透测试的过程信息,保存渗透测试过程中的3个记录元组<o1,o2>、<o3,o4>、<o4,o5>,其中o1表示目标信息,o2表示扫描工具,o3表示漏洞信息,o4表示攻击策略,o5表示攻击工具;所有记录元组组成一个记录数据库,同时,对人工渗透测试已收集到的漏洞信息进行规格化处理,整理以下字段:漏洞描述、漏洞类型、漏洞触发条件、漏洞危害,形成应用级通用漏洞信息数据库;步骤1-2,在大量人工渗透的训练数据的基础上,将这3个记录元组作为训练集,通过Apriori关联规则挖掘算法,可分别获得不同元组对应的支持度和置信度,统一表示为权重,对权重设置阈值,判定大于阈值的元组才是有意义的。本自动化安全渗透测试采用关联规则挖掘算法是Apriori算法,使用频繁项集的先验知识,使用一种称作逐层搜索的迭代方法,即“k-1项集”用于搜索“k项集”:通过扫描所有记录元组数据库,找出所有的频繁1项集,该集合记做L1,利用L1找频繁2项集的集合L2,如此下去,直到不能再找到任何频繁k项集Lk,在所有的频繁集中找出强规则,即产生权重大于阈值的关联规则,找每个频繁项集都需要一次记录元组数据库扫描。算法核心思想是:连接步和剪枝步。连接步是自连接,原则是保证前k-2项相同,并按照字典顺序连接。剪枝步,是使任一频繁项集的所有非空子集也必须是频繁的。反之,如果某个候选的非空子集不是频繁的,那么该候选肯定不是频繁的,从而可以将其从候选集中删除。最终获得如下响应关系:目标-扫描工具:a目标-b1扫描工具-权重0.8,a目标-b2扫描工具-权重0.15;漏洞-策略:c漏洞-d策略-权重0.4;策略-攻击工具:d策略-e攻击工具-权重0.8;其中,响应关系的权重表示采取这种响应的优先级,a,b1,b2,c,d,e依次序分别表示需扫描的目标系统、一种漏洞扫描工具、一种与之前不同的扫描工具、一种攻击策略以及一种漏洞攻击工具,符号-表示响应关系,并表示-连接的前后2项具有关联性,权重是对他们关联性的衡量;步骤1-3,将模型训练得到的响应关系保存在数据库中,分别构成目标信息与扫描工具响应模型、漏洞信息与攻击策略响应模型和攻击策略与工具响应模型,作为自动化渗透测试的依据。步骤2包括如下步骤:步骤2-1,扫描目标信息系统网段内的主机,通过扫描得到信息系统拓扑结构和主机状态,以及初步获取主机的操作系统的版本信息。步骤2-2,根据白帽子提供的信息,选择渗透测试目标主机并配置参数,包括运行环境、操作系统版本等。步骤2-3,深入扫描主机的详细信息,包括操作系统类型和具体版本、中间件类型和具体版本、IP地址和MAC地址、系统运行的网络服务、开放的网络端口等具体信息。步骤2-4,通常经过步骤2-3获得的主机信息由于操作系统及中间件版本差异,得到的具体信息表示格式和内容会有所不同,将获取的目标信息系统或主机信息经过数据分析,对涉及域名和IP地址进行关键字匹配或相似度计算,提取上述字段进行预处理,按字段规格化,整合处理后储存到数据库中。步骤3包括如下步骤:步骤3-1,分析步骤2-4得到的目标信息系统和主机信息,从目标信息与扫描工具响应模型中调用响应关系中权重最大的工具扫描目标信息系统漏洞。步骤3-2,对比公开的CVE(CommonVulnerabilitiesandExposures)漏洞库和人工渗透过程中建立的通用漏洞信息数据库,提取漏洞公开的描述、漏洞类型、载体信息、漏洞触发条件、漏洞危害等信息。步骤3-3,将扫描整合的步骤3-2中所述漏洞信息按照相应的字段进行处理后形成一条漏洞信息,根据持续获得的漏洞信息,形成完整漏洞信息表。步骤4包括如下步骤:步骤4-1,分析主机、WEB应用、数据库、网络设备、相似本文档来自技高网
...
一种自动化安全渗透测试方法

【技术保护点】
一种自动化安全渗透测试方法,其特征在于,包括如下步骤:步骤1,自动化响应模型训练,建立对应模型生成攻击策略库;步骤2,扫描目标信息系统,获取主机信息;步骤3,扫描目标信息系统漏洞,获取漏洞信息;步骤4,根据步骤2和步骤3获取的主机信息和漏洞信息,结合攻击策略库建立攻击模型,根据攻击模型对目标信息系统尝试攻击,获取攻击反馈结果;步骤5,对渗透测试全过程进行综合分析,生成渗透测试报告并梳理测试步骤及中间结果,并对系统安全性进行分析,根据渗透过程和结果,结合渗透测试发现的漏洞及采用的解决方案生成报告性文件,提供相关解决方案;步骤6,响应模型自适应更新,调整响应策略。

【技术特征摘要】
1.一种自动化安全渗透测试方法,其特征在于,包括如下步骤:步骤1,自动化响应模型训练,建立对应模型生成攻击策略库;步骤2,扫描目标信息系统,获取主机信息;步骤3,扫描目标信息系统漏洞,获取漏洞信息;步骤4,根据步骤2和步骤3获取的主机信息和漏洞信息,结合攻击策略库建立攻击模型,根据攻击模型对目标信息系统尝试攻击,获取攻击反馈结果;步骤5,对渗透测试全过程进行综合分析,生成渗透测试报告并梳理测试步骤及中间结果,并对系统安全性进行分析,根据渗透过程和结果,结合渗透测试发现的漏洞及采用的解决方案生成报告性文件,提供相关解决方案;步骤6,响应模型自适应更新,调整响应策略。2.根据权利要求1所述的方法,其特征在于,步骤1包括如下步骤:步骤1-1,收集人工渗透测试的过程信息,保存渗透测试过程中的3个记录元组<o1,o2>、<o3,o4>、<o4,o5>,其中o1表示目标信息,o2表示扫描工具,o3表示漏洞信息,o4表示攻击策略,o5表示攻击工具,所有记录元组组成一个记录数据库,同时,对人工渗透测试已收集到的漏洞信息进行规格化处理,整理以下字段:漏洞描述、漏洞类型、漏洞触发条件、漏洞危害,形成应用级通用漏洞信息数据库;步骤1-2,将3个记录元组作为训练集,通过Apriori关联规则挖掘算法,分别获得不同元组对应的支持度和置信度,统一表示为权重,对权重设置阈值,判定大于阈值的元组是有意义的:通过扫描所有记录元组数据库,找出所有的频繁1项集,该集合记做L1,利用L1找频繁2项集的集合L2,如此下去,直到不能再找到任何频繁k项集Lk,在所有的频繁集中找出强规则,即产生权重大于阈值的关联规则,最终获得如下响应关系:目标-扫描工具:a目标-b1扫描工具-权重0.8,a目标-b2扫描工具-权重0.15;漏洞-策略:c漏洞-d策略-权重0.4;策略-攻击工具:d策略-e攻击工具-权重0.8;其中,响应关系的权重表示采取这种响应的优先级,a,b1,b2,c,d,e依次序分别表示需扫描的目标系统、一种漏洞扫描工具、一种与之前不同的扫描工具、一种攻击策略以及一种漏洞攻击工具,符号-表示响应关系,并表示-连接的前后2项具有关联性,权重是对他们关联性的衡量;步骤1-3,将模型训练得到的响应关系保存在数据库中,分别构成目标信息与扫描工具响应模型、漏洞信息与攻击策略响应模型和攻击策略与工具响应模型。3.根据权利要求2所述的方法,其特征在于,步骤2包括如下步骤:步骤2-1,扫描目标信息系统网段内的主机,通过扫描得到信息系统拓扑结构和主机状态,获取主机的操作系统的版本信息;步骤2-2...

【专利技术属性】
技术研发人员:王小鹏石启良王涵杨盾高丽芬叶伟杨波
申请(专利权)人:江苏省邮电规划设计院有限责任公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1