From: Vasiliy Kulikov <segoon@openwall.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>, Ingo Molnar <mingo@elte.hu>,
Andrew Morton <akpm@linux-foundation.org>,
James Morris <jmorris@namei.org>,
Namhyung Kim <namhyung@gmail.com>,
Greg Kroah-Hartman <gregkh@suse.de>,
kernel-hardening@lists.openwall.com,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] kernel: escape non-ASCII and control characters in printk()
Date: Fri, 1 Jul 2011 18:37:57 +0400 [thread overview]
Message-ID: <20110701143757.GA22567@albatros> (raw)
In-Reply-To: <BANLkTikyzxXgfFuwBRdDLvrRN4+fExMwWA@mail.gmail.com>
On Tue, Jun 28, 2011 at 12:30 -0700, Linus Torvalds wrote:
> And the most dangerous character seems to be one that you don't
> filter: the one we really do react to is '\n', and you could possibly
> make confusing log messages by embedding a newline in your string and
> then trying to make the rest look like something bad (say, an oops).
Btw, I've already outlined this problem in patch v1 comment, but
received no single comment on the suggested 2 possible ways:
http://www.openwall.com/lists/kernel-hardening/2011/06/22/2
"This patch does nothing with crafted "%s" data with '\n' inside. It
allows unprivileged user to craft arbitrary log messages via breaking
log lines boundaries. It is a bit tricky to fix it compatible way.
Limiting "%s" to one line in vscnprintf() would break legitimate users
of the multiline feature. Intoducing new "%S" format for single lines
makes little sense as there are tons of printk() calls that should be
already restricted to one line.
Proposals about '\n' inside of '%s" are welcome."
--
Vasiliy Kulikov
http://www.openwall.com - bringing security into open computing environments
next prev parent reply other threads:[~2011-07-01 14:38 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-23 15:21 [PATCH v2] kernel: escape non-ASCII and control characters in printk() Vasiliy Kulikov
2011-06-26 10:39 ` Ingo Molnar
2011-06-26 16:54 ` Vasiliy Kulikov
2011-06-26 18:26 ` Ingo Molnar
2011-06-26 19:06 ` Vasiliy Kulikov
2011-06-26 19:46 ` Ingo Molnar
2011-06-26 20:25 ` Vasiliy Kulikov
2011-06-26 22:01 ` Ingo Molnar
2011-06-27 8:36 ` Vasiliy Kulikov
2011-06-27 9:20 ` Vasiliy Kulikov
2011-06-27 9:40 ` Alan Cox
2011-06-27 18:38 ` Vasiliy Kulikov
2011-06-28 19:30 ` Linus Torvalds
2011-07-01 12:00 ` Ingo Molnar
2011-07-01 12:54 ` [kernel-hardening] " Vasiliy Kulikov
2011-07-01 14:20 ` Alan Cox
2011-07-02 16:42 ` Solar Designer
2011-07-02 19:33 ` Alan Cox
2011-07-02 20:34 ` Linus Torvalds
2011-07-01 14:37 ` Vasiliy Kulikov [this message]
2011-07-01 14:49 ` Alan Cox
2011-07-02 8:10 ` Vasiliy Kulikov
2011-07-02 15:08 ` Greg KH
2011-07-03 10:01 ` Vasiliy Kulikov
2011-07-03 11:42 ` Vasiliy Kulikov
2011-07-03 12:23 ` Alan Cox
2011-07-03 17:42 ` Linus Torvalds
2011-07-03 21:10 ` Alan Cox
2011-07-03 21:34 ` Linus Torvalds
2011-07-05 17:49 ` [kernel-hardening] " Vasiliy Kulikov
2011-07-01 12:12 ` Ingo Molnar
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=20110701143757.GA22567@albatros \
--to=segoon@openwall.com \
--cc=akpm@linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=gregkh@suse.de \
--cc=jmorris@namei.org \
--cc=kernel-hardening@lists.openwall.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=namhyung@gmail.com \
--cc=torvalds@linux-foundation.org \
/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