Re: [PATCH v5 6/7] tpm: ensure that the output of PCR read contains the correct digest size

From: Roberto Sassu
Date: Wed Nov 28 2018 - 03:40:50 EST


On 11/19/2018 5:07 PM, Jarkko Sakkinen wrote:
On Mon, Nov 19, 2018 at 04:09:34PM +0100, Roberto Sassu wrote:
On 11/19/2018 3:33 PM, Jarkko Sakkinen wrote:
On Mon, Nov 19, 2018 at 09:14:00AM +0100, Roberto Sassu wrote:
On 11/18/2018 8:32 AM, Jarkko Sakkinen wrote:
On Fri, Nov 16, 2018 at 05:06:48PM +0100, Roberto Sassu wrote:
On 11/16/2018 2:41 PM, Jarkko Sakkinen wrote:
On Wed, Nov 14, 2018 at 04:31:07PM +0100, Roberto Sassu wrote:
This patch protects against data corruption that could happen in the bus,
by checking that that the digest size returned by the TPM during a PCR read
matches the size of the algorithm passed to tpm2_pcr_read().

This check is performed after information about the PCR banks has been
retrieved.

Signed-off-by: Roberto Sassu <roberto.sassu@xxxxxxxxxx>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx

Missing fixes tag.

Before this patch set, tpm2_pcr_extend() always copied 20 bytes from the
output sent by the TPM.

Roberto

Aah, right, of course. Well the patch set is ATM somewhat broken because
this would require a fixes tag that points to a patch insdie the patch
set.

Probably good way to fix the issue is to just merge this with the
earlier commit.

Unfortunately, it is not possible. The exact digest size has been
introduced with patch 5/7.

I put this in simple terms: if I merge 5/7 the driver will be broken.
Any commit in the patch set should not leave the tree in broken state.

Patch 6/7 does not fix patch 5/7. The check in patch 6/7 is not done for
the PCR read performed by patch 5/7, because the digest sizes are not
yet available.

Ah, right. Point taken :-)

Should I keep CC: stable@xxxxxxxxxxxxxxx?

Roberto


/Jarkko


--
HUAWEI TECHNOLOGIES Duesseldorf GmbH, HRB 56063
Managing Director: Bo PENG, Jian LI, Yanli SHI