From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Luca Boccassi <luca.boccassi@gmail.com>
Cc: Paul Moore <paul@paul-moore.com>,
Christian Brauner <brauner@kernel.org>,
Fan Wu <wufan@kernel.org>, Manuel Huber <manuelh@nvidia.com>,
David Howells <dhowells@redhat.com>,
Jarkko Sakkinen <jarkko@kernel.org>,
Andrew Halaney <andrew@amutable.com>,
James Morris <jmorris@namei.org>,
"Serge E. Hallyn" <serge@hallyn.com>,
linux-security-module@vger.kernel.org, keyrings@vger.kernel.org,
linux-kernel@vger.kernel.org, kexec@lists.infradead.org,
Mike Rapoport <rppt@kernel.org>,
Pasha Tatashin <pasha.tatashin@soleen.com>,
Pratyush Yadav <pratyush@kernel.org>,
Alexander Graf <graf@amazon.com>
Subject: Re: [PATCH RFC 1/4] ipe: add the .ipe policy keyring
Date: Wed, 28 Oct 2026 12:14:36 -0400 [thread overview]
Message-ID: <ac7d9af1336f86baf2dfbe417944298a3ff6edbb.camel@HansenPartnership.com> (raw)
In-Reply-To: <CAMw=ZnQU0PRSn5gh-QNT+GuKroQaRsRUUMDB=rM=LSX+=h-JkQ@mail.gmail.com>
On Wed, 2026-10-28 at 14:26 +0000, Luca Boccassi wrote:
> On Wed, 28 Oct 2026 at 12:42, James Bottomley
> <James.Bottomley@hansenpartnership.com> wrote:
> >
> > On Tue, 2026-10-27 at 11:07 +0000, Luca Boccassi wrote:
> > > On Mon, 26 Oct 2026 at 12:57, <luca.boccassi@gmail.com> wrote:
> > > > I think there is one issue with the design pattern where
> > > > keyrings are set up in userspace, that I have mentioned a few
> > > > times already and I got documented in
> > > > https://www.freedesktop.org/software/systemd/man/latest/systemd-system.conf.html#RestrictFileSystemAccess=
> > > > as well: they are trivially bypassable if the kernel has kexec
> > > > enabled and it is signed. The security model relies on the
> > > > "good" userspace running first, but if kexec is enabled,
> > > > there's no guarantee that will be the case, and as far as I can
> > > > tell it gives root trivial capability of overriding it and
> > > > extending the trust chain as the attacker wishes.
> >
> > The attack sounds doable, but it also seems to be exploiting a gap
> > in kexec policy: kexec is supposed to behave like a warm reboot so
> > if boot policy requires UKI only then so should kexec and that
> > sounds like the thing that should be fixed.
>
> I don't think that's the case though, even before KHO/LUO existed,
> kexec has never really behaved like a warm reboot, as for example
> boot services do not run again, so various chains of trusts are not
> reset (eg: a bootloader might now be blocked so warm reboot would
> not work, but kexec would). And since KHO now exists, the difference
> is even greater, as more and more state is retained across the
> boundary.
But still, a lot of people are using it for servicing reboots so it
does sound as if it needs policy control.
> > What's the mechanism boot uses to ensure UKI only? So we can see if
> > it can be adopted to kexec.
>
> There isn't one, and I don't think there is correlation, as booting a
> UKI is not the only way to boot a system. Eg: this problem applies
> just as well to booting an arm system on uboot. So I really would not
> tie this to UKI or UEFI specifics, it's more generic.
Well here's the problem: I agree root could kexec to their own initrd,
but it looks like they could also properly install and reboot to it, so
it doesn't make that much sense to plug one hole without the other (and
when they both get plugged it does make sense to use a similar
mechanism).
Regards,
James
next prev parent reply other threads:[~2026-10-28 16:14 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-19 21:40 [PATCH RFC 0/4] IPE: add a dedicated policy keyring Manuel Huber via B4 Relay
2026-10-19 21:40 ` [PATCH RFC 1/4] ipe: add the .ipe " Manuel Huber via B4 Relay
2026-10-19 21:47 ` sashiko-bot
2026-10-19 21:52 ` Randy Dunlap
2026-10-19 23:15 ` Fan Wu
2026-10-21 13:54 ` Christian Brauner
2026-10-21 16:51 ` Paul Moore
2026-10-22 10:18 ` Christian Brauner
2026-10-22 17:18 ` Paul Moore
2026-10-26 12:57 ` luca.boccassi
2026-10-27 11:07 ` Luca Boccassi
2026-10-28 12:42 ` James Bottomley
2026-10-28 14:26 ` Luca Boccassi
2026-10-28 16:14 ` James Bottomley [this message]
2026-10-28 19:03 ` Luca Boccassi
2026-10-22 18:01 ` Manuel Huber
2026-10-22 20:25 ` Fan Wu
2026-10-23 11:59 ` Christian Brauner
2026-10-27 20:12 ` Manuel Huber
2026-10-27 20:51 ` Fan Wu
2026-10-19 21:40 ` [PATCH RFC 2/4] keys: add KEY_SPEC_IPE_KEYRING Manuel Huber via B4 Relay
2026-10-19 21:50 ` sashiko-bot
2026-10-19 23:24 ` Fan Wu
2026-10-21 13:51 ` Christian Brauner
2026-10-19 21:40 ` [PATCH RFC 3/4] Documentation: ipe: document the IPE keyring Manuel Huber via B4 Relay
2026-10-19 21:45 ` sashiko-bot
2026-10-19 21:40 ` [PATCH RFC 4/4] selftests/ipe: test the IPE policy keyring Manuel Huber via B4 Relay
2026-10-19 21:57 ` sashiko-bot
2026-10-19 23:28 ` Fan Wu
2026-10-22 17:22 ` Manuel Huber
2026-10-19 21:54 ` [PATCH RFC 0/4] IPE: add a dedicated " Jarkko Sakkinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ac7d9af1336f86baf2dfbe417944298a3ff6edbb.camel@HansenPartnership.com \
--to=james.bottomley@hansenpartnership.com \
--cc=andrew@amutable.com \
--cc=brauner@kernel.org \
--cc=dhowells@redhat.com \
--cc=graf@amazon.com \
--cc=jarkko@kernel.org \
--cc=jmorris@namei.org \
--cc=kexec@lists.infradead.org \
--cc=keyrings@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=luca.boccassi@gmail.com \
--cc=manuelh@nvidia.com \
--cc=pasha.tatashin@soleen.com \
--cc=paul@paul-moore.com \
--cc=pratyush@kernel.org \
--cc=rppt@kernel.org \
--cc=serge@hallyn.com \
--cc=wufan@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox