更新时间:2024-10-28 GMT+08:00

容器安全告警事件概述

开启节点防护后,部署在每个容器宿主机上的Agent会对容器运行状态进行实时监控,支持逃逸检测、高危系统调用、异常进程检测、文件异常检测、容器环境等检测。用户可通过容器安全告警全面了解告警事件类型,及时发现资产中的安全威胁、实时掌握资产的安全状态。

约束限制

  • 仅HSS容器版支持容器安全告警功能。购买和升级HSS的操作,请参见购买主机安全防护配额配额版本升级
  • 容器安全告警功能支持对Linux容器以下运行时进行入侵检测告警:
    • Containerd
    • Docker

容器安全告警介绍

关于容器安全告警类型及具体的告警项介绍请参见表1

表1 容器安全告警说明

告警类型

告警类型说明

告警项

告警原理说明

恶意软件

恶意软件可能是黑客入侵成功之后植入的病毒、蠕虫、木马、后门等,用于窃取数据或攫取不当利益。

例如:黑客入侵之后植入木马,将受害主机作为挖矿、DDoS肉鸡使用,这类程序会大量占用主机的CPU资源或者网络资源,破坏用户业务的稳定性。

未分类恶意软件

通过程序特征、行为检测,结合AI图像指纹算法以及云查杀,有效识别后门、木马、挖矿软件、蠕虫和病毒等恶意程序,也可检测出容器中未知的恶意程序和病毒变种。

勒索软件

检测来自网页、软件、邮件、存储介质等介质捆绑、植入的勒索软件。

勒索软件用于锁定、控制您的文档、邮件、数据库、源代码、图片、压缩文件等多种数据资产,并以此作为向您勒索钱财的筹码。

Webshell

检测容器中Web目录中的文件,判断是否为Webshell木马文件,支持检测常见的PHP、JSP等后门文件类型。

黑客工具

检测利用漏洞或者黑客工具的恶意行为,一旦发现进行告警上报。

漏洞利用

漏洞利用是指利用服务器系统、软件或网络中存在的漏洞,以获取未授权访问权限、窃取数据或对目标系统进行破坏的行为。

漏洞利用通常被分为远程利用和本地利用。远程漏洞利用指攻击者利用网络连接到目标系统,挖掘系统漏洞实施攻击。本地漏洞利用指攻击者已在目标系统上取得低权限访问后,利用漏洞升级权限或执行其他恶意操作。

漏洞逃逸攻击

HSS监控到容器内进程行为符合已知漏洞的行为特征时(例如:“脏牛”“bruteforce”“runc”“shocker”等),触发逃逸漏洞攻击告警

文件逃逸攻击

HSS监控发现容器进程访问了宿主机系统的关键文件目录(例如:“/etc/shadow”“/etc/crontab”),则认为容器内发生了逃逸文件访问,触发告警。即使该目录符合容器配置的目录映射规则,HSS仍然会触发告警。

说明:

统信UOS 1050u2e操作系统暂不支持文件逃逸攻击检测。

系统异常行为

系统异常行为是指服务器在运行过程中出现的不正常行为,这种行为通常是由于系统故障、恶意攻击或其他安全漏洞引起的。系统异常行为可能会导致数据丢失、系统瘫痪等问题。因此,及时发现和处理系统异常行为是保障服务器系统和数据安全的重要措施之一。

反弹Shell

实时监控用户的进程行为,并支持告警和阻断进程的非法Shell连接操作产生的反弹Shell行为。

支持对TCP、UDP、ICMP等协议的检测。

您可以在“策略管理”的“恶意文件检测”策略中配置反弹Shell检测和自动化阻断,HSS会实时检测执行的可疑指令、主机被远程控制执行任意命令等。

您也可以在“策略管理”的“HIPS检测”策略中配置自动化阻断反弹Shell行为。

文件提权

检测利用SUID、SGID程序漏洞进行root提权的行为,一旦发现进行告警上报。

进程提权

当黑客成功入侵容器后,会尝试利用漏洞进行root提权或者文件提权,从而达到非法创建和修改系统账号的权限或者篡改文件的目的。

HSS支持检测以下异常提权操作:

  • 利用SUID程序漏洞进行root提权。
  • 利用内核漏洞进行root提权。
  • 对文件的提权。

关键文件变更

实时监控系统关键文件(例如:ls、ps、login、top等),对修改文件内容的操作进行告警,提醒用户关键文件可能被篡改。监控的关键文件的路径请参见关键文件变更监控路径

对于关键文件变更,HSS只检测文件内容是否被修改,不关注是人为还是进程进行的修改。

进程异常行为

检测各个主机的进程信息,包括进程ID、命令行、进程路径、行为等。

