首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 应用软件 / 杀毒软件 / 一种针对恶意容器的检测方法

一种针对恶意容器的检测方法

阅读:375发布:2020-05-11

专利汇可以提供一种针对恶意容器的检测方法专利检索,专利查询,专利分析的服务。并且本 发明 属于计算机技术领域,具体涉及一种针对恶意容器的检测方法,包括以下步骤,步骤1、对被监控 虚拟机 中所有 进程 的创建行为进行监听;步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;步骤3、在读取完毕后,从容器中查找该执行文件;步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。与 现有技术 相比,本发明能够有效地检测出恶意容器,从而防止恶意容器对虚拟机的控制与控制,提高了系统的安全性。,下面是一种针对恶意容器的检测方法专利的具体信息内容。

1.一种针对恶意容器的检测方法,其特征在于,包括以下步骤:
步骤1、对被监控虚拟机中所有进程的创建行为进行监听;
步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;
步骤3、在读取完毕后,从容器中查找该执行文件;
步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。
2.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述步骤1具体包括以下步骤:
(a)设置被监控虚拟机和监控虚拟机;
(b)通过监控虚拟机中的EXECVE系统调用对被监控虚拟机中所有进程的创建行为进行监听。
3.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述步骤2中读取执行文件的信息包括执行文件的文件名和路径。
4.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述步骤2为在系统调用执行返回时开始读取所述执行文件的信息。
5.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述执行文件为二进制文件。
6.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述容器包括基础文件系统和设置在所述基础文件系统上层的文件镜像,所述基础文件系统为只读文件,所述文件镜像为可读写文件。
7.根据权利要求6中所述的针对恶意容器的检测方法,其特征在于:所述文件镜像存储有容器的新增和修改的文件。
8.根据权利要求7中所述的针对恶意容器的检测方法,其特征在于:所述步骤3中通过所述文件镜像查找所述执行文件。
9.根据权利要求1中所述的针对恶意容器的检测方法,其特征在于:所述步骤4中通过杀毒软件进行安全扫描。

说明书全文

一种针对恶意容器的检测方法

技术领域

[0001] 本发明属于计算机技术领域,具体涉及一种针对恶意容器的检测方法。

背景技术

[0002] 随着操作系统虚拟化技术的发展,容器正逐渐成为新兴的计算基础设施。由于不同容器之间共享主机操作系统内核,容器相比于虚拟机拥有更少的内存占用和更快的启动速度。基于容器技术的快速部署等特点,包括微服务(Microservice)和函数即服务(FaaS)在内的新计算服务模型被广泛应用于各大云服务厂商,如Amazon Lambda、Google Function等。由于同一主机上不同容器共享操作系统内核,容器中应用可能利用操作系统漏洞实现逃逸,因此其隔离性相比于虚拟机较差,存在了安全隐患。
[0003] 目前,已有多个可以被容器利用的内核漏洞被发现。在实现逃逸后,容器能够控制宿主机,进而干预其他容器运行或窃取其他容器的数据。为了解决这个问题,轻量级的虚拟机被广泛用于隔离容器,即在虚拟机中运行容器,使每个容器拥有独立的内核。如KataContainer、Firecracker和IntelClearContainer都是基于轻量级的虚拟机的容器运行环境。在这些环境中,云服务商为了防止云服务被滥用或者提供云安全服务,需要在虚拟机中运行安全监控程序。由于容器中的攻击者可能发生容器逃逸从而控制虚拟机,运行于虚拟机中的安全监控程序可能被探测或者攻击。
[0004] 因此,有必要提出一种解决方案,以使得面对一些恶意的容器能有效地进行检测,提高系统的安全性。

发明内容

