On Thu Sep 5, 2024 at 6:25 PM EEST, Roberto Sassu wrote: > From: Roberto Sassu <roberto.sassu@xxxxxxxxxx> > > 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@xxxxxxxxxx> > --- > .../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