对于进程的非法行为、黑客入侵过程进行告警。

进程异常行为可以监控以下异常行为:

  • 监控进程CPU使用异常。
  • 检测进程对恶意IP的访问。
  • 检测进程并发连接数异常等。

高危系统调用

Linux系统调用是用户进程进入内核执行任务的请求通道。CGS监控容器进程,如果发现进程使用了危险系统调用(例如:“open_by_handle_at”“ptrace”“setns”“reboot”等),触发高危系统调用告警。

高危命令执行

实时检测容器系统中执行的高危命令,当发生高危命令执行时触发告警。

容器进程异常

  • 容器恶意程序

    HSS监控容器内启动的容器进程的行为特征和进程文件指纹,如果特征与已定义的恶意程序吻合则触发容器恶意程序告警。

  • 容器异常进程

    容器业务通常比较单一。如果用户能够确定容器内只会运行某些特定进程,可以在“策略管理”设置“容器进程白名单”并将策略关联容器镜像。

    对于已关联的容器镜像启动的容器,HSS只允许白名单进程启动,如果容器内存在非白名单进程,触发容器异常程序告警。

敏感文件访问

HSS监控容器内已配置文件保护策略的容器镜像文件状态。如果发生文件修改事件则触发文件异常告警。

容器异常启动

HSS监控新启动的容器,对容器启动配置选项进行检测,当发现容器权限过高存在风险时触发告警。容器环境检测触发的告警只是提醒容器启动风险,并不是发生实际攻击。如果黑客利用容器配置风险执行了真实攻击,仍然会触发HSS容器安全的其他检测告警。

