Commit Graph
6 Commits
Author SHA1 Message Date
mrtoth c8f2d62b64 Expose the bwrap command line at /run/agent-sandbox inside every sandbox 2026-09-02 16:09:46 +02:00
mrtoth 7f9b21ef4f Organize test code better 2026-04-25 15:10:42 +02:00
mrtoth 76c5be0e72 Fix misinformation in seccomp comments 2026-04-13 17:03:38 +02:00
mrtoth bd1f938f54 Block CLONE_NEWUSER in seccomp argument filter on clone
Prevents sandboxed processes from creating user namespaces to gain fake
root, the standard entry point for kernel privilege-escalation exploits.
Matches Docker and Podman's default seccomp policy.

clone3 remains fully denied (not in the allowlist) so glibc falls back
to clone where this argument filter applies.

Also switches hand-written ioctl constants to libc::{TIOCSTI,TIOCLINUX}.
2026-04-13 16:46:15 +02:00
mrtoth 0d0682b04e Replace --new-session with seccomp TIOCSTI/TIOCLINUX filter 2026-04-12 15:58:50 +02:00
mrtoth 12644ae31e Apply a seccomp-BPF syscall allowlist by default
Derived from Podman's default profile, stripped of capability-conditional
rules (we never grant capabilities), argument filters, and the explicit
EPERM block. Dangerous syscalls (mount, unshare, ptrace, bpf,
perf_event_open, io_uring_*, keyctl, kexec_*, ...) fall through to the
default ENOSYS action, which also keeps glibc's clone3 -> clone fallback
working. x86_64 and aarch64 are supported; other archs error out.

Toggle with --seccomp / --no-seccomp or seccomp = <bool> in config.
2026-04-08 08:34:34 +02:00