【问题标题】:Is it possible to get the current PID in a seccomp filter?是否可以在 seccomp 过滤器中获取当前 PID?
【发布时间】:2020-12-21 15:37:45
【问题描述】:

当通过 SECCOMP_RET_USER_NOTIF 处理 seccomp 用户空间通知 (https://www.kernel.org/doc/html/latest/userspace-api/seccomp_filter.html) 时,我发现 PID 作为 seccomp_notif 结构的一部分对于某些过滤决策非常有用。 在 ebpf 过滤器中,辅助函数(如 bpf_get_current_pid_tgid())可用于获取此类信息。但由于 seccomp 似乎只支持经典的 BPF,我想知道是否还有其他方法。 据我所知,在 seccomp 过滤器内部只能访问 seccomp_data 结构。 有没有办法直接获取 seccomp 过滤器中的 PID 等特定信息?

【问题讨论】:

    标签: c bpf ebpf seccomp


    【解决方案1】:

    不,您无法从 seccomp 过滤器本身获取该信息,除非它是系统调用参数的一部分。要检索 PID,您必须例如如您所述,将控制权交给用户空间 ptracer 进程或依赖SECCOMP_RET_USER_NOTIF

    【讨论】:

      猜你喜欢
      • 2022-09-23
      • 2021-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-02
      • 1970-01-01
      • 1970-01-01
      • 2014-01-10
      相关资源
      最近更新 更多