自适应的私有云沙箱设置方法、设备及介质与流程

文档序号:15116677发布日期:2018-08-07 20:30阅读:298来源:国知局

本发明涉及计算机软件领域,尤其涉及自适应的私有云沙箱设置方法、设备及介质领域。



背景技术:

沙箱是一种隔离性质的操作系统,上面载有目标软件运行环境和分析软件,分析软件用来分析目标软件的行为特征。安全研究人员平时在进行恶意代码分析的时候,为了避免过多重复繁杂的人工分析,首先会使用沙箱进行自动化分析,查看其行为特征。在沙箱里交互式运行恶意软件,在启动分析软件后,它会在你运行恶意软件时收集系统整体信息。在沙箱里与恶意软件进行交互时,会使用它进行恶意指标收集,比如对敏感文件的读取,敏感指令的探测。

目前大部分沙箱的实现是简单在一个或者多个物理机器或者虚拟机上安装操作系统和分析软件而成。其目的就是构造一个软件运行所需要的环境,保证有待分析的软件能正常运行,从而分析软件能跟踪并搜集该软件的各种行为特征,形成报表,给安全人员分析。一个基本流程就是开启沙箱虚拟机,放入待分析软件运行,收集各种资源,比如注册表,网络资源,文件访问。

随着私有云技术成熟,私有云在企业内部的应用越来越多,但是传统沙箱部署技术缺少灵活性和弹性,无法充分利用私有云提供的强大计算能力和存储能力。



技术实现要素:

针对上述技术问题,本发明提供一种自适应的私有云沙箱设置方法、设备及介质,通过和私有云管理中心通讯,能感知云服务器的资源情况,让沙箱实例个数能适配私有云,拥有自适应特性,且底层兼容性好,不需要购买专门的沙箱设备,达到节省成本的目的。

为解决上述技术问题,本发明提供的技术方案是:

第一方面,本发明提供一种自适应的私有云沙箱设置方法,包括:

步骤s1,通过云资源监控程序监控私有云的资源使用情况,检测所述私有云上是否有空闲资源,所述云资源监控程序建立在所述私有云上,通过云服务器承载多个沙箱;

步骤s2,当所述私有云有空闲资源,发任务启动所述多个沙箱中的适当数量沙箱,启动后的沙箱从沙箱自适应平台获取任务请求,其中所述沙箱自适应平台设置在专属虚拟机中;

步骤s3,根据所述云资源监控程序检检测云服务器的负载能力,当所述私有云没有空闲资源,继续等待直至有空闲资源;

步骤s4,当所述云服务器的负载超过预设阈值,挂起所述沙箱,并记录所述沙箱的元数据,寻找有空闲资源的云服务器,将所述沙箱转移到有空闲的云服务器上继续运行;当所述云服务器的负载小于所述预设阈值,所述沙箱继续运行。

本发明提供的自适应的私有云沙箱设置方法,通过和私有云管理中心通讯,能感知云服务器的资源情况,让沙箱实例个数能适配私有云,拥有自适应特性,且底层兼容性好,不需要购买专门的沙箱设备,达到节省成本的目的。

进一步地,还包括:在所述云服务器中,通过服务器资源监控守护进程daemon向多个私有云平台管理中心注册认证;

获得认证后,通过所述服务器资源监控守护进程向云资源监控中心上报服务器资源使用情况。

进一步地,还包括:根据所述私有云的资源,预先建立适当数量的沙箱。

进一步地,还包括:根据所述私有云的资源使用情况,对所述预先建立适当数量的沙箱进行分配处理:

当所述私有云的资源紧张,关闭所述预先建立适当数量的沙箱中的某些非工作状态的沙箱实例,回放资源给所述私有云;和/或

暂停所述预先建立适当数量的沙箱中某些在工作状态的沙箱实例,等待云资源充足,再次继续所述暂停沙箱的工作。

进一步地,所述沙箱自适应平台通过restfulapi接受所述任务请求。

进一步地,所述步骤s2,根据所述任务请求,通过所述云资源监控程序检测云服务器的负载能力;具体包括:

根据所述任务请求,所述沙箱自适应平台更新任务状态,同时更新所述任务对应专属虚拟机的ip和主机名称;

获取任务请求后,所述沙箱开始动运行,并扫描收集待检测样本的行为信息;

扫描完成后,生成报告,发送至所述沙箱自适应平台,所述报告反映所述待检测样本的行为信息。

进一步地,在所述沙箱自适应平台中,包括2个向量表和4个线程,其中所述2个向量表分别为任务维度和沙箱虚拟机维度,所述4个线程互相配合工作。

进一步地,所述4个线程具体包括定时器线程,web任务接口线程,派发线程和收割线程;

所述定时器线程用于动态维护一个全局优先级队列,所述队列中按照优先级存放多个私有云平台管理中心的计算资源和存储资源情况;

所述web任务接口线程用于对所述沙箱自适应平台中的任务进行优先级设置;