HSS支持以下容器环境检测:

  • 禁止启动特权容器(privileged:true)

    特权容器是指容器以最大权限启动,类似于操作系统的root权限,拥有最大能力。docker run启动容器时携带“ –privileged=true”参数,或者kubernates POD配置中容器的“securityContext”配置了“privileged:true”,此时容器会以特权容器方式启动。

    告警名称为“容器安全选项”,告警内容中提示“privileged:true”,表示该容器以特权容器模式启动。

  • 需要限制容器能力集(capabilities:[xxx])

    Linux系统将系统权限做了分类,通过授予特定的权限集合,能控制容器进程的操作范围,避免出现严重问题。容器启动时默认开启了一些常用能力,通过修改启动配置可以放开所有系统权限。

    告警名称为“容器安全选项”,告警内容中提示“capabilities:[xxx]”,表示该容器启动时拥有所有能力集过大,存在风险。

  • 建议启用seccomp(seccomp=unconfined)

    Seccomp(secure computing mode)是Linux的一种内核特性,用于限制进程能够调用的系统调用,减少内核的攻击面。如果容器启动时设置“seccomp=unconfined”,将不会对容器内的系统调用执行限制。

    告警名称“容器安全选项”,告警内容中提示“seccomp=unconfined”,表示该容器启动时没有启动seccomp,存在风险。

    说明:

    启用seccomp后,由于每次系统调用Linux内核都需要执行权限校验,如果容器业务场景会频繁使用系统调用,开启seccomp对性能会有一定影响。具体影响建议在实际业务场景测试分析。

  • 限制容器获取新的权限(no-new-privileges:false)

    进程可以通过程序的suid位或者sgid位获取附加权限,通过sudo提权执行更高权限的操作。容器默认配置限制不允许进行权限提升。

    如果容器启动时指定了“ –no-new-privileges=false”,则该容器拥有权限提升的能力。

    告警名称为“容器安全选项”,告警内容中提示“no-new-privileges:false”,表示该容器关闭了提权限制,存在风险。

  • 危险目录映射(mounts:[...])

    容器启动时可以将宿主机目录映射到容器内,方便容器内业务直接读写宿主机上的资源。这是一种存在风险的使用方式,如果容器启动时映射了宿主机操作系统关键目录,容易造成从容器内破坏宿主机系统的事件。

    HSS监控到容器启动时mount了宿主机危险路径时触发告警,定义的宿主机危险目录包括:“/boot”“ /dev”“/etc”“/sys”“/var/run”等。

    告警名称为“容器挂载目录”,告警内容中提示“mounts:[{"source":"xxx","destination":"yyy"...]”,表示该容器映射的文件路径存在风险,需要按照告警中的目录映射关系排查是否存在危险的映射,可以将认为安全的挂载路径配置到容器信息收集的策略中。

    说明:

    对于docker容器常用的需要访问的宿主文件如“ /etc/hosts”“/etc/resolv.conf”不会触发告警。

  • 禁止启动命名空间为host的容器

    容器的命名空间需要与主机隔离开,如果容器配置了与主机相同的命名空间,则该容器可以访问并修改主机上的内容,易造成容器逃逸的安全事件,存在安全风险。因此HSS会检测容器的pid,network,ipc命名空间是否为host。

    告警名称为“容器命名空间”,告警内容中提示“容器pid命名空间模式”“容器ipc命名空间模式”“容器网络命名空间模式”,表示启动了命名空间为host的容器,需要按照告警中的提示排查容器的启动选项,如果存在业务需要,可以将该告警事件忽略。

容器镜像阻断

在Docker环境中容器启动前,HSS检测到镜像异常行为策略中指定的不安全容器镜像运行时触发告警。

说明:

可疑命令执行

  • 检测通过命令或工具创建、删除计划任务或自启动任务。
  • 检测远程执行命令的可疑行为。

用户异常行为

用户异常行为是指在特定环境或系统中,用户的行为模式与正常行为模式不符,或者在短时间内出现了异常的、突发的行为,这些行为可能表现为异常登录、非法访问等。为了检测和识别这些异常行为,需要对用户的操作进行分析检测。

非法系统用户账号

黑客可能通过风险账号入侵容器,以达到控制容器的目的,需要您及时排查系统中的账户。

HSS检查系统中存在的可疑隐藏账号、克隆账号;如果存在可疑账号、克隆账号等,则触发告警。

暴力破解

检测容器场景下“尝试暴力破解”和“暴力破解成功”等暴破异常行为,发现暴破行为时触发告警。

支持检测容器场景下SSH、Web和Enumdb暴破行为。

说明:
  • 目前暂仅支持Docker容器运行时的暴力破解检测告警。
  • Ubuntu 24.04、Suse 15 SP6操作系统暂不支持暴力破解检测告警。

用户密码窃取

检测到通过非法手段获取用户密钥行为,一旦发现进行告警上报。

网络异常访问

网络异常访问指的是网络连接或数据传输过程中出现的不符合正常使用模式的异常情况,这些异常包括资源异常使用、非授权访问、异常连接等。服务器中出现网络异常访问行为可能是遭受攻击的前兆。

异常外联行为

检测到服务器存在异常外联可疑ip的行为,一旦发现进行告警上报。

端口转发检测

检测到利用可疑工具进行端口转发行为,一旦发现进行告警上报。

集群异常行为

集群异常行为是指在集群环境中出现的异常行为,比如Pod创建或执行异常、枚举用户信息等,这些异常可能表明集群正在遭受攻击。

Pod异常行为

检测集群中存在创建特权pod、静态pod及敏感配置pod的异常行为,以及对现存pod执行的异常操作,一旦发现进行告警上报。

枚举用户信息

检测存在枚举集群用户的权限以及可执行操作列表的行为,一旦发现进行告警上报。

绑定集群用户角色

检测绑定、创建高权限集群角色或Service Account的行为,一旦发现进行告警上报。

Kubernetes事件删除

检测集群中删除Kubernetes事件的行为,一旦发现进行警上报。

无文件攻击

无文件攻击是一种网络攻击方式,它在实施一次完整的攻击过程中,没有释放恶意的可执行文件,而是直接将恶意代码写入系统内存或注册表中。由于没有恶意文件,这种攻击方式往往很难被发现。

无文件攻击按照磁盘文件的活动,被分成3个类型:

  • 没有任何的文件活动

    即攻击活动没有任何的磁盘文件落地和磁盘文件的操作行为,一般这种攻击活动都脱离了操作系统,是由更上层的硬件固件和软件层发起的。

  • 通过文件间接活动

    即没有磁盘落地文件,但通过文件间接活动。恶意代码一般通过白文件间接加载到内存中执行。这类攻击恶意代码的载体大多数都是脚本,通过程序命令执行,也有通过磁盘引导记录等特定机制的执行。

  • 需要操作文件进行活动

    通常来说就是恶意代码变成了数据,攻击者利用文件相关的程序漏洞或功能特性将恶意数据转换为恶意代码执行。

进程注入

检测将恶意代码注入到正在运行的进程的行为,一旦发现立即告警上报。

动态库注入进程

检测通过劫持动态链接库中的函数,从而实现白加黑注入代码的行为,一旦发现立即告警上报 。

内存文件进程

检测通过memfd_create的系统调用,创建一个只存在于RAM中的匿名恶意文件,从而执行恶意文件的行为,一旦发现立即告警上报。

关键文件变更监控路径

类型

Linux

bin

/bin/ls

/bin/ps

/bin/bash

/bin/login

usr

/usr/bin/ls

/usr/bin/ps

/usr/bin/bash

/usr/bin/login

/usr/bin/passwd

/usr/bin/top

/usr/bin/killall

/usr/bin/ssh

/usr/bin/wget

/usr/bin/curl