土法炼钢 · 系统与基础设施

Falco / 运行时检测:从双引擎驱动到规则引擎

文章导航

分类入口
kubernetessecurity
标签入口
#falco#runtime-security#modern-ebpf#kmod#libscap#libsinsp#rules#v0.44.1

目录

Tetragon / eBPF 运行时安全 已把内核选择器、Override 与导出分叉钉到可排障精度,终章排除树把「Falco 规则库已够且不要 Override」标为独立路径;可观测性 · 网络观测linux/ebpf-security 给过产品级对照。中间仍缺一层:一次检测事件如何经 modern_ebpf 或 kmod、libscap 协商、libsinsp 富化与规则引擎变成告警,双引擎失败如何分列,以及相对 Tetragon / auditd / seccomp 何时不该上 Falco。

本系列回答:Falco 检测路径里延迟、丢失与「无告警」落在哪一层,何时用户态规则税值得付,何时应回到内核策略机或主机 audit。

写:

不写:Helm 百科、verifier/JIT 重讲、Tetragon TracingPolicy 重讲、MITRE 规则库全书、未实测 CPU% 排行。不复活 0.44 已删的 legacy eBPF、gVisor engine、gRPC output。对照综述见 observability/15;强制执行内核见 tetragon/;eBPF VM 见 ebpf/

系列状态:01–16 已发布(2026-08-21)。 规划见 PLAN.md。机制结论钉源码 tag 0.44.1 与驱动 10.2.0+driver,不以 falco.org/docs/ live 站点冒充该版本。无真实 Falco 节点则不粘贴伪造 Driver 行 / 规则命中 / drop 计数。实验台账未跑。

版本锚定:Falco 0.44.1(源码 tag 0.44.1,2026-06-11);Drivers 10.2.0+driver。0.44.0 删除 legacy eBPF / gVisor / gRPC output;与 0.43 用户态/驱动不兼容,升级必须成对。0.44.1 相对 0.44.0 补 container 下 BPF iterators 可禁用。driver.kind{auto, modern_ebpf, kmod}

适合谁看

与已有系列的分工

维度 tetragon/ / observability/15 本系列
定位 内核策略机 / 工具对照 用户态规则检测路径与双引擎捕获
深度 TracingPolicy→Override;产品勾选 driver∥kmod→scap→sinsp→规则→输出、排障轴
对照 Falco 口号、排除树叶 显式排除树;不重写 Tetragon

读法:只要「Falco 大概能告警」→ observability/15 或 linux/ebpf-security 足够;要「错引擎、协商失败、规则已加载无告警、丢事件当成无威胁」→ 本系列 01 → 02 → 03 → 06 → 13。

一、这个领域最值得关注的 5 个问题

  1. 一次检测事件从驱动到告警,丢失落在哪一层?双引擎在哪些层分叉? → 第 1–5、8、11–13 篇。
  2. 为何 modern_ebpf 与 kmod 不能当成装上即可互换?auto 掩盖了什么? → 第 2、10、13 篇。
  3. 为何用户态与驱动版本错配表现为无事件,而不是「规则写错」? → 第 3、5、12–13 篇。
  4. 规则已加载仍无告警:条件、富化还是 sink/丢事件? → 第 4、6–9、13 篇。
  5. 何时选 Falco,而非 Tetragon / auditd / seccomp? → 第 14–16 篇。

二、篇目依赖关系与推荐阅读路径

flowchart TD
  overview["01 Overview"] --> dual["02 Dual Engines"]
  dual --> scap["03 libscap"]
  scap --> sinsp["04 libsinsp"]
  sinsp --> drop["05 Drops Buffers"]
  drop --> rules["06 Rule Language"]
  rules --> load["07 falcoctl Load"]
  load --> out["08 Outputs"]
  out --> plug["09 Plugins"]
  plug --> deploy["10 driver.kind"]
  deploy --> tax["11 Overhead"]
  tax --> ops["12 Upgrade"]
  ops --> trouble["13 Troubleshoot"]
  trouble --> vs["14 vs Alternatives"]
  vs --> eco["15 Response Ecosystem"]
  eco --> select["16 Selection"]
  overview --> select
路径 篇目 适合
必读核心 1 → 2 → 3 → 6 → 13 快速建立坐标系
双引擎与部署 2 → 5 → 10 → 12 加载与升级门
对照选型 1 → 14 → 16 路径选型
完整通读 1 → … → 16 系统掌握

三、目录与每篇价值点

第一部分:模型与双驱动捕获(01–05)

  1. 运行时检测全景
    • 相对 Tetragon / observability / linux 对照的缺口;五轴与 16 篇路线。
  2. 双引擎对照(等级内核)
    • modern_ebpf ∥ kmod;legacy eBPF 已删;auto 运维门。
  3. libscap
    • ring、会话、API/Schema 协商、scap-open 边界。
  4. libsinsp
    • 状态富化、进程树;相对 Tetragon 内核态血缘。
  5. 丢事件与缓冲
    • buf preset、drop、BPF iterators / 0.44.1 可关门。

第二部分:规则、插件与输出(06–11)

  1. 规则语言与引擎
    • 条件、优先级、异常;非 MITRE 百科。
  2. 规则加载与 falcoctl
    • 默认规则集、远程/本地、热加载边界。
  3. 输出面
    • stdout/file/http;gRPC output 已删
  4. Plugin 框架
    • container / k8smeta;与 syscall 主路径分工。
  5. 部署与 driver.kind
    • Helm/DaemonSet、auto 回退、least-privileged。
  6. 观测税与误报面
    • 噪声与成本归因;无未测排行榜。

第三部分:运维、对照与收束(12–16)

  1. 运维与升级
    • 0.43→0.44 成对升级;破坏性变更门。
  2. 排障坐标系
    • 五轴;双引擎分列证据包。
  3. 对照替代路径
    • Tetragon、auditd、seccomp。
  4. 响应与生态边界
    • 下游与规则仓库;不写 SIEM 菜谱。
  5. 选型收束与开放问题
    • 排除树;回收 Tetragon 16 / EG 16 的 Falco 指针。

四、延伸阅读

读完这篇,下一步读什么

优先读同系列或同问题的下一篇,把单篇消费变成主题集群。

2026-08-21 · kubernetes / security

【Falco】双引擎对照:modern_ebpf 与 kmod 等级路径

钉清 Falco 0.44.1 仅保留的两条等级内核路径:modern_ebpf 的嵌入、CO-RE 与能力集,以及 kmod 的独立 .ko、签名与完整特权;说明何时不能互换,并把 auto 回退收束为运维门。


By .