所述派发线程用于周期性扫描所述沙箱自适应平台中的任务和所述私有云中的空闲资源;

所述收割线程用于周期性扫描所述沙箱自适应平台中的任务。

第二方面,本发明提供一种自适应的私有云沙箱设置设备,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现如第一方面所述的方法。

第三方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序指令,当所述计算机程序指令被处理器执行时实现如第一方面所述的方法。

本发明提供的自适应的私有云沙箱设置方法、设备及介质,与现有技术相比,有益效果为:

通过和私有云管理中心通讯,能感知云服务器的资源情况,让沙箱实例个数能适配私有云,拥有自适应特性,且底层兼容性好,不需要购买专门的沙箱设备,达到节省成本的目的。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。

图1示出了本发明实施例所提供的一种自适应的私有云沙箱设置方法的流程图;

图2示出了本发明实施例所提供的一种自适应的私有云沙箱设置方法的沙箱自适应管理平台和私有云交互示意图;

图3示出了本发明实施例所提供的一种自适应的私有云沙箱设置方法的沙箱示意图;

图4示出了本发明实施例所提供的一种自适应的私有云沙箱设置设备的硬件结构示意图。

具体实施方式

下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只是作为示例,而不能以此来限制本发明的保护范围。

实施例一

第一方面,参见图1,本发明提供一种自适应的私有云沙箱设置方法,包括:

步骤s1,通过云资源监控程序监控私有云的资源使用情况,检测所述私有云上是否有空闲资源,所述云资源监控程序建立在所述私有云上,通过云服务器承载多个沙箱;

步骤s2,当所述私有云有空闲资源,发任务启动所述多个沙箱中的适当数量沙箱,启动后的沙箱从沙箱自适应平台获取任务请求,其中所述沙箱自适应平台设置在专属虚拟机中;

步骤s3,根据所述云资源监控程序检测云服务器的负载能力,当所述私有云没有空闲资源,继续等待直至有空闲资源;

步骤s4,当所述云服务器的负载超过预设阈值,挂起所述沙箱,并记录所述沙箱的元数据,其中元数据指沙箱的内存和cmos等,元数据(metadata),又称中介数据、中继数据,为描述数据的数据(dataaboutdata),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据等。寻找有空闲资源的云服务器,将所述沙箱转移到有空闲的云服务器上继续运行;当所述云服务器的负载小于所述预设阈值,所述沙箱继续运行。

本发明提供的自适应的私有云沙箱设置方法,简单高效地解决沙箱充分利用私有云的弹性能力问题,以解决私有云下的传统沙箱无法和私有云相结合的不实用的缺点。通过和私有云管理中心通讯,能感知云服务器的资源情况,让沙箱实例个数能适配私有云,拥有自适应特性,且底层兼容性好,客户通过使用自身的私有云来运行沙箱,不需要购买专门的沙箱设备,达到节省成本的目的。

优选地,本发明提供的自适应的私有云沙箱设置方法,底层兼容性好,能支持主流的虚拟化技术比如kvm,vmware,lxc等。

参见图2,优选地,还包括:在所述云服务器中,通过服务器资源监控守护进程daemon向多个私有云平台管理中心注册认证;

获得认证后,通过所述服务器资源监控守护进程向云资源监控中心上报服务器资源使用情况。

其中,私有云的资源使用情况包括私有云的计算资源和存储资源情况,也可以为cpu资源利用率信息和内存使用率。

更优选地,如果私有云的资源丰富,那么可以维持更多的沙箱实例,这样后续有任务的时候,可以直接送入沙箱,避免启动和关闭沙箱所需要的时间。如果私有云的资源紧张,那么自适应平台会适度会根据当前任务数和资源,减少非活跃的沙箱实例。释放更多资源,分给业务系统。这样可以保证整个云的资源充分利用。

优选地,还包括:根据所述私有云的资源,预先建立适当数量的沙箱。

通过上述设置,可设置适当数量的沙箱,以保证私有云资源的合理利用。

优选地,还包括:根据所述私有云的资源使用情况,对所述预先建立适当数量的沙箱进行分配处理:

当所述私有云的资源紧张,关闭所述预先建立适当数量的沙箱中的某些非工作状态的沙箱实例,回放资源给所述私有云;和/或

暂停所述预先建立适当数量的沙箱中某些在工作状态的沙箱实例,等待云资源充足,再次继续所述暂停沙箱的工作。

当检测到私有云的资源紧张时,可以基于预先建立好适当数量的沙箱实例,等待有目的软件需要分析。如果自适应平台发现云里资源紧张,那么可进行以下处理:关闭一些非工作状态的沙箱实例,删除沙箱,回放资源给私有云,以供其他云资源使用者使用。或者暂停一些在工作状态的沙箱实例,暂停沙箱,等待云资源充足,再次继续该沙箱的工作。

优选地,所述沙箱自适应平台通过restfulapi接受所述任务请求。

另外,还可通过restfulapi存取待扫描的软件和撤销任务。

