[RFC][PATCH v3 04/10] ima: Add digest_cache_measure/appraise boot-time built-in policies
Jarkko Sakkinen
jarkko at kernel.org
Fri Sep 6 09:45:02 UTC 2024
On Thu Sep 5, 2024 at 6:25 PM EEST, Roberto Sassu wrote:
> From: Roberto Sassu <roberto.sassu at huawei.com>
>
> Specify the 'digest_cache_measure' boot-time policy with 'ima_policy=' in
> the kernel command line to add the following rule at the beginning of the
> IMA policy, before other rules:
>
> measure func=DIGEST_LIST_CHECK pcr=12
>
> which will measure digest lists into PCR 12 (or the value in
> CONFIG_IMA_DIGEST_CACHE_MEASURE_PCR_IDX).
>
> Specify 'digest_cache_appraise' to add the following rule at the beginning,
> before other rules:
>
> appraise func=DIGEST_LIST_CHECK appraise_type=imasig|modsig
>
> which will appraise digest lists with IMA signatures or module-style
> appended signatures.
>
> Adding those rule at the beginning rather than at the end is necessary to
> ensure that digest lists are measured and appraised in the initial ram
> disk, which would be otherwise prevented by the dont_ rules.
>
> Signed-off-by: Roberto Sassu <roberto.sassu at huawei.com>
> ---
> .../admin-guide/kernel-parameters.txt | 10 +++++-
> security/integrity/ima/Kconfig | 10 ++++++
> security/integrity/ima/ima_policy.c | 35 +++++++++++++++++++
> 3 files changed, 54 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
> index 09126bb8cc9f..afaaf125a237 100644
> --- a/Documentation/admin-guide/kernel-parameters.txt
> +++ b/Documentation/admin-guide/kernel-parameters.txt
> @@ -2077,7 +2077,8 @@
> ima_policy= [IMA]
> The builtin policies to load during IMA setup.
> Format: "tcb | appraise_tcb | secure_boot |
> - fail_securely | critical_data"
> + fail_securely | critical_data |
> + digest_cache_measure | digest_cache_appraise"
>
> The "tcb" policy measures all programs exec'd, files
> mmap'd for exec, and all files opened with the read
> @@ -2099,6 +2100,13 @@
> The "critical_data" policy measures kernel integrity
> critical data.
>
> + The "digest_cache_measure" policy measures digest lists
> + into PCR 12 (can be changed with kernel config).
> +
> + The "digest_cache_appraise" policy appraises digest
> + lists with IMA signatures or module-style appended
> + signatures.
> +
> ima_tcb [IMA] Deprecated. Use ima_policy= instead.
> Load a policy which meets the needs of the Trusted
> Computing Base. This means IMA will measure all
Must be updated as a separate commit as kernel-parameters.txt not
part of IMA. Consider it as a different subsystem in this context.
BR, Jarkko
More information about the Linux-security-module-archive
mailing list