[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1560378703.4578.91.camel@linux.ibm.com>
Date: Wed, 12 Jun 2019 18:31:43 -0400
From: Mimi Zohar <zohar@...ux.ibm.com>
To: Prakhar Srivastava <prsriva02@...il.com>,
linux-integrity@...r.kernel.org,
linux-security-module@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: roberto.sassu@...wei.com, vgoyal@...hat.com,
"Eric W. Biederman" <ebiederm@...ssion.com>,
Dave Young <dyoung@...hat.com>,
kexec <kexec@...ts.infradead.org>
Subject: Re: [PATCH V8 3/3] Call ima_kexec_cmdline to measure the cmdline
args
[Cc: kexec mailing list]
Hi Eric, Dave,
On Wed, 2019-06-12 at 15:15 -0700, Prakhar Srivastava wrote:
> During soft reboot(kexec_file_load) boot cmdline args
> are not measured.Thus the new kernel on load boots with
> an assumption of cold reboot.
>
> This patch makes a call to the ima hook ima_kexec_cmdline,
> added in "Define a new IMA hook to measure the boot command
> line arguments"
> to measure the boot cmdline args into the ima log.
>
> - call ima_kexec_cmdline from kexec_file_load.
> - move the call ima_add_kexec_buffer after the cmdline
> args have been measured.
>
> Signed-off-by: Prakhar Srivastava <prsriva02@...il.com>
Cc: Eric W. Biederman <ebiederm@...ssion.com>
Cc: Dave Young <dyoung@...hat.com>
Any chance we could get some Acks?
thanks,
Mimi
> ---
> kernel/kexec_file.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/kernel/kexec_file.c b/kernel/kexec_file.c
> index 072b6ee55e3f..b0c724e5d86c 100644
> --- a/kernel/kexec_file.c
> +++ b/kernel/kexec_file.c
> @@ -198,9 +198,6 @@ kimage_file_prepare_segments(struct kimage *image, int kernel_fd, int initrd_fd,
> return ret;
> image->kernel_buf_len = size;
>
> - /* IMA needs to pass the measurement list to the next kernel. */
> - ima_add_kexec_buffer(image);
> -
> /* Call arch image probe handlers */
> ret = arch_kexec_kernel_image_probe(image, image->kernel_buf,
> image->kernel_buf_len);
> @@ -241,8 +238,14 @@ kimage_file_prepare_segments(struct kimage *image, int kernel_fd, int initrd_fd,
> ret = -EINVAL;
> goto out;
> }
> +
> + ima_kexec_cmdline(image->cmdline_buf,
> + image->cmdline_buf_len - 1);
> }
>
> + /* IMA needs to pass the measurement list to the next kernel. */
> + ima_add_kexec_buffer(image);
> +
> /* Call arch image load handlers */
> ldata = arch_kexec_kernel_image_load(image);
>
Powered by blists - more mailing lists