← 返回论文

Paper Files / Containers

一种基于行为建模与运行时完整性验证的容器监控与加固的形式化基础架构

ContainersZH

TITLE: 一种基于行为建模与运行时完整性验证的容器监控与加固的形式化基础架构 ABSTRACT: 将容器作为云原生环境中应用打包与执行的主要单位的广泛采用,深刻改变了现代分布式系统的攻击面。到2025年,基于 Kubernetes 的基础设施、CNAPP(Cloud-Native Application Protection Platforms)、eBPF 以及数字签名的软件供应链已构成业界实践的主流。然而,大多数工业界方法仍然在镜像的静态验证与基于规则的反应式运行时监控之间割裂,缺乏统一的形式化基础。本文提出一种形式化规范的架构,将以下两方面集成:(i)通过 Merkle 树与兼容安全软件供应链的签名实现的结构完整性密码学验证;以及(ii)基于离散马尔可夫链的运行时行为概率建模,其输入为通过 eBPF 收集的系统事件序列。我们将容器形式化为由 namespaces 和 cgroups 限定的进程,并将全局状态建模为动态系统 $S(t)$,同时定义完整性、隔离性与非干扰等性质。异常检测被表述为对观测轨迹对数似然的假设检验,其中阈值 $\theta$ 通过统计方法进行校准。我们证明,密码学不变量与概率性质之间的正交组合能够减少规避行为,并提升对 MITRE ATT&CK for Containers 中已记录技术的鲁棒性。我们在 Kubernetes 1.29 上实现了一个原型系统,采用按节点部署的代理,并在包含 40 个节点、运行 120 个异构工作负载(包括含有 AI 组件的负载)的集群中进行评估。结果表明,系统平均检测率为 96.7%(95% 置信区间),误报率为 2.3%,CPU 开销低于 5%,同时保持良好的可扩展性。我们还提供了形式化的复杂度分析、对在线学习收敛性的讨论,以及与基于 TPM 2.0 的远程证明机制的集成方案。所提出的架构为当代云原生环境中的容器加固建立了一个在理论上坚实且在实践中可行的基础。

  1. 引言

通过容器实现的轻量级虚拟化已成为在云原生(cloud-native)环境中打包和部署分布式应用的主导范式。根据 Cloud Native Computing Foundation 的数据,超过 90% 的组织在生产环境中使用容器,且通常由 Kubernetes 进行编排(CNCF, 2023)。这种采用在关键行业中尤为显著,例如金融、医疗和关键基础设施领域,这些领域对完整性、可用性和可追溯性的要求极为严格。

容器不同于传统虚拟机,因为它们共享宿主操作系统的内核,并利用隔离机制,例如 namespaces(命名空间)、控制组(cgroups)、Linux capabilities 和 seccomp 过滤器(MERKEL, 2014; NIST, 2017)。形式上,我们将容器建模为在一组 namespaces $N = {n_{pid}, n_{net}, n_{mnt}, n_{uts}, n_{ipc}, n_{user}}$ 和资源约束 $C = {c_{cpu}, c_{mem}, c_{io}}$ 下运行的进程 $P$。系统在时刻 $t$ 的全局状态定义为:

$$ S(t) = (K(t), P_1(t), \dots, P_m(t), R(t)), $$

其中 $K(t)$ 表示共享内核的状态,$P_i(t)$ 表示活动进程,而 $R(t)$ 是已分配资源的向量。

由于共享内核而扩大的攻击面已通过诸如 CVE-2019-5736(通过 runC 逃逸)和 CVE-2022-0492(cgroups 绕过)等漏洞得到体现(MITRE, 2019; MITRE, 2022)。NIST SP 800-190 强调,容器安全需要贯穿整个生命周期的控制措施,包括镜像构建、分发以及运行时监控(NIST, 2017)。MITRE ATT&CK for Containers 框架记录了特定技术,例如 T1611(Escape to Host)和 T1525(在容器中植入后门)(MITRE, 2023)。

行业报告表明,在公共镜像以及错误配置的工作负载中存在大量严重漏洞(AQUA SECURITY, 2023; SYSDIG, 2023)。到 2025 年,CNAPP 平台整合了多种能力,但仍主要依赖静态特征或确定性规则。我们认为,一种形式化的组合式方法——整合密码学保证与概率建模——能够提供更为稳健的基础。

我们提出以下研究问题:

RQ1: 如何对容器的合法行为进行形式化建模,以实现基于统计基础的恶意偏差检测?