[0005] 本发明的目的在于:针对现有技术的不足,而提供的一种针对恶意容器的检测方法,该方法能够有效地检测出恶意容器,从而防止恶意容器对虚拟机的控制与控制,提高了系统的安全性。
[0006] 为实现上述目的,本发明采用如下技术方案:
[0007] 一种针对恶意容器的检测方法,包括以下步骤:
[0008] 步骤1、对被监控虚拟机中所有进程的创建行为进行监听;
[0009] 步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;
[0010] 步骤3、在读取完毕后,从容器中查找该执行文件;
[0011] 步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。
[0012] 容器是基于Linux操作系统的命名空间技术实现隔离。Linux包含了6种命名空间,分别用于隔离进程号、网络、主机名、文件系统、进程间通信等。每个进程都对应6个命名空间。同一命名空间中的进程是相互可见的,因此,同一容器中的多个进程是相互可见的;而只有父命名空间能够访问子命名空间中的内容。普通进程对应的命名空间是不同的,所有容器的命名空间都是这些命名空间的子命名空间。由于同一容器中进程对应的命名空间是相同的,因此,本发明中可以通过检测容器中的恶意进程来判断该容器是否为恶意容器,从而防止恶意容器对虚拟机的攻击与控制,大大提高了系统的安全性。
[0013] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤1具体包括以下步骤:
[0014] (a)设置被监控虚拟机和监控虚拟机;
[0015] (b)通过监控虚拟机中的EXECVE系统调用对被监控虚拟机中所有进程的创建行为进行监听。
[0016] 由于被监控虚拟机和监控虚拟机之间在Linux操作系统中具有很强的隔离性,而容器运行于被监控虚拟机中,通过监控虚拟机中的EXECVE系统调用的监控程序对被监控虚拟机中的容器进行监听,由于监控程序运行于被监控虚拟机的外部,因此,极大地提高了系统的安全性和透明性。
[0017] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤2中读取执行文件的信息包括执行文件的文件名和路径。
[0018] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤2为在系统调用执行返回时开始读取所述执行文件的信息。
[0019] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述执行文件为二进制文件。
[0020] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述容器包括基础文件系统和设置在所述基础文件系统上层的文件镜像,所述基础文件系统为只读文件,所述文件镜像为可读写文件。
[0021] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述文件镜像存储有容器的新增和修改的文件。
[0022] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤3中通过所述文件镜像查找所述执行文件。容器采用多层文件系统,由于其基础文件系统为只读文件,而文件镜像为可读写文件,并且所有新增和修改的文件都存储于上层的文件镜像中。因此,仅需要分析上层可读写的文件镜像就可以找到目标的执行文件。
[0023] 作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤4中通过杀毒软件进行安全扫描。其中,可以选用常规的杀毒软件,如ESET NOD32、卡巴斯基、小红伞等,通过杀毒软件对执行文件进行安全扫描,判断该执行文件是否为恶意文件,从而可以检测出恶意容器。
[0024] 与现有技术相比,本发明的有益效果在于:本发明通过检测容器中的恶意进程来发现恶意容器,从而防止了恶意容器对虚拟机的控制与控制,大大提高了系统的安全性。附图说明
[0025] 此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施方式及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0026] 图1为本发明的工作流程图

具体实施方式

[0027] 如在说明书权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。
[0028] 在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、平”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0029] 在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
[0030] 以下结合附图对本发明作进一步详细说明,但不作为对本发明的限定。
[0031] 如图1中所示,一种针对恶意容器的检测方法,包括以下步骤:
[0032] 步骤1、对被监控虚拟机中所有进程的创建行为进行监听;
[0033] 步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;
[0034] 步骤3、在读取完毕后,从容器中查找该执行文件;
[0035] 步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。
[0036] 容器是基于Linux操作系统的命名空间技术实现隔离。Linux包含了6种命名空间,分别用于隔离进程号、网络、主机名、文件系统、进程间通信等。每个进程都对应6个命名空间。同一命名空间中的进程是相互可见的,因此,同一容器中的多个进程是相互可见的;而只有父命名空间能够访问子命名空间中的内容。普通进程对应的命名空间是不同的,所有容器的命名空间都是这些命名空间的子命名空间。由于同一容器中进程对应的命名空间是相同的,因此,本发明中可以通过检测容器中的恶意进程来判断该容器是否为恶意容器,从而防止恶意容器对虚拟机的攻击与控制,大大提高了系统的安全性。
[0037] 优选的,步骤1具体包括以下步骤:
[0038] (a)设置被监控虚拟机和监控虚拟机;
[0039] (b)通过监控虚拟机中的EXECVE系统调用对被监控虚拟机中所有进程的创建行为进行监听。
[0040] 由于被监控虚拟机和监控虚拟机之间在Linux操作系统中具有很强的隔离性,而容器运行于被监控虚拟机中,通过监控虚拟机中的EXECVE系统调用的监控程序对被监控虚拟机中的容器进行监听,由于监控程序运行于被监控虚拟机的外部,因此,极大地提高了系统的安全性和透明性。
[0041] 优选的,步骤2中读取执行文件的信息包括执行文件的文件名和路径。
[0042] 优选的,步骤2为在系统调用执行返回时开始读取执行文件的信息。
[0043] 优选的,执行文件为二进制文件。
[0044] 优选的,容器包括基础文件系统和设置在基础文件系统上层的文件镜像,其中,基础文件系统为只读文件,文件镜像为可读写文件,文件镜像存储有容器的新增和修改的文件,步骤3中通过文件镜像查找执行文件。容器采用多层文件系统,由于其基础文件系统为只读文件,而文件镜像为可读写文件,并且所有新增和修改的文件都存储于上层的文件镜像中。因此,仅需要分析上层可读写的文件镜像就可以找到目标的执行文件。
[0045] 优选的,步骤4中通过杀毒软件进行安全扫描。杀毒软件主要对执行文件进行安全扫描,判断该执行文件是否为恶意文件,从而可以检测出恶意容器,于本实施例中,采用ESET NOD32杀毒软件,具有较强的虚拟机技术,占用的资源小,启动快。
[0046] 上述说明示出并描述了本发明的若干优选实施方式,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施方式的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