seccomp Sandbox Crash Dumping #

Currently, Breakpad relies on facilities that are disallowed inside the Linux seccomp sandbox. Specifically, it sets a signal handler to catch faults (currently disallowed), forks a new process, and uses ptrace() (also disallowed) to read the memory of the faulted process.

Options #

There are three ways we could do crash dumping of seccomp-sandboxed processes:

Signal handling in the seccomp sandbox #

In case a trusted thread faults with a SIGSEGV, we must make sure that an untrusted thread cannot register a signal handler that will run in the context of the trusted thread.

Here are some mechanisms that could make this safe:

See also #