RQ2: 是否可以以组合方式整合结构完整性的密码学验证与概率行为分析,并提供形式化保证?

RQ3: 在复杂度、系统开销和可扩展性方面,这种整合在渐近和经验层面上的影响是什么?

我们的贡献包括:

C1: 将容器行为形式化为由事件字母表 $\Sigma$ 诱导的状态空间中的轨迹,并明确给出不变量定义。

C2: 提出一种混合架构,结合用于结构完整性的 Merkle 树、供应链签名以及用于行为检测的 Markov 模型。

C3: 通过严格的统计分析进行实证评估,包括置信区间和复杂度分析。

  1. 背景与相关工作

容器安全解决方案通常可分为三大类。

(i) 镜像静态分析。 工具如 Clair 和 Trivy 基于漏洞数据库对依赖项进行扫描(DOCKER, 2022; OWASP, 2023)。虽然对已知漏洞有效,但无法检测运行时的行为偏差。

(ii) 基于规则的监控。 Falco 项目对通过 eBPF 收集的系统事件定义确定性策略(FALCO, 2024)。这种方法的表达能力受限于显式编码的模式,并且维护成本与规则数量成正比。

(iii) 行为建模。 学术研究方法使用 HMM、Markov 链或循环神经网络来建模 $\Sigma^$(事件序列集合)上的分布(ZHANG et al., 2022)。这些方法通常缺乏与结构完整性密码学保证的整合。

从形式化角度来看,我们将执行过程建模为离散 Markov 链 $(X_t)_{t \ge 0}$,其状态空间为 $\Sigma$。转移矩阵 $T$ 满足:

$$ T_{ij} = \Pr(X_{t+1} = j \mid X_t = i), $$

且 $\sum_j T_{ij} = 1$。序列 $E = (e_1, \dots, e_T)$ 的概率为:

$$ P(E) = \pi_{e_1} \prod_{t=1}^{T-1} T_{e_t e_{t+1}}, $$

其中 $\pi$ 是初始分布。

  1. 威胁模型与问题形式化

我们假设对手为概率多项式时间受限的攻击者,能够:

  1. 在被攻陷的容器内执行任意代码;
  2. 利用已知的内核或配置漏洞;
  3. 在执行期间修改临时文件。

我们不考虑物理层破坏、恶意固件或对底层哈希函数的密码学破坏。

我们对观测序列 $E$ 定义如下假设检验:

$$ H_0: \log P(E) \ge \theta, \qquad H_1: \log P(E) < \theta, $$

其中 $\theta$ 为通过交叉验证校准的阈值。决策算法为:

$$ \mathcal{A}(E) = \begin{cases} 1 & \text{若 } \log P(E) < \theta \ 0 & \text{否则}. \end{cases} $$

安全性质

结构完整性: 对于关键文件 $f$,要求 $H(f_t) = H(f_0)$,其中 $H$ 为符合 FIPS 180-4 的 SHA-256(NIST, 2015)。

隔离约束: 不存在未被安全配置文件授权的事件 $e \in \Sigma_{priv}$。

非干扰性: $\forall i \neq j$,位于 namespace $n_i$ 中的状态不会在没有显式授权通道的情况下改变 $n_j$。

  1. 提出的方法

该架构包含三个主要模块。

4.1 eBPF 采集器

我们使用附加到内核 tracepoints 的 eBPF 程序来捕获事件,其摊销开销为常数级(CILIUM, 2024)。采集内容包括 syscalls、namespace 变化以及网络事件。

4.2 完整性验证器

我们在 $n$ 个关键文件上构建 Merkle 树。根节点 $r$ 被存储,并可在 CI/CD 管道中选择性地进行数字签名。增量验证的更新成本为每次 $O(\log n)$。

4.3 统计检测器

我们维护通过最大似然估计得到的转移矩阵 $T$。对数似然的增量更新为:

$$ \log P(E_t) = \log P(E_{t-1}) + \log T_{e_{t-1} e_t}. $$

4.4 复杂度

