ctrl-c in a GDB session causes chroot server of sandbox of Linux dead.
Categories
(Core :: Security: Process Sandboxing, defect, P5)
Tracking
()
People
(Reporter: sinker, Unassigned)
Details
User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:72.0) Gecko/20100101 Firefox/72.0
Steps to reproduce:
- Attach GDB on the parent process and continue it
- Press ctrl-c to get the prompt of the GDB. Then, the chroot server process will become dead if there is one.
Actual results:
With sandboxing in Linux, a content process would fork a child process as a chroot server to |chroot()| the content process. However, it would reset it's signal handlers to default behavior [1]. The default behavior of SIGINT is to terminate the process. Pressing on GDB get not only the prompt line of the GDB, but also sending SIGINT to every process in the same process group. It means death for chrootserver processes.
It does not cause any problems for production, but it is annoying for debugging.
[1] https://dxr.mozilla.org/mozilla-central/source/security/sandbox/linux/launch/SandboxLaunch.cpp#534
Expected results:
ctrl-c in the GDB should not kill chroot server processes.
Comment 1•6 years ago
|
||
Bugbug thinks this bug should belong to this component, but please revert this change in case of error.
Updated•6 years ago
|
Updated•3 years ago
|
Description
•