CN110851824B - 一种针对恶意容器的检测方法 - Google Patents
一种针对恶意容器的检测方法 Download PDFInfo
- Publication number
- CN110851824B CN110851824B CN201911106972.8A CN201911106972A CN110851824B CN 110851824 B CN110851824 B CN 110851824B CN 201911106972 A CN201911106972 A CN 201911106972A CN 110851824 B CN110851824 B CN 110851824B
- Authority
- CN
- China
- Prior art keywords
- file
- container
- virtual machine
- malicious
- detecting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Storage Device Security (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明属于计算机技术领域,具体涉及一种针对恶意容器的检测方法,包括以下步骤,步骤1、对被监控虚拟机中所有进程的创建行为进行监听;步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;步骤3、在读取完毕后,从容器中查找该执行文件;步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。与现有技术相比,本发明能够有效地检测出恶意容器,从而防止恶意容器对虚拟机的控制与控制,提高了系统的安全性。
Description
技术领域
本发明属于计算机技术领域,具体涉及一种针对恶意容器的检测方法。
背景技术
随着操作系统虚拟化技术的发展,容器正逐渐成为新兴的云计算基础设施。由于不同容器之间共享主机操作系统内核,容器相比于虚拟机拥有更少的内存占用和更快的启动速度。基于容器技术的快速部署等特点,包括微服务(Microservice)和函数即服务(FaaS)在内的新计算服务模型被广泛应用于各大云服务厂商,如Amazon Lambda、GoogleFunction等。由于同一主机上不同容器共享操作系统内核,容器中应用可能利用操作系统漏洞实现逃逸,因此其隔离性相比于虚拟机较差,存在了安全隐患。
目前,已有多个可以被容器利用的内核漏洞被发现。在实现逃逸后,容器能够控制宿主机,进而干预其他容器运行或窃取其他容器的数据。为了解决这个问题,轻量级的虚拟机被广泛用于隔离容器,即在虚拟机中运行容器,使每个容器拥有独立的内核。如KataContainer、Firecracker和IntelClearContainer都是基于轻量级的虚拟机的容器运行环境。在这些环境中,云服务商为了防止云服务被滥用或者提供云安全服务,需要在虚拟机中运行安全监控程序。由于容器中的攻击者可能发生容器逃逸从而控制虚拟机,运行于虚拟机中的安全监控程序可能被探测或者攻击。
因此,有必要提出一种解决方案,以使得面对一些恶意的容器能有效地进行检测,提高系统的安全性。
发明内容
本发明的目的在于:针对现有技术的不足,而提供的一种针对恶意容器的检测方法,该方法能够有效地检测出恶意容器,从而防止恶意容器对虚拟机的控制与控制,提高了系统的安全性。
为实现上述目的,本发明采用如下技术方案:
一种针对恶意容器的检测方法,包括以下步骤:
步骤1、对被监控虚拟机中所有进程的创建行为进行监听;
步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;
步骤3、在读取完毕后,从容器中查找该执行文件;
步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。
容器是基于Linux操作系统的命名空间技术实现隔离。Linux包含了6种命名空间,分别用于隔离进程号、网络、主机名、文件系统、进程间通信等。每个进程都对应6个命名空间。同一命名空间中的进程是相互可见的,因此,同一容器中的多个进程是相互可见的;而只有父命名空间能够访问子命名空间中的内容。普通进程对应的命名空间是不同的,所有容器的命名空间都是这些命名空间的子命名空间。由于同一容器中进程对应的命名空间是相同的,因此,本发明中可以通过检测容器中的恶意进程来判断该容器是否为恶意容器,从而防止恶意容器对虚拟机的攻击与控制,大大提高了系统的安全性。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤1具体包括以下步骤:
(a)设置被监控虚拟机和监控虚拟机;
(b)通过监控虚拟机中的EXECVE系统调用对被监控虚拟机中所有进程的创建行为进行监听。
由于被监控虚拟机和监控虚拟机之间在Linux操作系统中具有很强的隔离性,而容器运行于被监控虚拟机中,通过监控虚拟机中的EXECVE系统调用的监控程序对被监控虚拟机中的容器进行监听,由于监控程序运行于被监控虚拟机的外部,因此,极大地提高了系统的安全性和透明性。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤2中读取执行文件的信息包括执行文件的文件名和路径。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤2为在系统调用执行返回时开始读取所述执行文件的信息。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述执行文件为二进制文件。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述容器包括基础文件系统和设置在所述基础文件系统上层的文件镜像,所述基础文件系统为只读文件,所述文件镜像为可读写文件。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述文件镜像存储有容器的新增和修改的文件。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤3中通过所述文件镜像查找所述执行文件。容器采用多层文件系统,由于其基础文件系统为只读文件,而文件镜像为可读写文件,并且所有新增和修改的文件都存储于上层的文件镜像中。因此,仅需要分析上层可读写的文件镜像就可以找到目标的执行文件。
作为对本发明中所述的针对恶意容器的检测方法的改进,所述步骤4中通过杀毒软件进行安全扫描。其中,可以选用常规的杀毒软件,如ESET NOD32、卡巴斯基、小红伞等,通过杀毒软件对执行文件进行安全扫描,判断该执行文件是否为恶意文件,从而可以检测出恶意容器。
与现有技术相比,本发明的有益效果在于:本发明通过检测容器中的恶意进程来发现恶意容器,从而防止了恶意容器对虚拟机的控制与控制,大大提高了系统的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施方式及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明的工作流程图;
具体实施方式
如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接受的误差范围内,本领域技术人员能够在一定误差范围内解决所述技术问题,基本达到所述技术效果。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、水平”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
以下结合附图对本发明作进一步详细说明,但不作为对本发明的限定。
如图1中所示,一种针对恶意容器的检测方法,包括以下步骤:
步骤1、对被监控虚拟机中所有进程的创建行为进行监听;
步骤2、判断创建的进程是否属于该虚拟机中的容器,若此进程属于该虚拟机中的容器,则读取其执行文件的信息;若此进程不属于该虚拟机中的容器,则结束;
步骤3、在读取完毕后,从容器中查找该执行文件;
步骤4、对执行文件进行安全扫描,若该执行文件为恶意文件,则测得其对应的容器即为恶意容器。
容器是基于Linux操作系统的命名空间技术实现隔离。Linux包含了6种命名空间,分别用于隔离进程号、网络、主机名、文件系统、进程间通信等。每个进程都对应6个命名空间。同一命名空间中的进程是相互可见的,因此,同一容器中的多个进程是相互可见的;而只有父命名空间能够访问子命名空间中的内容。普通进程对应的命名空间是不同的,所有容器的命名空间都是这些命名空间的子命名空间。由于同一容器中进程对应的命名空间是相同的,因此,本发明中可以通过检测容器中的恶意进程来判断该容器是否为恶意容器,从而防止恶意容器对虚拟机的攻击与控制,大大提高了系统的安全性。
优选的,步骤1具体包括以下步骤:
(a)设置被监控虚拟机和监控虚拟机;
(b)通过监控虚拟机中的EXECVE系统调用对被监控虚拟机中所有进程的创建行为进行监听。
由于被监控虚拟机和监控虚拟机之间在Linux操作系统中具有很强的隔离性,而容器运行于被监控虚拟机中,通过监控虚拟机中的EXECVE系统调用的监控程序对被监控虚拟机中的容器进行监听,由于监控程序运行于被监控虚拟机的外部,因此,极大地提高了系统的安全性和透明性。
优选的,步骤2中读取执行文件的信息包括执行文件的文件名和路径。
优选的,步骤2为在系统调用执行返回时开始读取执行文件的信息。
优选的,执行文件为二进制文件。
优选的,容器包括基础文件系统和设置在基础文件系统上层的文件镜像,其中,基础文件系统为只读文件,文件镜像为可读写文件,文件镜像存储有容器的新增和修改的文件,步骤3中通过文件镜像查找执行文件。容器采用多层文件系统,由于其基础文件系统为只读文件,而文件镜像为可读写文件,并且所有新增和修改的文件都存储于上层的文件镜像中。因此,仅需要分析上层可读写的文件镜像就可以找到目标的执行文件。
优选的,步骤4中通过杀毒软件进行安全扫描。杀毒软件主要对执行文件进行安全扫描,判断该执行文件是否为恶意文件,从而可以检测出恶意容器,于本实施例中,采用ESET NOD32杀毒软件,具有较强的虚拟机技术,占用的资源小,启动快。
上述说明示出并描述了本发明的若干优选实施方式,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施方式的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (9)
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中通过杀毒软件进行安全扫描。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911106972.8A CN110851824B (zh) | 2019-11-13 | 2019-11-13 | 一种针对恶意容器的检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911106972.8A CN110851824B (zh) | 2019-11-13 | 2019-11-13 | 一种针对恶意容器的检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110851824A CN110851824A (zh) | 2020-02-28 |
CN110851824B true CN110851824B (zh) | 2023-07-28 |
Family
ID=69600778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911106972.8A Active CN110851824B (zh) | 2019-11-13 | 2019-11-13 | 一种针对恶意容器的检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110851824B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111563024B (zh) * | 2020-07-15 | 2020-10-16 | 北京升鑫网络科技有限公司 | 一种宿主机上监控容器进程的方法、装置及计算设备 |
CN113504971B (zh) * | 2021-07-20 | 2024-02-13 | 华云数据控股集团有限公司 | 基于容器的安全拦截方法及系统 |
CN114707149B (zh) * | 2022-03-18 | 2023-04-25 | 安芯网盾(北京)科技有限公司 | 一种傀儡进程检测方法、装置、电子设备和存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978908A (zh) * | 2016-07-08 | 2016-09-28 | 北京奇虎科技有限公司 | 一种非实时信息网站安全保护方法和装置 |
EP3361406A1 (en) * | 2017-02-08 | 2018-08-15 | AO Kaspersky Lab | System and method of analysis of files for maliciousness in a virtual machine |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365758B (zh) * | 2013-08-05 | 2016-03-16 | 北京搜狐新媒体信息技术有限公司 | 一种虚拟化环境下的进程监控方法及系统 |
CN104915285B (zh) * | 2015-06-30 | 2018-08-14 | 北京奇虎科技有限公司 | 一种容器进程监控方法、装置及系统 |
CN105069353B (zh) * | 2015-08-11 | 2017-10-24 | 武汉大学 | 一种基于Docker的可信容器安全加固方法 |
US10943014B2 (en) * | 2015-10-01 | 2021-03-09 | Twistlock, Ltd | Profiling of spawned processes in container images and enforcing security policies respective thereof |
CN105389243B (zh) * | 2015-10-26 | 2018-06-05 | 华为技术有限公司 | 一种容器监控方法和装置 |
CN108121595A (zh) * | 2016-11-28 | 2018-06-05 | 中国科学院声学研究所 | 一种Docker容器多进程管理方法及系统 |
CN107689953B (zh) * | 2017-08-18 | 2020-10-27 | 中国科学院信息工程研究所 | 一种面向多租户云计算的容器安全监控方法及系统 |
CN107679399A (zh) * | 2017-10-19 | 2018-02-09 | 郑州云海信息技术有限公司 | 一种基于容器的恶意代码检测沙盒系统及检测方法 |
CN109858239B (zh) * | 2019-01-16 | 2020-01-17 | 四川大学 | 一种动静态结合的容器内cpu漏洞攻击程序检测方法 |
CN110059453B (zh) * | 2019-03-13 | 2021-02-05 | 中国科学院计算技术研究所 | 一种容器虚拟化安全加固装置及方法 |
CN110210225A (zh) * | 2019-05-27 | 2019-09-06 | 四川大学 | 一种智能化的Docker容器恶意文件检测方法和装置 |
-
2019
- 2019-11-13 CN CN201911106972.8A patent/CN110851824B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105978908A (zh) * | 2016-07-08 | 2016-09-28 | 北京奇虎科技有限公司 | 一种非实时信息网站安全保护方法和装置 |
EP3361406A1 (en) * | 2017-02-08 | 2018-08-15 | AO Kaspersky Lab | System and method of analysis of files for maliciousness in a virtual machine |
Non-Patent Citations (1)
Title |
---|
私有云平台上的虚拟机进程安全检测;曹立铭;赵逢禹;;计算机应用研究(第05期);1495-1499 * |
Also Published As
Publication number | Publication date |
---|---|
CN110851824A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10169585B1 (en) | System and methods for advanced malware detection through placement of transition events | |
CN110851824B (zh) | 一种针对恶意容器的检测方法 | |
KR101122646B1 (ko) | 위장 가상 머신 정보를 이용한 인텔리전트 봇 대응 방법 및 장치 | |
US9213829B2 (en) | Computing device including a port and a guest domain | |
CN102932329B (zh) | 一种对程序的行为进行拦截的方法、装置和客户端设备 | |
US11409862B2 (en) | Intrusion detection and prevention for unknown software vulnerabilities using live patching | |
CN105205413B (zh) | 一种数据的保护方法及装置 | |
CN109889511B (zh) | 进程dns活动监控方法、设备及介质 | |
CN110659478B (zh) | 在隔离的环境中检测阻止分析的恶意文件的方法 | |
US11706251B2 (en) | Simulating user interactions for malware analysis | |
EP3753221B1 (en) | System and method for monitoring effective control of a machine | |
US20190243976A1 (en) | System and method for categorization of .net applications | |
US20200342109A1 (en) | Baseboard management controller to convey data | |
US10795993B2 (en) | Memory tracking for malware detection | |
US20220398311A1 (en) | Network Security Using a Malware Defense Profile | |
CN111556045B (zh) | 一种恶意程序的检测方法和装置 | |
US20110209215A1 (en) | Intelligent Network Security Resource Deployment System | |
CN117648688A (zh) | 一种容器逃逸检测方法、系统、计算机设备及存储介质 | |
CN114896592B (zh) | 一种wmi恶意代码的通用检测方法、装置、设备及存储介质 | |
US11936678B2 (en) | System and techniques for inferring a threat model in a cloud-native environment | |
CN113010885B (zh) | 一种检测伪装起始地址的内核线程的方法及装置 | |
CN112199672A (zh) | 账号权限提升行为的检测方法、装置及可读存储介质 | |
EP3243313B1 (en) | System and method for monitoring a computer system using machine interpretable code | |
CN111177726A (zh) | 一种系统漏洞检测方法、装置、设备及介质 | |
CN113504971B (zh) | 基于容器的安全拦截方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |