CN116522318A - 容器权限检测方法、装置、设备及介质 - Google Patents

容器权限检测方法、装置、设备及介质 Download PDF

Info

Publication number
CN116522318A
CN116522318A CN202310796537.2A CN202310796537A CN116522318A CN 116522318 A CN116522318 A CN 116522318A CN 202310796537 A CN202310796537 A CN 202310796537A CN 116522318 A CN116522318 A CN 116522318A
Authority
CN
China
Prior art keywords
detected
authority
container
container instance
rights
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.)
Granted
Application number
CN202310796537.2A
Other languages
English (en)
Other versions
CN116522318B (zh
Inventor
李冠道
金华敏
王帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202310796537.2A priority Critical patent/CN116522318B/zh
Publication of CN116522318A publication Critical patent/CN116522318A/zh
Application granted granted Critical
Publication of CN116522318B publication Critical patent/CN116522318B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)

Abstract

本公开提供了一种容器权限检测方法、装置、设备及介质,涉及安全检测技术领域,该方法包括:通过正常业务中容器实例的每个权限位的基准权限配置、基准权限向量,和每个权限位的权重参数,对待检测容器实例的权限进行检测,判断待检测容器实例的权限配值是否存在异常,可以精准检测容器权限,提高了对权限检测的有效性和抗绕过性。

Description

