linux-security-module.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH v1 0/3] Expose Landlock domain IDs via pidfd
@ 2025-01-31 16:34 Mickaël Salaün
  2025-01-31 16:34 ` [RFC PATCH v1 1/3] landlock: Add landlock_read_domain_id() Mickaël Salaün
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Mickaël Salaün @ 2025-01-31 16:34 UTC (permalink / raw)
  To: Christian Brauner, Günther Noack
  Cc: Mickaël Salaün, Charles Zaffery, Daniel Burgener,
	Francis Laniel, James Morris, Jann Horn, Jeff Xu, Kees Cook,
	Luca Boccassi, Mikhail Ivanov, Praveen K Paladugu, Robert Salvet,
	Shervin Oloumi, Tyler Hicks, linux-kernel, linux-security-module

Hi,

Landlock enables users to create unprivileged nested security sandboxes
(i.e. domains).  Each of these domains get a unique ID, which is used to
identify and compare different domains.  With the audit support, these
IDs will be used in logs, but users also need a way to map these IDs to
processes and directly read domain IDs of arbitrary tasks.

pidfd is a reference to a task that enables users to interact with it
and read some of its properties with the PIDFD_GET_INFO IOCTL.  This
patch series extend this interface with two new properties:
PIDFD_INFO_LANDLOCK_LAST_DOMAIN and PIDFD_INFO_LANDLOCK_FIRST_DOMAIN.

Being able to read tasks' domain IDs is useful for telemetry, debugging, and
tests.  It enables users:
- to know if a task is well sandboxed;
- to know which tasks are part of the same sandbox;
- to map Landlock audit logs to running processes.

Furthermore, thanks to recvmsg(2)'s SCM_PIDFD, it is also possible to reliably
identify a peer's sandbox.

This patch series is based on the audit support patch series v5:
https://lore.kernel.org/all/20250108154338.1129069-1-mic@digikod.net/

I'll talk about this feature at FOSDEM:
https://fosdem.org/2025/schedule/event/fosdem-2025-6071-sandbox-ids-with-landlock/

Regards,

Mickaël Salaün (3):
  landlock: Add landlock_read_domain_id()
  pidfd: Extend PIDFD_GET_INFO with PIDFD_INFO_LANDLOCK_*_DOMAIN
  samples/landlock: Print domain ID

 fs/pidfs.c                   | 24 +++++++++++-
 include/linux/landlock.h     | 26 +++++++++++++
 include/uapi/linux/pidfd.h   |  4 ++
 samples/landlock/sandboxer.c | 29 +++++++++++++-
 security/landlock/Makefile   | 12 ++++--
 security/landlock/domain.c   |  2 -
 security/landlock/domain.h   |  8 ++--
 security/landlock/ruleset.c  |  2 +
 security/landlock/syscalls.c | 75 ++++++++++++++++++++++++++++++++++++
 9 files changed, 169 insertions(+), 13 deletions(-)
 create mode 100644 include/linux/landlock.h


base-commit: a4b76d5e6800121372b88c85628a7867a5fdc707
-- 
2.48.1


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

end of thread, other threads:[~2025-02-01 23:48 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-31 16:34 [RFC PATCH v1 0/3] Expose Landlock domain IDs via pidfd Mickaël Salaün
2025-01-31 16:34 ` [RFC PATCH v1 1/3] landlock: Add landlock_read_domain_id() Mickaël Salaün
2025-01-31 16:34 ` [RFC PATCH v1 2/3] pidfd: Extend PIDFD_GET_INFO with PIDFD_INFO_LANDLOCK_*_DOMAIN Mickaël Salaün
2025-01-31 19:02   ` Paul Moore
2025-02-01 10:28     ` Mickaël Salaün
2025-02-01 11:09       ` Christian Brauner
2025-02-01 23:48       ` Paul Moore
2025-01-31 16:34 ` [RFC PATCH v1 3/3] samples/landlock: Print domain ID Mickaël Salaün
2025-01-31 17:35 ` [RFC PATCH v1 0/3] Expose Landlock domain IDs via pidfd Mickaël Salaün

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).