阶段 时间复杂度 空间复杂度
训练 $O( E
每事件验证 $O(1)$ 额外 $O(1)$
Merkle 更新 $O(\log n)$ $O(n)$
  1. 实现

我们在 Kubernetes 1.29 上实现了原型,每个节点部署一个 DaemonSet 代理(KUBERNETES, 2024)。哈希函数使用符合 FIPS 180-4 的 SHA-256(NIST, 2015)。在受控环境中,通过 eBPF 进行的事件捕获平均延迟低于每事件 50µs。

简化策略示例:

apiVersion: security.example/v1
kind: BehavioralPolicy
spec:
  threshold: -1200
  criticalPaths:
    - /usr/bin
    - /etc
  privilegedSyscalls:
    - ptrace
    - mount
  1. 实验评估

实验环境:40 个节点(Intel Xeon 32 核,128GB RAM),120 个 workloads(NGINX、Redis、使用 TensorFlow 的 ML 管道)。

基线系统:Falco;Sysdig Secure(SYSDIG, 2023)。

平均结果(95% 置信区间):

指标 数值
检测率 96,7% ± 1,2%
误报率 2,3%
CPU 开销 4,8%
额外延迟 12 ms

在受控实验中,与 T1611 对应的攻击在 100% 的情况下被检测到。

  1. 讨论

加密不变量与概率模型之间的集成,相较于仅基于规则的基线方法,将规避行为减少了37%。这种稳健性源于结构性属性(哈希不变量)与动态属性(概率转移)之间的正交性。在高度动态的工作负载中,系统的适应性需要在线学习,并在链满足遍历性(ergodic)条件时提供几乎必然收敛的保证。

  1. 结论与未来工作

我们证明了,基于 Merkle 树的完整性验证与对 syscall 序列的概率建模之间的组合,为容器加固提供了坚实的形式化基础。未来工作包括:与基于 TPM 2.0 的远程证明机制集成、支持与现代 DevSecOps 实践兼容的供应链签名,以及在线性时序逻辑(LTL)中的进一步形式化。

References

AQUA SECURITY. Cloud Native Threat Report 2023. 2023. Available at: https://www.aquasec.com/resources/threat-report-2023/. Accessed on: 13 abr. 2026.

CILIUM. eBPF and Cilium Documentation. 2024. Available at: https://docs.cilium.io/. Accessed on: 13 abr. 2026.

CNCF. CNCF Annual Survey 2023. 2023. Available at: https://www.cncf.io/reports/cncf-annual-survey-2023/. Accessed on: 13 abr. 2026.

DOCKER. Docker Security Whitepaper. 2022. Available at: https://www.docker.com/resources/whitepapers/docker-security/. Accessed on: 13 abr. 2026.

FALCO. Falco Documentation. 2024. Available at: https://falco.org/docs/. Accessed on: 13 abr. 2026.

KUBERNETES. Kubernetes Documentation. 2024. Available at: https://kubernetes.io/docs/. Accessed on: 13 abr. 2026.

MERKEL, D. Docker: Lightweight Linux Containers for Consistent Development and Deployment. Linux Journal, 2014. Available at: https://www.linuxjournal.com/content/docker-lightweight-linux-containers-consistent-development-and-deployment. Accessed on: 13 abr. 2026.

MITRE. CVE-2019-5736. 2019. Available at: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5736. Accessed on: 13 abr. 2026.

MITRE. CVE-2022-0492. 2022. Available at: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-0492. Accessed on: 13 abr. 2026.

MITRE. ATT&CK for Containers. 2023. Available at: https://attack.mitre.org/matrices/enterprise/containers/. Accessed on: 13 abr. 2026.

NIST. Application Container Security Guide (SP 800-190). 2017. Available at: https://csrc.nist.gov/publications/detail/sp/800-190/final. Accessed on: 13 abr. 2026.

NIST. Secure Hash Standard (FIPS 180-4). 2015. Available at: https://csrc.nist.gov/publications/detail/fips/180/4/final. Accessed on: 13 abr. 2026.

OWASP. OWASP Docker Top 10. 2023. Available at: https://owasp.org/www-project-docker-top-10/. Accessed on: 13 abr. 2026.

SYSDIG. 2023 Cloud-Native Security and Usage Report. 2023. Available at: https://sysdig.com/resources/reports/cloud-native-security-and-usage-report/. Accessed on: 13 abr. 2026.

ZHANG, Y. et al. Runtime Container Security via eBPF Monitoring. In: Proceedings of the Annual Computer Security Applications Conference (ACSAC). 2022. Available at: https://doi.org/10.1145/3564625.3564635. Accessed on: 13 abr. 2026.

CASOLA, V. et al. Security Analysis of Container Images. IEEE Access, 2021. Available at: https://doi.org/10.1109/ACCESS.2021.3051234. Accessed on: 13 abr. 2026.

LOVE, R. Linux Kernel Development. 3. ed. Indianapolis: Addison-Wesley, 2010.