All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Mimi Zohar <zohar@linux.ibm.com>
Cc: Tushar Sugandhi <tusharsu@linux.microsoft.com>,
	stephen.smalley.work@gmail.com, casey@schaufler-ca.com,
	agk@redhat.com, snitzer@redhat.com, gmazyland@gmail.com,
	paul@paul-moore.com, tyhicks@linux.microsoft.com,
	sashal@kernel.org, jmorris@namei.org, nramas@linux.microsoft.com,
	linux-integrity@vger.kernel.org, selinux@vger.kernel.org,
	linux-security-module@vger.kernel.org,
	linux-kernel@vger.kernel.org, dm-devel@redhat.com
Subject: Re: [PATCH v6 0/8] IMA: support for measuring kernel integrity critical data
Date: Mon, 23 Nov 2020 18:18:00 +0100	[thread overview]
Message-ID: <20201123171800.GA6407@duo.ucw.cz> (raw)
In-Reply-To: <d82ad1cac36e948c904300548c64244c145589ee.camel@linux.ibm.com>

[-- Attachment #1: Type: text/plain, Size: 1533 bytes --]

Hi!

> > > >How is it supposed to be useful?
> > > >
> > > >I'm pretty sure there are critical data that are not measured by
> > > >proposed module... and that are written under normal circumstances.
> > > >
> > > The goal of this series is to introduce the IMA hook
> > > measure_critical_data() and the necessary policies to use it; and
> > > illustrate that use with one example (SELinux). It is not scalable to
> > > identify and update all the critical data sources to use the proposed
> > > module at once.
> > > 
> > > A piecemeal approach to add more critical data measurement in subsequent
> > > patches would be easy to implement and review.
> > 
> > Basically every other data structure in kernel is "critical" by your
> > definition, and you can't really measure them all; some of them change
> > rather often. Going piecemeal does not really help here.
> 
> Agreed, measuring data structures that change is not really applicable.
> However, measuring data structures that once initialized don't change,
> does make sense (similar concept to __ro_after_init).  The attestation
> server doesn't need to know anything about the measurement, other than
> more than a single measurement is indicative of a problem.

So, why not simply measure everything that is ro_after_init?

But... I really fail to see how this is useful. It is trivial to
"backdoor" kernel w/o modifying anything that is
ro_after_init. (Example: page tables).

								Pavel
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Pavel Machek <pavel@ucw.cz>
To: Mimi Zohar <zohar@linux.ibm.com>
Cc: sashal@kernel.org, paul@paul-moore.com, snitzer@redhat.com,
	nramas@linux.microsoft.com, selinux@vger.kernel.org,
	stephen.smalley.work@gmail.com, jmorris@namei.org,
	linux-kernel@vger.kernel.org, casey@schaufler-ca.com,
	linux-security-module@vger.kernel.org,
	tyhicks@linux.microsoft.com,
	Tushar Sugandhi <tusharsu@linux.microsoft.com>,
	linux-integrity@vger.kernel.org, dm-devel@redhat.com,
	gmazyland@gmail.com, agk@redhat.com
Subject: Re: [dm-devel] [PATCH v6 0/8] IMA: support for measuring kernel integrity critical data
Date: Mon, 23 Nov 2020 18:18:00 +0100	[thread overview]
Message-ID: <20201123171800.GA6407@duo.ucw.cz> (raw)
In-Reply-To: <d82ad1cac36e948c904300548c64244c145589ee.camel@linux.ibm.com>


[-- Attachment #1.1: Type: text/plain, Size: 1533 bytes --]

Hi!

> > > >How is it supposed to be useful?
> > > >
> > > >I'm pretty sure there are critical data that are not measured by
> > > >proposed module... and that are written under normal circumstances.
> > > >
> > > The goal of this series is to introduce the IMA hook
> > > measure_critical_data() and the necessary policies to use it; and
> > > illustrate that use with one example (SELinux). It is not scalable to
> > > identify and update all the critical data sources to use the proposed
> > > module at once.
> > > 
> > > A piecemeal approach to add more critical data measurement in subsequent
> > > patches would be easy to implement and review.
> > 
> > Basically every other data structure in kernel is "critical" by your
> > definition, and you can't really measure them all; some of them change
> > rather often. Going piecemeal does not really help here.
> 
> Agreed, measuring data structures that change is not really applicable.
> However, measuring data structures that once initialized don't change,
> does make sense (similar concept to __ro_after_init).  The attestation
> server doesn't need to know anything about the measurement, other than
> more than a single measurement is indicative of a problem.

So, why not simply measure everything that is ro_after_init?

But... I really fail to see how this is useful. It is trivial to
"backdoor" kernel w/o modifying anything that is
ro_after_init. (Example: page tables).

								Pavel
-- 
http://www.livejournal.com/~pavelmachek

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 93 bytes --]

--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

  reply	other threads:[~2020-11-23 17:18 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-19 23:26 [PATCH v6 0/8] IMA: support for measuring kernel integrity critical data Tushar Sugandhi
2020-11-19 23:26 ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 1/8] IMA: generalize keyring specific measurement constructs Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 2/8] IMA: add support to measure buffer data hash Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 3/8] IMA: define a hook to measure kernel integrity critical data Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 4/8] IMA: add policy rule to measure " Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 5/8] IMA: extend policy to add data sources as a critical data measurement constraint Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 6/8] IMA: add support to critical data hook to limit data sources for measurement Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-19 23:26 ` [PATCH v6 7/8] IMA: add a built-in policy rule for critical data measurement Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-20 14:30   ` Mimi Zohar
2020-11-20 14:30     ` [dm-devel] " Mimi Zohar
2020-11-20 23:33     ` Lakshmi Ramasubramanian
2020-11-20 23:33       ` [dm-devel] " Lakshmi Ramasubramanian
2020-11-19 23:26 ` [PATCH v6 8/8] selinux: measure state and hash of the policy using IMA Tushar Sugandhi
2020-11-19 23:26   ` [dm-devel] " Tushar Sugandhi
2020-11-20 15:49   ` Mimi Zohar
2020-11-20 15:49     ` [dm-devel] " Mimi Zohar
2020-11-20 23:40     ` Lakshmi Ramasubramanian
2020-11-20 23:40       ` [dm-devel] " Lakshmi Ramasubramanian
2020-11-21  2:05   ` James Morris
2020-11-21  2:05     ` [dm-devel] " James Morris
2020-11-23 19:37     ` Tushar Sugandhi
2020-11-23 19:37       ` [dm-devel] " Tushar Sugandhi
2020-11-20 12:46 ` [PATCH v6 0/8] IMA: support for measuring kernel integrity critical data Pavel Machek
2020-11-20 12:46   ` [dm-devel] " Pavel Machek
2020-11-22 20:53   ` Tushar Sugandhi
2020-11-22 20:53     ` [dm-devel] " Tushar Sugandhi
2020-11-22 21:00     ` Pavel Machek
2020-11-22 21:00       ` [dm-devel] " Pavel Machek
2020-11-23 13:41       ` Mimi Zohar
2020-11-23 13:41         ` [dm-devel] " Mimi Zohar
2020-11-23 17:18         ` Pavel Machek [this message]
2020-11-23 17:18           ` Pavel Machek
2020-11-23 19:49           ` Mimi Zohar
2020-11-23 19:49             ` [dm-devel] " Mimi Zohar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20201123171800.GA6407@duo.ucw.cz \
    --to=pavel@ucw.cz \
    --cc=agk@redhat.com \
    --cc=casey@schaufler-ca.com \
    --cc=dm-devel@redhat.com \
    --cc=gmazyland@gmail.com \
    --cc=jmorris@namei.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=nramas@linux.microsoft.com \
    --cc=paul@paul-moore.com \
    --cc=sashal@kernel.org \
    --cc=selinux@vger.kernel.org \
    --cc=snitzer@redhat.com \
    --cc=stephen.smalley.work@gmail.com \
    --cc=tusharsu@linux.microsoft.com \
    --cc=tyhicks@linux.microsoft.com \
    --cc=zohar@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.