Backport 2.5.1 to fix missing openat2 syscall, causing problems for fuse-overlayfs in nspawn containers
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
libseccomp (Ubuntu) |
Fix Released
|
Medium
|
Alex Murray | ||
Xenial |
Fix Released
|
Medium
|
Alex Murray | ||
Bionic |
Fix Released
|
Medium
|
Alex Murray | ||
Focal |
Fix Released
|
Medium
|
Alex Murray | ||
Groovy |
Fix Released
|
Medium
|
Alex Murray | ||
Hirsute |
Fix Released
|
Medium
|
Alex Murray | ||
systemd (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Won't Fix
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
Undecided
|
Unassigned | ||
Groovy |
Fix Released
|
Undecided
|
Unassigned | ||
Hirsute |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
The version of libseccomp2 in X/B/F/G does not know about the openat2 syscall. As such applications that use libseccomp cannot specify a system-call filter against this system-call and so it cannot be mediated.
[Test Plan]
This can be tested by simply running scmp_sys_resolver from the seccomp binary package and specifying this system-call:
Existing behaviour:
$ scmp_sys_resolver openat2
-1
Expected behaviour:
$ scmp_sys_resolver openat2
437
(Note this value will be different on other architectures)
[Where problems could occur]
In version 2.5.1 of libseccomp which adds this new system-call, changes were also made in the way the socket system-call is handled by libseccomp on PPC platforms - this resulted in a change in the expected behaviour and so this has already been noticed and a fix is required for the systemd unit tests as a result https:/
There was also a similar change for s390x but so far no regressions have been observed as a result as systemd already expected that behaviour from libseccomp, it was only PPC that was missing.
In the event that a regression is observed however, we can easily either patch the affected package to cope with the new behaviour of this updated libseccomp since in each case the change in behaviour only affects a few system calls on particular architectures, or we can revert this update.
[Other Info]
* As usual thorough testing of this update has been performed both manually via the QA Regression Testing scripts, and via the autopkgtest infrastructure against packages in the Ubuntu Security Proposed PPA https:/
I have attached debdiffs of the prepared updates which are also sitting in the Ubuntu Security Proposed PPA.
Changed in libseccomp (Ubuntu Focal): | |
assignee: | nobody → Alex Murray (alexmurray) |
Changed in libseccomp (Ubuntu Bionic): | |
assignee: | nobody → Alex Murray (alexmurray) |
Changed in libseccomp (Ubuntu Xenial): | |
assignee: | nobody → Alex Murray (alexmurray) |
Changed in libseccomp (Ubuntu Hirsute): | |
status: | New → Fix Released |
Changed in libseccomp (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Changed in libseccomp (Ubuntu Focal): | |
importance: | Undecided → Medium |
Changed in libseccomp (Ubuntu Groovy): | |
importance: | Undecided → Medium |
Changed in libseccomp (Ubuntu Hirsute): | |
importance: | Undecided → Medium |
Changed in libseccomp (Ubuntu Bionic): | |
importance: | Undecided → Medium |
Changed in libseccomp (Ubuntu Xenial): | |
status: | Confirmed → In Progress |
Changed in libseccomp (Ubuntu Bionic): | |
status: | Confirmed → In Progress |
Changed in libseccomp (Ubuntu Focal): | |
status: | Confirmed → In Progress |
Changed in libseccomp (Ubuntu Groovy): | |
status: | Confirmed → In Progress |
Changed in systemd (Ubuntu Xenial): | |
status: | Invalid → Won't Fix |
Actually, I recommend not looking at 2.5.0 or master until https:/ /github. com/seccomp/ libseccomp/ issues/ 273 is fixed! Definitely a security issue.