184 个稳定版本
新版本 3.24.2 | 2024 年 8 月 24 日 |
---|---|
3.23.17 | 2024 年 7 月 25 日 |
3.15.7 | 2024 年 3 月 27 日 |
3.9.13 | 2023 年 12 月 31 日 |
3.6.2 | 2023 年 11 月 30 日 |
72 在 Unix API 中排名
535,605 每月下载量
3MB
72K SLoC
Syd 是一个用于在 Linux >=5.19 系统上沙箱化 应用 的 unikernel,类似于 Bubblewrap、Firejail、GVisor 和 minijail。默认情况下,Syd 是 安全的,旨在通过多种复杂的 Linux 沙箱机制(如 LandLock、Namespaces、ptrace 和 seccomp-{bpf,notify})提供一个 简单 的 接口,其中大多数机制都以其 脆弱 和 难以使用 而闻名。您可以将 Syd 以普通用户身份,无需额外权限 运行,甚至可以将 Syd 设置为您的 登录shell。以下是 Syd 功能的简要概述
- 读沙箱
- 写沙箱(以及 路径遮蔽)
- 状态沙箱(又称 路径隐藏)
- 执行沙箱(以及 SegvGuard)
- Ioctl沙箱(包含 AI/ML 工作负载,安全访问 PTY、DRM、KVM)
- 强制沙箱(又称 验证执行,类似于 Veriexec 和 Integriforce)
- TPE沙箱(又称 可信路径执行)
- 网络沙箱(支持 UNIX、IPv4、IPv6、Netlink 和 KCAPI 套接字)
- 锁定沙箱(使用 Landlock LSM)
- 加密沙箱(使用 透明文件加密,支持 AES-CTR)
- 代理沙箱 (SOCKS 代理 转发,使用 网络命名空间 隔离,默认为 TOR)
- 内存沙箱
- PID 沙箱 (比 控制组 更简单的替代方案)
- SafeSetID (使用预定义的 UID/GID 转换 进行安全用户/组切换)
- 幽灵模式 (类似于 Seccomp 级别 1 即 严格模式)
- 命名空间和容器化
- 学习模式,使用 Pandora
请阅读 syd、libsyd、gosyd、plsyd、pysyd、rbsyd、syd.el 的详细手册,并观看 asciicasts 内存沙箱、PID 沙箱、网络沙箱、使用 syd 沙箱化 Emacs。加入 CTF 活动 https://ctftime.org/event/2178 并尝试使用 ssh 用户/密码 syd 登录 syd.chesswob.org 读取文件 /etc/CTF
¹。²
- 使用 cargo 从源码安装,需要 libseccomp。
- 要与 Docker、Podman 或 CRI-O 一起使用,需要使用带有 "oci" 功能构建,请参阅:https://man.exherbolinux.org/syd-oci.1.html
- 已为 Alpine、Exherbo 和 Gentoo 打包。
- arm64、armv7 和 x86-64 的二进制发行版位于 https://distfiles.exherbolinux.org/#sydbox/
- 发行版使用此密钥签名: https://distfiles.exherbolinux.org/sydbox/syd.asc
- 向
syd AT chesswob DOT org
报告安全问题。使用上面的密钥加密。 - 变更日志在这里:https://gitlab.exherbo.org/sydbox/sydbox/-/blob/main/ChangeLog.md
- VIM 的 语法高亮 文件位于 https://gitlab.exherbo.org/sydbox/sydbox/-/tree/main/vim
- 已在 arm64、armv7、x86 和 x86-64 上使用 GitLab Pipelines 和 SourceHut Builds 进行测试。
由 Ali Polatel 维护。最新资源可以在 https://gitlab.exherbo.org/sydbox/sydbox.git 找到,并且可以在此提交错误/补丁 https://gitlab.exherbo.org/groups/sydbox/-/issues。通过 #sydbox 标签 跟踪动态,并在 Libera Chat 上的 #sydbox 进行讨论。
¹: SHA256(/etc/CTF
)=f1af8d3946546f9d3b1af4fe15f0209b2298166208d51a481cf51ac8c5f4b294
²: 首先阅读 CTF 沙箱配置文件。
³: 那是一只我不能解释的猫!
依赖项
~11–25MB
~363K SLoC