一种针对云计算IaaS层高危安全漏洞检测方法和系统的制作方法
【技术领域】
[0001]本发明涉及网络信息安全领域,尤其涉及一种针对云计算IaaS层高危安全漏洞检测方法和系统。
【背景技术】
[0002]Internet上的服务类型包括平台即服务(Platform as a Service,PaaS)、软件即服务(Software as a Service,SaaS)和基础设施即服务本(IaaS,Infrastructure as aService)。其中PaaS提供了用户可以访问的完整或部分的应用程序开发;SaaS则提供了完整的可直接使用的应用程序,比如通过Internet管理企业资源;IaaS提供了如存储和数据库类的相关服务。
[0003]IaaS通常分为三种应用模式:公有云、私有云和混合云。如AmazonEC2在基础设施云中使用公共服务器池(公有云),更加私有化的服务会使用企业内部数据中心的一组公用或私有服务器池(私有云)。如果在企业数据中心环境中开发软件,那么这两种类型公有云、私有云、混合云都能使用,而且使用EC2临时扩展资源的成本也很低,如一比方说开发和测试,混合云。结合使用两者可以更快地开发应用程序和服务,缩短开发和测试周期。
[0004]IaaS在应用过程中存在较多的安全漏洞,例如服务商提供的是一个共享的基础设施,也就是说一些组件或功能,例如CPU缓存、GPU等对于该系统的使用者而言并不是完全隔离的,这样就会产生一个问题,即当一个攻击者得逞时,全部服务器都向攻击者敞开了大门,即使使用了hypervisor,有些客户机操作系统也能够获得基础平台不受控制的访问权。
[0005]IaaS层的相关漏洞通常是被动式的发现,现有的技术手段不能主动的检测IaaS层存在的相关漏洞,云计算环境中存在一定的安全风险。
[0006]为保证IaaS层在云计算中安全运行,需要一种能检测IaaS层安全漏洞的方法和系统。
【发明内容】
[0007]本发明的目的是针对现有技术的不足,提出一种针对云计算IaaS层高危安全漏洞检测方法和系统,该系统和方法能及时发现云计算IaaS层可能存在的漏洞并予以修补,能够增加IaaS服务的安全性,有效防止可能的黑客攻击,避免不必要的损失。
[0008]本发明所述的一种针对云计算IaaS层高危安全漏洞检测系统包括控制模块、业务模块和数据模块。
[0009]所述控制模块为用户提供WEB控制界面,是用户操作的入口。
[0010]所述业务模块包括系统管理模块和扫描模块两个部分,业务模块主要完成对IaaS层漏洞扫描和扫描管理;其中,
所述系统管理模块是连接WEB控制界面与扫描执行部件的桥梁,主要针对WEB控制界面下发的任务进行管理调度,将任务下发给扫描模块进行扫描,同时将收到的扫描结果返回到WEB界面;系统管理模块对扫描结果生成的报表、日志以及数据库信息进行管理; 所述扫描模块是最终执行扫描的核心部件,接收来自系统管理模块下发的扫描任务,根据任务的要求从扫描策略库中配置相应的扫描策略,调用漏洞扫描插件库中的相应插件对被扫目标进行扫描,实现对被扫描目标的基本信息探测、端口扫描和漏洞扫描,同时将扫描结果记录于结果数据库。
[0011]所述数据模块为实现对漏洞检测期间所有相关数据信息的处理的集合,数据模块包含漏洞扫描插件库、扫描策略库、漏洞知识库、任务列表库、结果数据库和报表数据库;其中,
漏洞扫描插件库是针对于多种类别漏洞形成的一套网络漏洞测试程序,每一个程序均为一个针对于某种特定类别漏洞的可自行定义的插件,针对不同IaaS云平台的漏洞扫描插件开发完成后,存储在漏洞扫描插件库;
扫描策略库主要用于记录用户扫描策略的数据库,用户根据扫描需求采用不同的扫描策略;
扫描策略库主要提供具有代表性的典型扫描策略基础上,允许用户根据扫描需求自行设定扫描策略;
漏洞知识库为所有被扫描目标创建的知识库文件,知识库文件按照扫描目标接收扫描时的IP地址起名,内容为通过扫描获得的被扫描目标的相关信息;
任务列表库,用于记录任务列表的数据库;
结果数据库,用于记录扫描结果的数据库;
所述控制模块、业务模块及数据模块三个模块均安装于服务器中,所述控制模块、业务模块及数据模块三个模块之间采用加密的通信协议进行彼此通信。
[0012]在所述的一种针对云计算IaaS层高危安全漏洞检测系统中,所述扫描模块是以扫描策略库和漏洞知识库为基础,通过调用漏洞扫描插件执行安全漏洞扫描任务并将扫描存储在结果数据库中。
[0013]所述扫描模块的扫描类别按功能可分为:基本信息探测、端口扫描及漏洞扫描。
[0014]所述漏洞扫描包括弱口令、后门、溢出等高危漏洞。
[0015]所述扫描模块以插件形式进行设计,由此扫描模块更新更加方便,只需要更新插件库中相应插件即可更新扫描功能的整体探测功能,易于系统升级和扩展。
[0016]扫描模块提供任务启动、停止和删除基本任务管理的通用接口,通过所述通用接口与业务模块的系统管理模块进行交互,方便用户通过系统管理模块间接管理任务的执行。
[0017]根据扫描模块在漏洞检测系统中的定位,扫描模块按功能分为:目标基本信息探测子模块,端口信息探测子模块,系统漏洞扫描子模块,扫描管理子模块和结果记录子模块;其中,
目标基本信息探测子模块主要用于扫描模块探测扫描目标信息,通过目标信息的探测可以获得目标是否可达,以避免不必要的空扫描,目标基本信息探测子模块是扫描模块信息收集的初级阶段,其效果直接影响到后续的扫描。
[0018]端口信息探测子模块主要用于扫描模块探测目标端口基本信息,通过目标端口探测可以得知目标主机系统开放的端口及启动的网络服务,根据参数设定进行相应的TCP的1-1024或1-65535端口探测,扫描端口开放状态,统计扫描目标服务开放状态,为后续的系统漏洞扫描提供参考信息。
[0019]系统漏洞扫描子模块主要用于扫描模块实现系统漏洞探测及插件功能,系统漏洞探测是建立在端口信息探测的基础之上的,支持对常见的高风险的漏洞及针对IaaS云平台漏洞的扫描,所有的扫描过程均由扫描插件完成,插件负责向目标发送探测信息,收集回复信息并对其进行分析处理,判断漏洞存在与否。采用扫描插件机制,有利于整个扫描模块的可扩展性,在扫描模块中添加新插件即可更新扫描模块所能扫描的漏洞种类,便于整个模块及系统的整体式升级和扩展。
[0020]扫描管理子模块主要用于扫描模块提供扫描过程的管理接口,包括扫描任务的开始、停止和删除。通过这些接口与系统管理模块进行交互,方便用户对于扫描任务的整体管理。
[0021]结果记录子模块主要用于扫描模块在完成扫描功能后,负责将扫描结果以扫描报告的形式记录下来,方便其他模块调用并提供给用户查看。
[0022]本发明的优点在于:本发明所述的系统能及时发现云计算IaaS层可能存在的漏洞并予以修补,能够增加IaaS服务的安全性,有效防止可能的黑客攻击,避免不必要的损失;通过将扫描模块设计为插件形式,使得扫描模块更新更加方便,另外采用扫描插件机制,有利于整个扫描模块的可扩展性,在扫描模块中添加新插件即可更新扫描模块所能扫描的漏洞种类,便于整个模块及系统的整体式升级和扩展。
【附图说明】
[0023]图1为一种针对云计算IaaS层高危安全漏洞检测系统整体架构示意图;
图2为一种针对云计算IaaS层高危安全漏洞检测系统的扫描模块整体架构示意图;
图3为一种针对云计算IaaS层高危安全漏洞检测方法检测示例示意图。
【具体实施方式】
[0024]为使本发明的目的、技术方案和优点更加清楚明白,下文将结合附图对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
[0025]如图1所示,本发明所述的一种针对云计算IaaS层高危安全漏洞检测系统包括控制模块、业务模块和数据模块;
所述控制模块为用户提供WEB控制界面,是用户操作的入口;
所述业务模块包括系统管理模块和扫描模块两个部分,业务模块主要完成对IaaS层漏洞扫描和扫描管理;其中,
所述系统管理模块是连接WEB控制界面与扫描执行部件的桥梁,主要针对WEB控制界面下发的任务进行管理调度,将任务下发给扫描模块进行扫描,同时将收到的扫描结果返回到WEB界面;系统管理模块对扫描结果生成的报表、日志以及数据库信息进行管理;
所述扫描模块是最终执行扫描的核心部件,接收来自系统管理模块下发的扫描任务,根据任务的要求从扫描策略库中配置相应的扫描策略,调用漏洞扫描插件库中的相应插件对被扫目标进行扫描,实现对被扫描目标的基本信息探测、端口扫描和漏洞扫描,同时将扫描结果记录于结果数据库。
[0026]所述数据模块为实现对漏洞检测期间所有相关数据信息的处理的集合,数据模块包含漏洞扫描插件库、扫描策略库、漏洞知识库、任务列表库、结果数据库和报表数据库;其中,
漏洞扫描插件库是针对于多种类别漏洞形成的一套网络漏洞测试程序,每一个程序均为一个针对于某种特定类别漏洞的可自行定义的插件,针对不同IaaS云平台的漏洞扫描插件开发完成后,存储在漏洞扫描插件库;
扫描策略库主要用于记录用户扫描策略的数据库,用户根据扫描需求采用不同的扫描策略;
扫描策略库主要提供具有代表性的典型扫描策略基础上,允许用户根据扫描需求自行设定扫描策略;
漏洞知识库为所有被扫描目标创建的知识库文件,知识库文件按照扫描目标接收扫描时的IP地址起名,内容为通过扫描获得的被扫描目标的相关信息;
任务列表库,用于记录任务列表的数据库;
结果数据库,用于记录扫描结果的数据库;
所述控制模块、业务模块及数据模块三个模块均安装于服务器中,所述控制模块、业务模块及数据模块三个模块之间采用加密的通信协议进行彼此通信。
[00