优选地,所述步骤s2,根据所述任务请求,通过所述云资源监控程序检测云服务器的负载能力;具体包括:

根据所述任务请求,所述沙箱自适应平台更新任务状态为scanning,同时更新所述任务对应专属虚拟机的ip和hostname等信息,hostname用于显示和设置系统的主机名称;

获取任务请求后,所述沙箱开始动运行,并扫描收集待检测样本的行为信息;

扫描完成后,生成报告,发送至所述沙箱自适应平台,此时沙箱自适应平台更新该任务为report;所述报告反映所述待检测样本的行为信息。

其中,待检测样本的行为信息指云服务器上的行为信息,具体用于检测云服务器的负载能力。

具体地,参见图3,图中所示的沙箱包括沙箱1,沙箱2和沙箱3,3个沙箱可从沙箱自适应管理平台中获取任务,当沙箱自适应管理平台中有任务时,将任务信息发送给沙箱,沙箱扫描收集待检测样本的行为信息,生成行为报表信息,发送至沙箱自适应平台。

进一步地,如果取消任务,任务在执行,自适应中心从向量表中去掉该任务,同时摧毁对应正在执行该任务的沙箱即可。否则直接去掉该任务。

优选地,在所述沙箱自适应平台中,包括2个向量表和4个线程,其中所述2个向量表分别为任务维度和沙箱虚拟机维度,所述4个线程互相配合工作。

其中,2个向量表具体为:

优选地,所述4个线程具体包括定时器线程,web任务接口线程,派发线程和收割线程;

所述定时器线程用于动态维护一个全局优先级队列,所述队列中按照优先级存放多个私有云平台管理中心的计算资源和存储资源情况(cpu资源利用率信息和内存使用率);其cpu和内存资源阈值可配置,云平台管理中心可配置。只有空闲率大于阈值的才会放入队列。需要创建沙箱虚拟机的时候,从队列里取出一个元素,和它对应的scheduler通讯比如openstack的nova-scheduler,启动专属虚拟机。

所述web任务接口线程用于对所述沙箱自适应平台中的任务进行优先级设置;具体地,任务可以赋予优先级,任务在内部也组织成一个优先级队列,按任务的优先级存放。默认不赋予优先级,那么默认为0。

所述派发线程用于周期性扫描所述沙箱自适应平台中的任务和所述私有云中的空闲资源;具体地,派发线程周期性加锁后扫描任务队列,如果有任务,取出,解锁。扫描资源队列,获取最空闲的计算中心,发任务启动沙箱。任务状态为pending.如果没有,睡眠到周期开始。

所述收割线程用于周期性扫描所述沙箱自适应平台中的任务。具体地,收割线程周期性扫描scanning类型的任务,如果超时,摧毁对应专属虚拟机,重新把任务加入任务队列,主要防止沙箱异常。

第二方面,本发明提供一种自适应的私有云沙箱设置设备,包括:至少一个处理器、至少一个存储器以及存储在所述存储器中的计算机程序指令,当所述计算机程序指令被所述处理器执行时实现如第一方面所述的方法。

结合图4描述的本发明实施例的压制地震数据随机噪音的非局部均值去噪方法可以由自适应的私有云沙箱设置设备来实现。图4示出了本发明实施例提供的自适应的私有云沙箱设置设备的硬件结构示意图。

自适应的私有云沙箱设置设备可以包括处理器401以及存储有计算机程序指令的存储器402。

具体地,上述处理器401可以包括中央处理器(cpu),或者特定集成电路(applicationspecificintegratedcircuit,asic),或者可以被配置成实施本发明实施例的一个或多个集成电路。

存储器402可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器402可包括硬盘驱动器(harddiskdrive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universalserialbus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器402可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器402可在数据处理装置的内部或外部。在特定实施例中,存储器402是非易失性固态存储器。在特定实施例中,存储器402包括只读存储器(rom)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(prom)、可擦除prom(eprom)、电可擦除prom(eeprom)、电可改写rom(earom)或闪存或者两个或更多个以上这些的组合。

处理器401通过读取并执行存储器402中存储的计算机程序指令,以实现上述实施例中的任意一种自适应的私有云沙箱设置方法。

在一个示例中,自适应的私有云沙箱设置设备还可包括通信接口403和总线410。其中,如图4所示,处理器401、存储器402、通信接口403通过总线410连接并完成相互间的通信。

通信接口403,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。

总线410包括硬件、软件或两者,将自适应的私有云沙箱设置设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线410可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。

第三方面,结合上述实施例中的自适应的私有云沙箱设置方法,本发明实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种自适应的私有云沙箱设置方法。

需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

本发明提供的自适应的私有云沙箱设置方法、设备及介质,与现有技术相比,有益效果为:

通过和私有云管理中心通讯,能感知云服务器的资源情况,让沙箱实例个数能适配私有云,拥有自适应特性,且底层兼容性好,不需要购买专门的沙箱设备,达到节省成本的目的。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1