Re: [PATCH 2/7] integrity: IMA as an integrity service provider

From: Serge E. Hallyn
Date: Tue Feb 10 2009 - 15:51:02 EST


Quoting Pavel Machek (pavel@xxxxxxx):
> Hi!
>
> > --- /dev/null
> > +++ b/security/integrity/ima/Kconfig
> > @@ -0,0 +1,49 @@
> > +# IBM Integrity Measurement Architecture
> > +#
> > +config IMA
> > + bool "Integrity Measurement Architecture(IMA)"
> > + depends on ACPI
>
> Ugh?
>
> > + select SECURITYFS
> > + select CRYPTO
> > + select CRYPTO_HMAC
> > + select CRYPTO_MD5
> > + select CRYPTO_SHA1
> > + select TCG_TPM
> > + select TCG_TIS
> > + help
> > + The Trusted Computing Group(TCG) runtime Integrity
> > + Measurement Architecture(IMA) maintains a list of hash
> > + values of executables and other sensitive system files,
> > + as they are read or executed. If an attacker manages
> > + to change the contents of an important system file
> > + being measured, we can tell.
> > +
> > + If your system has a TPM chip, then IMA also maintains
> > + an aggregate integrity value over this list inside the
> > + TPM hardware, so that the TPM can prove to a third party
> > + whether or not critical system files have been modified.
>
> Sound like 'well use this so people with homegrown distros can't
> access our e-shop'...

That would be tough to pull off, as they would have to have your
TPM's public key stored.

So a small shop could pull this off for their employees, I suppose, but
it's not practical for say a bank to do. (And if they did, well, I'll
bank elsewhere.)

> > + Read <http://www.usenix.org/events/sec04/tech/sailer.html>
> > + to learn more about IMA.
>
> Maybe some basic docs should go into Documentation?
>
> > +config IMA_MEASURE_PCR_IDX
> > + int
> > + depends on IMA
> > + range 8 14
> > + default 10
> > + help
> > + IMA_MEASURE_PCR_IDX determines the TPM PCR register index
> > + that IMA uses to maintain the integrity aggregate of the
> > + measurement list. If unsure, use the default 10.
>
> This is quite ugly. How do you expect enduser to get this right?
> How do you expect distro to get it right for all users?

I'd asked about this before, and here's how I understood it:

End-users aren't expected to get this right - note that it's
hidden. If it changes, then that will be because some other
software using TPM (like trousers) uses 10, so it will be
changed in the upstream kernel for everyone.

-serge
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/