linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Luis R. Rodriguez" <mcgrof@suse.com>
To: Andy Lutomirski <luto@amacapital.net>
Cc: David Howells <dhowells@redhat.com>,
	Andy Lutomirski <luto@kernel.org>,
	Rusty Russell <rusty@rustcorp.com.au>,
	Michal Marek <mmarek@suse.cz>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	keyrings@linux-nfs.org,
	Dmitry Kasatkin <dmitry.kasatkin@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Seth Forshee <seth.forshee@canonical.com>,
	LSM List <linux-security-module@vger.kernel.org>,
	David Woodhouse <dwmw2@infradead.org>
Subject: Re: [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures [ver #4]
Date: Fri, 22 May 2015 01:01:05 +0200	[thread overview]
Message-ID: <20150521230105.GL23057@wotan.suse.de> (raw)
In-Reply-To: <CALCETrV70hso2y=oJFSaQoaxtfThsCa31EeNfWLdMA36kBXbAg@mail.gmail.com>

On Thu, May 21, 2015 at 03:47:49PM -0700, Andy Lutomirski wrote:
> On Thu, May 21, 2015 at 3:31 PM, Luis R. Rodriguez <mcgrof@suse.com> wrote:
> >
> > Well as good as you are in 10 years we'll have better ones. So when
> > module signature went into the kernel the real expectation should have
> > been:
> >
> > This code looks good now but is going to be complete shit and
> > breakable a few years from now.
> >
> > Hence my first implicit and now explicit claims on dog and pony shows.
> > Best thing we can do IMHO is to just allow us to replace stupid human
> > code with better human code later, and eventually hopefully better AI
> > code, and so on. Since you don't have time for a real replacement
> > maybe what we can do is at least document / target / agree for what
> > pipe dream we want and shoot for it with time. Hopefully folks will
> > find time to implement it.
> 
> I disagree.  I'm a firm believer in security proofs.  While I'm not
> trained in formal crypto proofs, I can sketch out a proof of why a
> system that properly tags its signatures is secure against a
> reasonable threat model.  I can also show why that proof wouldn't work
> for a scheme without tags, and I can demonstrate the actual weakness
> in a scheme without tags.
> 
> In ten years, the only reason a scheme that I say looks good would be
> because (a) I screwed up, (b) an underlying assumption is wrong, or
> (c) the implementation is subtly wrong.  In particular, it won't fail
> because I'm insufficiently clever.
> 
> A real professional expert would be less likely to screw up.
> 
> (For reference, I wrote an actual doctoral thesis involving crypto.)

OK, I think what I mentioned still holds:

these premises must hold true for a period of time, and provided
you have all information. You cannot have all the information, so
the "threat model" depends on the reviewer, and the information they
have access to. So, still its still a dog and pony show, at least
a temporal one or one with a set of clauses.

> > In the meantime should that block current dog and pony show trading? I
> > don't think so.
> 
> Yes, since I can demonstrate the actual weakness without tags,

But you don't want to do the work to provide a better replacement?

> and
> crypto is notoriously hard to fix once done poorly and there's a great
> history of obviously-theoretically-weak systems being meaningfully
> attacked in the real world.  See, for example, every single old
> SSL/TLS cipher.  (And yes, the crypto community knew what was wrong in
> theory and how to fix it when the protocol was designed.  People just
> didn't pay attention.)

Its a fair argument, but still -- we have the vaporware problem.

  Luis

  reply	other threads:[~2015-05-21 23:01 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-15 12:35 [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures [ver #4] David Howells
2015-05-15 12:35 ` [PATCH 1/8] X.509: Extract both parts of the AuthorityKeyIdentifier " David Howells
2015-05-15 12:35 ` [PATCH 2/8] X.509: Support X.509 lookup by Issuer+Serial form " David Howells
2015-05-15 12:35 ` [PATCH 3/8] PKCS#7: Allow detached data to be supplied for signature checking purposes " David Howells
2015-05-15 12:35 ` [PATCH 4/8] MODSIGN: Provide a utility to append a PKCS#7 signature to a module " David Howells
2015-05-20  0:50   ` Andy Lutomirski
2015-05-20 13:14   ` David Howells
2015-05-20 16:00     ` Andy Lutomirski
2015-05-15 12:36 ` [PATCH 5/8] MODSIGN: Use PKCS#7 messages as module signatures " David Howells
2015-05-15 12:36 ` [PATCH 6/8] sign-file: Add option to only create signature file " David Howells
2015-05-15 12:36 ` [PATCH 7/8] system_keyring.c doesn't need to #include module-internal.h " David Howells
2015-05-15 12:36 ` [PATCH 8/8] MODSIGN: Extract the blob PKCS#7 signature verifier from module signing " David Howells
2015-05-15 13:46 ` [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures " David Woodhouse
2015-05-15 16:52 ` [PATCH 1/4] modsign: Abort modules_install when signing fails David Woodhouse
2015-05-19  1:29   ` Mimi Zohar
2015-05-19  6:40     ` Woodhouse, David
2015-05-19 11:45       ` Mimi Zohar
2015-05-19 12:57         ` Woodhouse, David
2015-05-19 13:54           ` Mimi Zohar
2015-05-15 16:53 ` [PATCH 2/4] modsign: Allow external signing key to be specified David Woodhouse
2015-05-15 16:53 ` [PATCH 3/4] modsign: Allow password to be specified for signing key David Woodhouse
2015-05-19  1:37   ` Mimi Zohar
2015-05-15 16:54 ` [PATCH 4/4] modsign: Allow signing key to be PKCS#11 David Woodhouse
2015-05-15 19:07 ` sign-file and detached PKCS#7 firmware signatures David Howells
2015-05-18 23:13   ` Luis R. Rodriguez
2015-05-19  9:25   ` David Howells
2015-05-19 16:19     ` Luis R. Rodriguez
2015-05-19 16:48     ` David Howells
2015-05-19 18:21       ` Luis R. Rodriguez
2015-05-19 18:35       ` Luis R. Rodriguez
2015-05-19 18:47       ` David Howells
2015-05-19 20:12         ` Luis R. Rodriguez
2015-05-19 20:29         ` David Howells
2015-05-15 22:51 ` [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures [ver #4] Rusty Russell
2015-05-18 12:43 ` [PATCH 4/4] modsign: Allow signing key to be PKCS#11 David Howells
2015-05-19 14:45 ` [PATCH 9/8] modsign: Abort modules_install when signing fails David Woodhouse
2015-05-19 14:45 ` [PATCH 10/8] modsign: Allow password to be specified for signing key David Woodhouse
2015-05-19 15:50   ` Petko Manolov
2015-05-19 16:15     ` David Woodhouse
2015-05-19 16:34       ` Petko Manolov
2015-05-19 18:39   ` Mimi Zohar
2015-05-19 18:48   ` David Howells
2015-05-19 19:14     ` Mimi Zohar
2015-05-19 20:04       ` David Woodhouse
2015-05-19 14:46 ` [PATCH 11/8] modsign: Allow signing key to be PKCS#11 David Woodhouse
2015-05-19 14:46 ` [PATCH 12/8] modsign: Allow external signing key to be specified David Woodhouse
2015-05-19 14:47 ` [PATCH 13/8] modsign: Extract signing cert from CONFIG_MODULE_SIG_KEY if needed David Woodhouse
2015-05-19 15:36 ` [PATCH 10/8] modsign: Allow password to be specified for signing key David Howells
2015-05-20  0:36 ` [PATCH 0/8] MODSIGN: Use PKCS#7 for module signatures [ver #4] Andy Lutomirski
2015-05-20 13:36 ` David Howells
2015-05-20 15:56   ` Andy Lutomirski
2015-05-20 16:21     ` Petko Manolov
2015-05-20 16:41       ` Andy Lutomirski
2015-05-20 16:55         ` Petko Manolov
2015-05-21 21:38       ` Luis R. Rodriguez
2015-05-21 21:44         ` Andy Lutomirski
2015-05-21 21:59           ` Luis R. Rodriguez
2015-05-21 22:06             ` Andy Lutomirski
2015-05-21 22:16               ` Luis R. Rodriguez
2015-05-21 22:24                 ` Andy Lutomirski
2015-05-21 22:31                   ` Luis R. Rodriguez
2015-05-21 22:47                     ` Andy Lutomirski
2015-05-21 23:01                       ` Luis R. Rodriguez [this message]
2015-05-21 23:09                         ` Andy Lutomirski
2015-05-22  7:56                         ` David Howells
2015-05-22 12:42                           ` Mimi Zohar
2015-05-22  7:49         ` David Howells
2015-05-22  7:48       ` David Howells
2015-05-22 12:28         ` Mimi Zohar
2015-05-24 10:52           ` Petko Manolov
2015-05-21 13:59   ` David Howells

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=20150521230105.GL23057@wotan.suse.de \
    --to=mcgrof@suse.com \
    --cc=dhowells@redhat.com \
    --cc=dmitry.kasatkin@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=keyrings@linux-nfs.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=luto@kernel.org \
    --cc=mjg59@srcf.ucam.org \
    --cc=mmarek@suse.cz \
    --cc=rusty@rustcorp.com.au \
    --cc=seth.forshee@canonical.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).