From: Kees Cook <keescook@chromium.org>
To: Julia Lawall <julia.lawall@lip6.fr>
Cc: Vaishali Thakkar <vaishali.thakkar@oracle.com>,
Pengfei Wang <wpengfeinudt@gmail.com>,
Vaishali Thakkar <vthakkar1994@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
Michal Marek <mmarek@suse.com>,
cocci@systeme.lip6.fr
Subject: Re: [Cocci] [PATCH] coccicheck: add a test for repeat copy_from_user
Date: Mon, 9 Jan 2017 14:02:17 -0800 [thread overview]
Message-ID: <CAGXu5j+gxav6P1+Wxm-9PFLWqQQBym6eXOY3NoZr2EnZ4bn6Pw@mail.gmail.com> (raw)
In-Reply-To: <CAGXu5jLBcx_eOBSHnwOVdBKOaZ8TTN2u-n-=+dR4Pf06NAiBfQ@mail.gmail.com>
On Mon, Jan 9, 2017 at 12:56 PM, Kees Cook <keescook@chromium.org> wrote:
> On Mon, Jan 9, 2017 at 11:08 AM, Julia Lawall <julia.lawall@lip6.fr> wrote:
>>
>> On Mon, 9 Jan 2017, Vaishali Thakkar wrote:
>>
>>> Here, may be we should add few more lines from Pengfei's
>>> script to avoid th potential FPs.
>>
>> Which lines (I don't have it handy)?
>
> I'm going to compare
> https://github.com/wpengfei/double_fetch_cocci/blob/master/pattern_match_linux.cocci
> to my original one, add your improvements and see what I get...
Okay, I finally had time to look at this. Pengfei added two other
logical cases that should be checked for, IIUC:
1) destination alias checking (with assignment either before or after
the first copy_from_user):
struct thing object;
struct thing *pointer = &object;
copy_from_user(..., &object);
...
copy_from_user(..., pointer);
2) field writes (via . or ->, instead of short writes):
struct thing object;
copy_from_user(..., &object.field);
...
copy_from_user(..., &object);
It'd probably better to convert Pengfei's into being able to run under
the coccicheck target.
-Kees
--
Kees Cook
Nexus Security
next prev parent reply other threads:[~2017-01-09 22:02 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-26 22:24 [PATCH] coccicheck: add a test for repeat copy_from_user Kees Cook
2016-04-26 22:30 ` Kees Cook
2016-12-27 18:21 ` Julia Lawall
2017-01-09 17:05 ` [Cocci] " Vaishali Thakkar
2017-01-09 19:08 ` Julia Lawall
2017-01-09 20:56 ` Kees Cook
2017-01-09 22:02 ` Kees Cook [this message]
[not found] ` <05AE3A59-EF48-4FFF-A028-0204B2E56DEB@gmail.com>
2017-01-10 8:40 ` Vaishali Thakkar
[not found] ` <19545870-5238-4BEB-AF1E-741BA97A6AA2@gmail.com>
2017-01-10 17:46 ` Vaishali Thakkar
[not found] ` <76D088EA-3C7E-4766-A237-3FA1F0767C1A@gmail.com>
2017-01-11 6:12 ` Julia Lawall
2017-01-11 13:44 ` Pengfei Wang
2017-01-10 19:16 ` Kees Cook
2017-01-10 19:15 ` Kees Cook
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=CAGXu5j+gxav6P1+Wxm-9PFLWqQQBym6eXOY3NoZr2EnZ4bn6Pw@mail.gmail.com \
--to=keescook@chromium.org \
--cc=cocci@systeme.lip6.fr \
--cc=julia.lawall@lip6.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=mmarek@suse.com \
--cc=vaishali.thakkar@oracle.com \
--cc=vthakkar1994@gmail.com \
--cc=wpengfeinudt@gmail.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).