[LTP] [PATCH 3/6] ima/ima_boot_aggregate: Fix extending PCRs beyond PCR 0-7
Mimi Zohar
zohar@linux.ibm.com
Mon Jan 14 21:32:06 CET 2019
On Mon, 2019-01-07 at 10:26 +0800, Jia Zhang wrote:
> The boot aggragate calculation should never touch PCRs beyond PCR 0-7,
> even a PCR extension really manipulates out-of-domain PCRs.
>
> Signed-off-by: Jia Zhang <zhang.jia@linux.alibaba.com>
Thanks!
Reviewed-by: Mimi Zohar <zohar@linux.ibm.com>
> ---
> .../security/integrity/ima/src/ima_boot_aggregate.c | 15 ++++++++++-----
> 1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/testcases/kernel/security/integrity/ima/src/ima_boot_aggregate.c b/testcases/kernel/security/integrity/ima/src/ima_boot_aggregate.c
> index 67be6a7..98893b9 100644
> --- a/testcases/kernel/security/integrity/ima/src/ima_boot_aggregate.c
> +++ b/testcases/kernel/security/integrity/ima/src/ima_boot_aggregate.c
> @@ -93,11 +93,16 @@ int main(int argc, char *argv[])
> printf("%03u ", event.header.pcr);
> display_sha1_digest(event.header.digest);
> }
> - SHA1_Init(&c);
> - SHA1_Update(&c, pcr[event.header.pcr].digest,
> - SHA_DIGEST_LENGTH);
> - SHA1_Update(&c, event.header.digest, SHA_DIGEST_LENGTH);
> - SHA1_Final(pcr[event.header.pcr].digest, &c);
> +
> + if (event.header.pcr < NUM_PCRS) {
> + SHA1_Init(&c);
> + SHA1_Update(&c, pcr[event.header.pcr].digest,
> + SHA_DIGEST_LENGTH);
> + SHA1_Update(&c, event.header.digest,
> + SHA_DIGEST_LENGTH);
> + SHA1_Final(pcr[event.header.pcr].digest, &c);
> + }
> +
> #if MAX_EVENT_DATA_SIZE < USHRT_MAX
> if (event.header.len > MAX_EVENT_DATA_SIZE) {
> printf("Error event too long\n");
More information about the ltp
mailing list