容器权限检测方法、装置、设备及介质
技术领域
本公开涉及安全检测技术领域,特别涉及一种容器权限检测方法、装置、设备及介质。
背景技术
容器技术在云计算及云原生业务中成为核心技术在越来越多的业务领域被广泛使用,但是由于容器技术是直接与操作系统内核直接进行交互和资源使用,因此容器实例的权限合理与否是涉及到容器及底层基础设施的重要安全控制手段。
相关技术中,针对容器安全进行检测主要是针对容器镜像的多层(layer)结构进行特征匹配去判断是否存在恶意代码的内容,但是,针对通过构造特定的编排构建文件来通过正常镜像,以得到提权的容器实例的是无法被检测和防护的。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种容器权限检测方法、装置、设备及介质,至少在一定程度上克服相关技术中针对通过构造特定的编排构建文件来通过正常镜像,以得到提权的容器实例的无法被检测和防护的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
第一方面,本公开中的实施例提供一种容器权限检测方法,所述方法包括:
从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置;
根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数;
根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量;
根据所述待检测权限向量、所述待检测容器实例所属类型的容器实例对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限;所述基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。
在一种可能的实施例中,所述根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数,包括:
根据所述基准权限配置,确定每个权限位在容器实例中权限赋予的数量和权限限制的数量;其中,所述权限赋予用于表征容器实例具备权限位对应的权限,所述权限限制用于表征容器实例不具备权限位对应的权限;
根据所述权限赋予的数量和所述权限限制的数量,确定每个权限位在容器实例中的权限位变化情况;
根据所述权限位变化情况对所述多个权限位排序,并按照顺序为所述每个权限位赋予权重参数;其中,所述权限位变化情况中变化越小的排序在前,排序在前的权限位的权重参数大。
在一种可能的实施例中,所述根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量,包括:
从所述待检测权限配置中,确定每个权限位的权限赋予的情况和权限限制的情况;
根据所述权限赋予的情况和所述权限限制的情况,构建所述待检测容器实例对应的待检测权限向量。
在一种可能的实施例中,所述从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置,包括:
针对任意一个容器实例,从正常业务中,获取所述任意一个容器实例中的帽字段;
根据所述帽字段提取所述任意一个容器实例的多个权限位,以及每个权限位的基准权限配置。
在一种可能的实施例中,所述根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量之后,所述方法还包括:
获取所述待检测容器实例的容器实例编排文件;
检测所述待检测容器实例中所述容器实例编排文件中特权的配置参数是否为真;
若是,则将所述待检测容器实例确定为特权容器;
若否,则执行所述根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限。
在一种可能的实施例中,所述根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限,包括:
根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量和所述每个权限位的权重参数,确定权限向量距离;
若所述权限向量距离满足预设距离范围,则确定所述待检测容器实例为权限正常容器;
若所述权限向量距离不满足预设距离范围,则确定所述待检测容器实例为容器一级异常。
在一种可能的实施例中,所述若所述权限向量距离不满足预设距离范围,则确定所述待检测容器实例为容器一级异常之后,所述方法还包括:
读取安全模块的加载情况和策略文件;
根据所述安全模块的加载情况和策略文件,对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况进行检测;
若检测到对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况添加至所述安全模块的白名单中,则确定所述待检测容器实例为特殊使用容器;
若检测到对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况未添加至所述安全模块的白名单中,则确定所述待检测容器实例为容器二级异常。
第二方面,本公开中的实施例提供一种容器权限检测装置,包括:
获取单元,用于从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置;
确定单元,用于根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数;
所述确定单元,还用于根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量;
检测单元,用于根据所述待检测权限向量、所述待检测容器实例所属类型的容器实例对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限;所述基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。
第三方面,本公开实施例提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述的第一方面中所述的方法。
第四方面,本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的第一方面中所述的方法。
第五方面,根据本公开的另一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一项所述的方法。
本公开的实施例所提供的一种容器权限检测方法,该方法包括:从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置,根据多个权限位和基准权限配置,确定每个权限位的权重参数,根据待检测容器实例中多个权限位的待检测权限配置,确定待检测权限向量,根据待检测权限向量、待检测容器实例所属类型的容器实例对应的基准权限向量,以及每个权限位的权重参数,检测待检测容器实例的权限;基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置,通过正常业务中每个权限位的基准权限配置和基准权限向量,对待检测容器实例的权限进行检测,判断待检测容器实例的权限配值是否存在异常,可以精准检测容器权限,针对通过构造特定的编排构建文件来通过正常镜像,以得到提权的容器实例也可以检测出权限是否异常。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出本公开实施例中一种容器权限检测方法的流程图之一。
图2示出本公开实施例中一种容器权限检测方法的流程图之二。
图3示出本公开实施例中一种容器权限检测方法的流程图之三。
图4示出本公开实施例中一种容器权限检测方法的流程图之四。
图5示出本公开实施例中一种容器权限检测方法的流程图之五。
图6示出本公开实施例中一种容器权限检测装置的结构示意图。
图7示出本公开实施例中一种电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
由于相关技术中,针对容器安全进行检测主要是针对容器镜像的多层(layer)结构进行特征匹配去判断是否存在恶意代码的内容,但是,针对通过构造特定的编排构建文件来通过正常镜像,以得到提权的容器实例的是无法被检测和防护的。
基于此,发明人考虑到直接对容器实例的权限配置(Capability)进行检测,本公开提供了一种容器权限检测方法,该方法包括:从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置,根据多个权限位和基准权限配置,确定每个权限位的权重参数,根据待检测容器实例中多个权限位的待检测权限配置,确定待检测权限向量,根据待检测权限向量、待检测容器实例所属类型的容器实例对应的基准权限向量,以及每个权限位的权重参数,检测待检测容器实例的权限;基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置,通过正常业务中每个权限位的基准权限配置和基准权限向量,对待检测容器实例的权限进行检测,判断待检测容器实例的权限配值是否存在异常,可以精准检测容器权限,针对通过构造特定的编排构建文件来通过正常镜像,以得到提权的容器实例也可以检测出权限是否异常。
下面结合附图及实施例对本示例实施方式进行详细说明。
首先,本公开实施例中提供了一种容器权限检测方法,该方法可以由任意具备计算处理能力的电子设备执行,下述过程中以电子设备为服务器为例。
图1示出本公开实施例中一种容器权限检测方法的流程图之一,如图1所示,本公开实施例中提供的容器权限检测方法包括如下步骤:
S102:从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置。
在一种可能的实施例中,正常业务可以是正常的业务测试中的业务和/或在线运行的正常业务。
容器实例存在不同的类型,在获取容器实例的权限位,以及权限配置时,针对一种类型的容器,对其容器镜像在不同的业务范畴中生成的容器实例中的权限位的权限配置进行分类收集,形成各类业务范畴的基准权限向量。容器实例可以是微服务容器实例。
基准权限向量可以理解为具备正常权限的容器实例的权限位对应的向量,可以以基准权限向量为基准,判断容器是否存在异常。
需要说明的是,容器的权限位是固定的,所有容器的权限位的总数量也是相同的,检测容器的权限可以理解为是检测容器对应的权限位的权限配置。每一个容器是一定需要进行权限配置的,例如,需要对容器配置内存中的权限,网络中的权限等,通过权限配置可以使得容器实现与系统的交互和资源使用等。
示例性地,可以根据容器技术在实例状态上的记录和表现,针对任意一个容器实例,从正常业务中,获取任意一个容器实例中的帽字段,根据帽字段提取任意一个容器实例的多个权限位,以及每个权限位的基准权限配置。针对每种类型选择大量的容器实例,以找出更普遍的规律。
在容器实例中的进程(proc)/自身(self)/状态(status)中通过等字段记录了容器实例的权限位的权限情况进行分类收集。其中,权限情况可以理解为权限配置的具体情况,例如,容器实例A的权限位A为权限赋予,容器实例A的权限位B为权限限制等。
权限位可以是由一串01组成的二进制数来表示的,其本身就可以是类似于向量形式的。权限位的权限配置中可以包括权限赋予和权限限制的具体情况,可以是操作系统的进程权限用一组二进制数来表示,0表示权限限制,1表示权限赋予。
S104:根据多个权限位和基准权限配置,确定每个权限位的权重参数。
在一种可能的实施例中,可以通过如下方式确定每个权限位的权重参数:根据基准权限配置,确定每个权限位在容器实例中权限赋予的数量和权限限制的数量;其中,权限赋予用于表征容器实例具备权限位对应的权限,权限限制用于表征容器实例不具备权限位对应的权限,根据权限赋予的数量和权限限制的数量,确定每个权限位在容器实例中的权限位变化情况,根据权限位变化情况对多个权限位排序,并按照顺序为每个权限位赋予权重参数;其中,权限位变化情况中变化越小的排序在前,排序在前的权限位的权重参数大。
示例性地,可以通过每个权限位的权限赋予的数量和权限限制的数量之间差值的绝对值,可以称为权限数量差值,来表示权限位变化情况,权限数量差值越大,说明权限位权限赋予或权限限制其中的一种数量特别多,可以理解为权限位大部分都是权限赋予或者权限限制,权限位在不同类型的容器实例中的变化就小。
例如,针对全部类型的容器实例,确定出权限位A权限赋予的数量存在2个,权限限制的数量存在10000个,说明权限位A大部分情况都是权限限制,大部分类型的容器实例都不具备权限位A的权限,则权限位A变化比较小。
大部分类型的容器实例都不具备的权限位A,说明权限位A是比较稳定的权限位,可以赋予更大的权重参数,若在检测的过程中,发现权限位A由权限变限制为了权限赋予,则可以导致向量的极具变化,则说明此容器的权限存在异常。
同理,可以根据每个权限位的权限赋予的数量和权限限制的数量之间的比值来表示权限位变化情况。
需要说明的是,具备正常权限的容器实例中,其具体的权限位也是存在浮动的,针对同一种类型的容器实例,在不同的业务,或者由于不同的使用情况,其某些权限位的权限配置可能存在一定的不同。例如,容器实例A可能具备修改文件所有者的权限,但是容器实例B可能由于业务原因,不具备修改文件所有者的权限。上述仅是举例说明,同一种容器实例的权限位,以及基准权限配置可能会在一定程度上浮动。
在一种可能的实施例中,在通过权限位的基准权限配置,确定基准权限向量。
基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。例如,10个权限位的权限构成一组向量:(0100111001)。基准权限向量可以抽象成是一个多维度的坐标系中的坐标点。
由于向量的权限位存在合理浮动,在以距离阈值为界限的预设距离范围内,存在一个由于权限位的权限合理变化而导致的基准权限向量合理变化形成的向量簇。能够落到向量簇中的所有向量,都可以理解为是基准权限向量的合理变化。
在一种可能的实施例中,本公开中的预设距离范围可以是通过计算预先得到的,并设置的。
预设距离范围的计算方式可以是根据大量的权限位的合理浮动情况,计算基准权限向量中权限位变化之后的变化向量,根据确定好的权重参数,通过计算基准权限向量和变化向量之间的距离,作为预设距离范围的边界值。
在一种可能的实施例中,确定每种类型的容器实例对应的多个权限位,以及每个权限位的每个权限位的基准权限配置,又通过计算确定了预设距离范围,权重参数和基准权限向量,可以整合数据,得到基准调用关系数。将每个权限位的权重参数与权限位对应起来,根据类型,将容器实例、容器实例对应的基准权限向量和每个基准权限向量对应的预设距离范围对应起来,以关系数的方式存储,方便调用,也能够知晓被调用时,待检测容器实例是位于关系数的哪一个节点上。
S106:根据待检测容器实例中多个权限位的待检测权限配置,确定待检测权限向量。
在一种可能的实施例中,从待检测权限配置中,确定每个权限位的权限赋予的情况和权限限制的情况,根据权限赋予的情况和权限限制的情况,构建待检测容器实例对应的待检测权限向量。
S108:根据待检测权限向量、待检测容器实例所属类型的容器实例对应的基准权限向量,以及每个权限位的权重参数,检测待检测容器实例的权限。
其中,基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置,具体确定方式不再赘述。
在一种可能的实施例中,对待检测容器实例的权限进行检测的具体方式可以如下所示,图2示出了一种容器权限检测方法的流程图之二;如图2所示,包括以下步骤:
S202:根据待检测权限向量、待检测容器实例所属类型对应的基准权限向量和每个权限位的权重参数,确定权限向量距离。
S204:判断权限向量距离是否满足预设距离范围;若是,则执行S206;若否,则执行S08。
S206:确定待检测容器实例为权限正常容器。
S208:确定待检测容器实例为容器一级异常。
其中,预设距离范围可以通过人为预先设置,也可以是通过本公开中根据基准权限配置和权重参数计算得到的预设距离范围。容器一级异常表示待检测容器实例的权限初步检测存在异常。
示例性地,通过确定的不同类型的容器实例的基准权限向量,以及每个权限位的权重参数,可以确定基准权限向量与待检测权限向量之间每个权限位的向量距离,并且将每个权限位的向量距离乘以对应的权重参数,可以得到权限向量距离,将权限向量距离和预设距离范围进行比对,权限向量距离不满足预设距离范围可以理解为权限向量距离大于预设距离范围,则说明容器实例的权限存在异常,不属于合理的权限位浮动情况,若权限向量距离小于预设距离范围,说明容器实例的权限正常。
在一种可能的实施例中,在执行S208之后,将待检测容器实例确定为容器一级异常之后,发明人考虑到,可能确定是由于特殊情况导致容器实例的权限异常,例如,可能是由于容器镜像在此类型的业务中创建的容器实例确实需要用到一般类型的业务中不常用到的容器实例。
所以,基于此,本公开实施例的图3提供了一种容器权限检测方法的流程图之三,如图3所示,包括以下步骤:
S302:读取安全模块的加载情况和策略文件。
S304:根据安全模块的加载情况和策略文件,对待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况进行检测。
S306:判断实施白名单控制的情况;若实施白名单控制,则执行S308;若未实施白名单控制,则执行S310。
S308:确定待检测容器实例为特殊使用容器。
S310:确定待检测容器实例为容器二级异常。
示例性地,可以在检测到存在新创建的容器实例时,可以获取待检测容器实例对应的安全模块的加载情况和策略文件。
其中,安全模块举例说明,可以是安全计算的模块(SECure COMPuting,SECCOMP)和应用装甲的模块(Application Armor,Apparmor)等。安全计算的模块可以用来限制某一进程可用的系统调用,应用装甲的模块可以允许系统管理远将每个程序与一个安全配置文件关联,从而限制程序的功能等,可以理解为是一个访问控制系统,通过它可以指定程序可以读、写或运行哪些文件,是否可以打开网络端口等。
根据安全模块的加载情况和策略文件,对待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况进行检测,检测安全模块的白名单控制的情况是否实施,例如,待检测容器实例的某个权限位被设置为权限赋予,但是通过安全模块实施了白名单控制,那么说明是由于业务问题,为此容器实例赋予了特殊权限,确定为特殊使用容器。
若没有,则说明此容器实例,既在权限位上出现了异常,又没有实施白名单控制,可以确定待检测容器实例为容器二级异常。
综上,通过本公开中的方法,创新的提出对容器权限位向量化和向量距离计算来实现针对每个权限位级别的分析,实现了对容器实例的权限更精细化的检测,避免了攻击者通过精心的权限位构造来绕过现有的简易特权检测手段,提升了容器权限异常提升检测的有效性、抗绕过性以及准确性。
基于对同类容器镜像在不同的业务范畴中生成的容器实例的权限配置进行分类收集,形成各类业务范畴的基准权限向量,通过引入正常状态的权限向量进行计算对比,较当前的简易检测方法来说引入了正常业务请求的行为特征,有助于减少检测结果的误报率,提升了对容器权限异常检测的准确度,提升监测运营工作效率。
在一种可能的实施例中,为了可以精简对容器权限检测过程中的计算量,可以在执行S106之后,执行S108之前,增加对特权容器的判断过程。
图4示出了一种容器权限检测方法的流程图之四;如图4所示,包括以下步骤:
S402:获取待检测容器实例的容器实例编排文件。
S404:检测待检测容器实例中容器实例编排文件中特权的配置参数是否为真;若是,则执行S406;若否,则执行S408。
S406:将待检测容器实例确定为特权容器。
S408:根据待检测权限向量、待检测容器实例所属类型对应的基准权限向量,以及每个权限位的权重参数,检测待检测容器实例的权限。
在一种可能的实施例中,检测编排文件中特权的配置参数是否为真,即可以理解为检测编排文件中特权(Privileged)的配置参数是否为ture,实质上可以理解为检测一下容器实例的权限位是否被都修改为了权限赋予,若是,则说明待检测容器实例为特权容器,直接判定为权限异常。
在一种可能的实施例中,针对上述情况中,若确定待检测容器实例为特权容器,或者,确定待检测容器实例为容器二级异常之后,可以进行告警或将容器实例进行挂起操作。
需要说明的是,权限位大部分为权限赋予的也被赋予了较高的权重参数,则可能出现权限位由权限赋予变为权限限制时,容器也可能会被检测成权限异常。此种异常情况,检测到之后,若不影响使用,则可以不对容器的权限配置进行修改,因为容器的权限位是权限限制,容器的安全性实质上更高了。
检测到容器实例的权限属于异常之后,可以对容器实例进行人工检测或者其他的检查方式,对于是权限位的变化是由权限赋予变为权限限制的原因,导致的检测到权限异常,可以直接将容器实例重新使用。
在一般情况下,不会出现因为恶意攻击的原因,将容器实例的权限位修改为权限限制的情况,但是不排除其通过此种方式跳过检测和防护手段,以实现其他的攻击目的,所以,容器实例出现类似问题而导致的权限异常也需要检测出来。
在一种可能的实施例中,图5示出了一种容器权限检测方法的流程图之五;如图5所示,包括以下步骤:
S502:从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置。
S504:根据多个权限位和基准权限配置,确定每个权限位的权重参数、每种类型的容器实例对应的基准权限向量和预设距离范围。
其中,预设距离范围为通过基准权限配置和权重参数计算得到的。
S506:根据每个权限位、每个权限位的基准权限配置、每个权限位的权重参数、每种类型的容器实例对应的基准权限向量以及预设距离范围,构建基准调用关系树。
S508:根据待检测容器实例中多个权限位的待检测权限配置,确定待检测权限向量。
S510:获取待检测容器实例的容器实例编排文件。
S512:检测待检测容器实例中容器实例编排文件中特权的配置参数是否为真;若是,则执行S514;若否,则执行S516。
S514:将待检测容器实例确定为特权容器。
S516:根据待检测权限向量,从基准调用关系树选择待检测容器实例所属类型对应的基准权限向量和每个权限位的权重参数,确定权限向量距离。
S518:判断权限向量距离是否满足预设距离范围;若是,则执行S520;若否,则执行S522。
S520:确定待检测容器实例为权限正常容器。
S522:确定待检测容器实例为容器一级异常。
S522后的步骤可以参考图3,此处不再具体进行赘述。
通过上述实施例中提供的容器权限检测方法,不仅可以针对每个权限位级别进行分析,实现了对容器实例的权限更精细化的检测,避免了攻击者通过精心的权限位构造来绕过现有的简易特权检测手段,提升了容器权限异常提升检测的有效性、抗绕过性以及准确性,还有助于减少检测结果的误报率,提升了对容器权限异常检测的准确度,提升监测运营工作效率。
基于同一发明构思,本公开实施例中还提供了一种容器权限检测装置,如下面的实施例。由于该装置实施例解决问题的原理与上述方法实施例相似,因此该装置实施例的实施可以参见上述方法实施例的实施,重复之处不再赘述。
图6示出本公开实施例中一种容器权限检测装置的结构示意图,如图6所示,该容器权限检测装置60包括:
获取单元601,用于从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置。
确定单元602,用于根据多个权限位和基准权限配置,确定每个权限位的权重参数。
确定单元602,还用于根据待检测容器实例中多个权限位的待检测权限配置,确定待检测权限向量。
检测单元603,用于根据待检测权限向量、待检测容器实例所属类型的容器实例对应的基准权限向量,以及每个权限位的权重参数,检测待检测容器实例的权限,基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:上述至少一个处理单元710、上述至少一个存储单元720、连接不同系统组件(包括存储单元720和处理单元710)的总线730。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元710可以执行上述方法实施例中的任一项的步骤。
存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备740(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备700交互的设备通信,和/或与使得该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器760通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质。其上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。

Claims (10)

1.一种容器权限检测方法,其特征在于,所述方法包括:
从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置;
根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数;
根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量;
根据所述待检测权限向量、所述待检测容器实例所属类型的容器实例对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限;所述基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。
2.根据权利要求1所述的方法,其特征在于,所述根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数,包括:
根据所述基准权限配置,确定每个权限位在容器实例中权限赋予的数量和权限限制的数量;其中,所述权限赋予用于表征容器实例具备权限位对应的权限,所述权限限制用于表征容器实例不具备权限位对应的权限;
根据所述权限赋予的数量和所述权限限制的数量,确定每个权限位在容器实例中的权限位变化情况;
根据所述权限位变化情况对所述多个权限位排序,并按照顺序为所述每个权限位赋予权重参数;其中,所述权限位变化情况中变化越小的排序在前,排序在前的权限位的权重参数大。
3.根据权利要求1所述的方法,其特征在于,所述根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量,包括:
从所述待检测权限配置中,确定每个权限位的权限赋予的情况和权限限制的情况;
根据所述权限赋予的情况和所述权限限制的情况,构建所述待检测容器实例对应的待检测权限向量。
4.根据权利要求1所述的方法,其特征在于,所述从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置,包括:
针对任意一个容器实例,从正常业务中,获取所述任意一个容器实例中的帽字段;
根据所述帽字段提取所述任意一个容器实例的多个权限位,以及每个权限位的基准权限配置。
5.根据权利要求1所述的方法,其特征在于,所述根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量之后,所述方法还包括:
获取所述待检测容器实例的容器实例编排文件;
检测所述待检测容器实例中所述容器实例编排文件中特权的配置参数是否为真;
若是,则将所述待检测容器实例确定为特权容器;
若否,则执行所述根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限。
6.根据权利要求1所述的方法,其特征在于,所述根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限,包括:
根据所述待检测权限向量、所述待检测容器实例所属类型对应的基准权限向量和所述每个权限位的权重参数,确定权限向量距离;
若所述权限向量距离满足预设距离范围,则确定所述待检测容器实例为权限正常容器;
若所述权限向量距离不满足预设距离范围,则确定所述待检测容器实例为容器一级异常。
7.根据权利要求6所述的方法,其特征在于,所述若所述权限向量距离不满足预设距离范围,则确定所述待检测容器实例为容器一级异常之后,所述方法还包括:
读取安全模块的加载情况和策略文件;
根据所述安全模块的加载情况和策略文件,对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况进行检测;
若检测到对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况添加至所述安全模块的白名单中,则确定所述待检测容器实例为特殊使用容器;
若检测到对所述待检测容器实例的系统内核函数的调用、文件系统以及进程间通信的限制情况未添加至所述安全模块的白名单中,则确定所述待检测容器实例为容器二级异常。
8.一种容器权限检测装置,其特征在于,包括:
获取单元,用于从正常业务中,获取多种类型的容器实例中每种类型的容器实例对应的多个权限位,以及每个权限位的基准权限配置;
确定单元,用于根据所述多个权限位和所述基准权限配置,确定每个权限位的权重参数;
所述确定单元,还用于根据待检测容器实例中所述多个权限位的待检测权限配置,确定待检测权限向量;
检测单元,用于根据所述待检测权限向量、所述待检测容器实例所属类型的容器实例对应的基准权限向量,以及所述每个权限位的权重参数,检测所述待检测容器实例的权限;所述基准权限向量用于表征每种类型的容器实例中每个权限位的基准权限配置。
9.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1~7中任意一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~7中任意一项所述的方法。
CN202310796537.2A 2023-06-30 2023-06-30 容器权限检测方法、装置、设备及介质 Active CN116522318B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310796537.2A CN116522318B (zh) 2023-06-30 2023-06-30 容器权限检测方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310796537.2A CN116522318B (zh) 2023-06-30 2023-06-30 容器权限检测方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN116522318A true CN116522318A (zh) 2023-08-01
CN116522318B CN116522318B (zh) 2023-10-03

Family

ID=87398008

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310796537.2A Active CN116522318B (zh) 2023-06-30 2023-06-30 容器权限检测方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116522318B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112073508A (zh) * 2020-09-05 2020-12-11 蔡春梅 基于云计算和区块链服务的数据处理方法及人工智能平台
CN112069539A (zh) * 2020-09-05 2020-12-11 蔡春梅 基于云计算和区块链服务的信息防护方法及人工智能平台
CN112860484A (zh) * 2021-01-29 2021-05-28 深信服科技股份有限公司 容器运行时异常行为检测、模型训练方法及相关装置
CN112905421A (zh) * 2021-03-18 2021-06-04 中科九度(北京)空间信息技术有限责任公司 基于注意力机制的lstm网络的容器异常行为检测方法
US20220253335A1 (en) * 2016-02-05 2022-08-11 Sas Institute Inc. Automated virtual machine resource management in container-supported many task computing
CN115756860A (zh) * 2022-11-28 2023-03-07 杭州谐云科技有限公司 一种容器权限配置的方法和系统
CN116305120A (zh) * 2023-02-27 2023-06-23 南京信息工程大学 一种双重验证的安卓恶意软件混合检测系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220253335A1 (en) * 2016-02-05 2022-08-11 Sas Institute Inc. Automated virtual machine resource management in container-supported many task computing
CN112073508A (zh) * 2020-09-05 2020-12-11 蔡春梅 基于云计算和区块链服务的数据处理方法及人工智能平台
CN112069539A (zh) * 2020-09-05 2020-12-11 蔡春梅 基于云计算和区块链服务的信息防护方法及人工智能平台
CN112860484A (zh) * 2021-01-29 2021-05-28 深信服科技股份有限公司 容器运行时异常行为检测、模型训练方法及相关装置
CN112905421A (zh) * 2021-03-18 2021-06-04 中科九度(北京)空间信息技术有限责任公司 基于注意力机制的lstm网络的容器异常行为检测方法
CN115756860A (zh) * 2022-11-28 2023-03-07 杭州谐云科技有限公司 一种容器权限配置的方法和系统
CN116305120A (zh) * 2023-02-27 2023-06-23 南京信息工程大学 一种双重验证的安卓恶意软件混合检测系统及方法

Also Published As

Publication number Publication date
CN116522318B (zh) 2023-10-03

Similar Documents

Publication Publication Date Title
CN111274583A (zh) 一种大数据计算机网络安全防护装置及其控制方法
KR101724307B1 (ko) 악성코드를 검출하는 방법 및 시스템
US10341355B1 (en) Confidential malicious behavior analysis for virtual computing resources
CN107451476A (zh) 基于云平台的网页后门检测方法、系统、设备及存储介质
CN111447167B (zh) 车载系统安全防护方法及装置
CN116389235A (zh) 一种应用于工业物联网的故障监测方法及系统
CN116303290A (zh) 一种office文档检测方法及装置、设备及介质
CN115080291A (zh) 一种容器异常行为处理方法和装置
CN107122664B (zh) 安全防护方法及装置
CN116522318B (zh) 容器权限检测方法、装置、设备及介质
CN115809466B (zh) 基于stride模型的安全需求生成方法、装置、电子设备及介质
CN112463266A (zh) 执行策略生成方法、装置、电子设备以及存储介质
CN117235797A (zh) 大数据资源访问智能管理方法及装置、设备、系统
CN116595523A (zh) 基于动态编排的多引擎文件检测方法、系统、设备及介质
CN117032894A (zh) 容器安全状态检测方法、装置、电子设备及存储介质
CN116032595A (zh) 一种通用型恶意样本的分类方法、装置、介质及设备
CN115296895B (zh) 请求响应方法、装置、存储介质及电子设备
CN115600195A (zh) 一种web攻击检测方法、装置、设备及可读存储介质
CN110472415B (zh) 一种恶意程序的确定方法及装置
CN113849813A (zh) 数据检测方法、装置、电子设备及存储介质
CN117093996B (zh) 嵌入式操作系统的安全防护方法及系统
CN116821898B (zh) 容器环境的入侵检测方法、设备及存储介质
CN117034210B (zh) 一种事件画像的生成方法、装置、存储介质及电子设备
CN117240629B (zh) 一种基于网络安全入侵的预测方法及预测系统
CN118337403B (zh) 基于ioc的攻击路径还原方法、装置、电子设备及介质

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20230801

Assignee: Tianyiyun Technology Co.,Ltd.

Assignor: CHINA TELECOM Corp.,Ltd.

Contract record no.: X2024110000040

Denomination of invention: Container permission detection method, device, equipment and medium

Granted publication date: 20231003

License type: Common License

Record date: 20240914