mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Dawson Engler <engler@csl.Stanford.EDU>
To: viro@math.psu.edu (Alexander Viro)
Cc: linux-kernel@vger.kernel.org, mc@cs.Stanford.EDU
Subject: Re: [CHECKER] 9 potential copy_*_user bugs in 2.4.1
Date: Thu, 15 Mar 2001 23:36:23 -0800 (PST)	[thread overview]
Message-ID: <200103160736.XAA04682@csl.Stanford.EDU> (raw)
In-Reply-To: <Pine.GSO.4.21.0103152146550.10709-100000@weyl.math.psu.edu> from "Alexander Viro" at Mar 15, 2001 10:11:46 PM

> Looks like you've missed at least one place. Have you marked pointer
> arguments of syscalls as tainted? Path in question looks so:

In the exokernel param checker we do, but not for the one in linux ---
most of the pointers seemed to be devices, so I never added it.  Afer
your for bug example, I'll go hack the checker ;-)

> 	* if method's argument is ever tainted - all instances of that
> method have that argument tainted.
> 
> Is it possible to implement? The last rule may be tricky - we need to
> remember that field foo of structure bar has tainted nth argument and
> keep track of all functions assigned to foo, either by initialization
> or by direct assignment. Could that be done?

It should be.  We're using a trick similar to this one to build up
equivalence classes of interrupt handlers tracking which functions are
assigned to struct fields, or passed as the same parameter to a
function (request_irq being the prime example).  You'd expect that if 
any function passed/assigned to a given function/field is an 
interrupt handler then the rest are too.

The big win will be when checkers can get at global data structure
initializers.  From an outsiders view, it seems like most device
methods are registered that way.

Dawson
Dawson

  reply	other threads:[~2001-03-16  7:37 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-03-16  2:24 Dawson Engler
2001-03-16  3:11 ` Alexander Viro
2001-03-16  7:36   ` Dawson Engler [this message]
2001-03-16 13:05   ` Jamie Lokier
2001-03-16  5:54 ` Greg KH
2001-03-16  7:07 ` David S. Miller
2001-03-16 10:06 ` David Woodhouse
2001-03-16 19:26   ` Russell King
2001-03-16 20:56 ` Locking question (was: [CHECKER] 9 potential copy_*_user bugs in 2.4.1) Nigel Gamble
2001-03-20  8:42 ` [CHECKER] 9 potential copy_*_user bugs in 2.4.1 Rusty Russell

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=200103160736.XAA04682@csl.Stanford.EDU \
    --to=engler@csl.stanford.edu \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mc@cs.Stanford.EDU \
    --cc=viro@math.psu.edu \
    /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

all inboxes | Powered by JetHome®