问题标签 [seccomp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
seccomp - 如何绕过 seccomp
我知道绕过过滤模式的方法,但我不知道绕过严格模式的方法。
在 64bit 的代码有:
- 在 rwxp 映射的 buf 处读取 1024 个字节
- 运行 buf()
- scanf 地址和 scanf 值。在地址(长)处写入值(长)
并且只有金丝雀和部分 RELRO,我该如何绕过严格模式 seccomp?
kubernetes - 错误:未能创建 containerd 容器:无法加载 seccomp 配置文件,没有这样的文件或目录
尝试在使用时设置自定义 seccomp 配置文件kubectl apply
,尽管容器中存在该文件,但 pod 不会以以下错误启动:
K8 部署 YAML
该文件在创建容器并进入 pod 的外壳时被复制,我可以看到它确实存在于那里(当不尝试加载它并且 pod 启动时)
Dockerfile
我也尝试过更改所有者(chown
)并以 root 权限运行,但只要该localhostProfile: custom_profile.json
行在 YAML 中,就会再次出现相同的错误。
我错过了什么阻止文件被找到?YAML 中缺少什么,容器/dockerfile 中缺少什么?
以下文章让我走到了这一步,但仍然无法设置配置文件:https ://docs.openshift.com/container-platform/4.8/security/seccomp-profiles.html
node.js - 几天后,我无法再启动 Puppeteer,直到我重新启动服务器
- 木偶版:10.2.0
- 平台/操作系统版本:Ubuntu 20.04.3 LTS aarch64
- Node.js 版本:v.14.17.6
- 发生在任何 URL 上。
这是我的测试脚本:
bug.hr/homepage.js
那应该启动 Puppeteer(在我重新启动服务器后它会启动),相反,我得到了这个:
我不能随意复制它。这发生在服务器运行一周或两周之后。重新启动服务器后,它再次工作。
我相信罪魁祸首是Kernel refuses to turn on BPF filters
,从日志中。
错误来源:https ://chromium.googlesource.com/chromium/src/+/lkgr/sandbox/linux/seccomp-bpf/sandbox_bpf.cc#282
可以通过将--disable-seccomp-filter-sandbox
参数传递给 Chrome 来修复,这会引入安全问题,因为它会禁用 Chrome 沙箱的第 2 层 ( https://chromium.googlesource.com/chromium/src/+/HEAD/docs/linux/sandboxing.md #the-sandbox-1 )
/usr/bin/chromium-browser --product-version
给出 95.0.4638.69
当我运行时也会发生这种情况apt update && apt upgrade
:
这在 Ubuntu-amd64(现在是 Arm)上没有发生。
有任何想法吗?
谢谢
docker - seccomp 和 apparmor 与容器内 root 用户
我正在尝试在没有特权构建器的情况下构建 Docker 映像,因此DinD
不是一种选择。我现在发现了两种使用kaniko或img实现这一目标的方法。
它们都在我的本地 Docker 设置中工作并实现了该目标:
img
映像以非 root 用户在内部运行构建器进程,但uid 1000
需要seccomp
和apparmor
设置,而kaniko
容器在内部运行构建器进程root user
,但不需要seccomp
和apparmor
更改。
我现在想知道哪个被认为更安全,运行一个容器,其中的进程由 root 用户运行,或者运行一个普通用户但使用seccomp=unconfined
and运行的容器apparmor=unconfined
。
如果有人可以帮助我并给我一些线索,那就太好了。
我的直觉告诉我kaniko
似乎更安全,因为据我了解,禁用默认值seccomp
和apparmor
配置文件会产生更大的影响。
提前致谢。
docker - 使用 Docker 降低性能的 seccomp sk_run_filter 调用
我有一个 PHP 应用程序在两个具有相同 Docker 版本、Docker 容器、OS (CentOS 7) 和内核的环境中运行在 Docker 中。一方面,我发现性能差了大约 5 倍。使用perf
,系统调用sk_run_filter
似乎是性能的主要罪魁祸首。我知道这是由 调用的seccomp
,但这也是启用的,并且在两台服务器上都使用了默认配置文件,因此已知seccomp
的性能问题似乎不是造成这种情况的原因。
我能在这些环境之间找到的唯一区别是 Docker 文件系统——慢速环境使用的是覆盖而不是覆盖 2。我们将对其进行升级,希望它能解决问题,但希望了解这是否是这些缓慢sk_run_filter
调用的根源,或者是否有其他原因。
回答这个问题:什么会导致sk_run_filter
Docker 性能不佳,它可能是overlay
文件系统吗?
docker - 无法使用自定义 seccomp 配置文件启动 docker 容器
无法使用 JSON 使用自定义 seccomp 配置文件启动 docker 容器。低于错误。
我们已经在各种 Docker 平台上进行了尝试,例如 Docker Desktop-WSL、Docker Playground 和基于 Amazon Linux 的 EC2。同样的错误。
EC2 上的 Docker 信息
linux - 我如何与 seccomp 挂钩?
我正在寻找一种使用 seccomp 或 seccomp-bpf 执行 Hooking 的方法。
我想设置一个规则,以便在执行系统调用(例如读取)时,我可以更改从系统调用返回的进程或答案。我必须使用 seccomp。
肿瘤坏死因子