[PATCH v6 12/13] integrity: Trust MOK keys if MokListTrustedRT found

Peter Jones pjones at redhat.com
Thu Sep 16 22:19:22 UTC 2021


On Tue, Sep 14, 2021 at 05:14:15PM -0400, Eric Snowberg wrote:
> +/*
> + * Try to load the MokListTrustedRT UEFI variable to see if we should trust
> + * the mok keys within the kernel. It is not an error if this variable
> + * does not exist.  If it does not exist, mok keys should not be trusted
> + * within the machine keyring.
> + */
> +static __init bool uefi_check_trust_mok_keys(void)
> +{
> +	efi_status_t status;
> +	unsigned int mtrust = 0;
> +	unsigned long size = sizeof(mtrust);
> +	efi_guid_t guid = EFI_SHIM_LOCK_GUID;
> +	u32 attr;
> +
> +	status = efi.get_variable(L"MokListTrustedRT", &guid, &attr, &size, &mtrust);

This should use efi_mokvar_entry_find("MokListTrustedRT") instead,
similar to how load_moklist_certs() does.  It's a *much* more reliable
mechanism.  We don't even need to fall back to checking for the
variable, as any version of shim that populates this supports the config
table method.

-- 
        Peter



More information about the Linux-security-module-archive mailing list