All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v4 0/4] seccomp fixes
@ 2018-08-22 17:02 Marc-André Lureau
  2018-08-22 17:02 ` [Qemu-devel] [PATCH v4 1/4] seccomp: use SIGSYS signal instead of killing the thread Marc-André Lureau
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: Marc-André Lureau @ 2018-08-22 17:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: pmoore, berrange, eblake, Eduardo Otubo, Marc-André Lureau

Hi,

This series fixes 2 issues with -sandbox:

- The seccomp action SCMP_ACT_KILL results in immediate termination of
  the thread that made the bad system call. However, qemu being
  multi-threaded, it keeps running. There is no easy way for parent
  process / management layer (libvirt) to know about that situation.

  Instead, the default SIGSYS handler when invoked with SCMP_ACT_TRAP
  will terminate the program and core dump.

  This may not be the most secure solution, but probably better than
  just killing the offending thread. SCMP_ACT_KILL_PROCESS has been
  added in Linux 4.14 to improve the situation, which I propose to use
  by default if available.

  Related to:
  https://bugzilla.redhat.com/show_bug.cgi?id=1594456

- The seccomp filter isn't applied to all threads. We can solve the
  issue by using SECCOMP_FILTER_FLAG_TSYNC since libseccomp 2.2.0 and
  kernel >= 3.17.

v3:
- modify qemu_seccomp() to set errno=ENOSYS
- add patch "seccomp: set the seccomp filter to all threads"

v2:
- fix clang unused inline warning
- add acked-by/r-b tags

Marc-André Lureau (4):
  seccomp: use SIGSYS signal instead of killing the thread
  seccomp: prefer SCMP_ACT_KILL_PROCESS if available
  configure: require libseccomp 2.2.0
  seccomp: set the seccomp filter to all threads

 qemu-seccomp.c | 36 +++++++++++++++++++++++++++++++++++-
 configure      |  7 ++-----
 2 files changed, 37 insertions(+), 6 deletions(-)

-- 
2.18.0.547.g1d89318c48

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-08-23 14:43 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-22 17:02 [Qemu-devel] [PATCH v4 0/4] seccomp fixes Marc-André Lureau
2018-08-22 17:02 ` [Qemu-devel] [PATCH v4 1/4] seccomp: use SIGSYS signal instead of killing the thread Marc-André Lureau
2018-08-22 17:02 ` [Qemu-devel] [PATCH v4 2/4] seccomp: prefer SCMP_ACT_KILL_PROCESS if available Marc-André Lureau
2018-08-22 17:02 ` [Qemu-devel] [PATCH v4 3/4] configure: require libseccomp 2.2.0 Marc-André Lureau
2018-08-22 17:19   ` Daniel P. Berrangé
2018-08-22 17:02 ` [Qemu-devel] [PATCH v4 4/4] seccomp: set the seccomp filter to all threads Marc-André Lureau
2018-08-22 17:23   ` Daniel P. Berrangé
2018-08-23 14:43 ` [Qemu-devel] [PATCH v4 0/4] seccomp fixes Eduardo Otubo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.