All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Miloslav Trmač" <mitr@redhat.com>
To: Eric Paris <eparis@redhat.com>, viro <viro@zeniv.linux.org.uk>
Cc: akpm@linux-foundation.org, linux-audit@redhat.com,
	linux-kernel@vger.kernel.org
Subject: [PATCH] Audit: Ignore terminating NUL in AUDIT_USER_TTY messages
Date: Fri, 12 Sep 2008 21:59:04 +0200	[thread overview]
Message-ID: <1221249545.2702.10.camel@amilo> (raw)
In-Reply-To: <1221169719.2952.14.camel@localhost.localdomain>

From: Miloslav Trmac <mitr@redhat.com>

AUDIT_USER_TTY, like all other messages sent from user-space, is sent
NUL-terminated.  Unlike other user-space audit messages, which come only
from trusted sources, AUDIT_USER_TTY messages are processed using
audit_log_n_untrustedstring().

This patch modifies AUDIT_USER_TTY handling to ignore the trailing NUL
and use the "quoted_string" representation of the message if possible.

Signed-Off-By: Miloslav Trmac <mitr@redhat.com>
---
> Miloslav, this is also going to take care of nulls in the TTY_AUDIT_USER
> message from userspace.  Is it going to be common to have control
> characters on that code path as well?
AUDIT_USER_TTY will commonly contain spaces, but not always.  This patch
cleans the AUDIT_USER_TTY messages up a bit.

 kernel/audit.c |    3 +++
 1 file changed, 3 insertions(+)
diff --git a/kernel/audit.c b/kernel/audit.c
index ccb8d68..f3d88c4 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -763,6 +763,9 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
 
 				audit_log_format(ab, " msg=");
 				size = nlmsg_len(nlh);
+				if (size > 0 &&
+				    ((unsigned char *)data)[size - 1] == '\0')
+					size--;
 				audit_log_n_untrustedstring(ab, data, size);
 			}
 			audit_set_pid(ab, pid);

WARNING: multiple messages have this Message-ID (diff)
From: "Miloslav Trmač" <mitr@redhat.com>
To: Eric Paris <eparis@redhat.com>, viro <viro@zeniv.linux.org.uk>
Cc: linux-audit@redhat.com, linux-kernel@vger.kernel.org,
	jdennis@redhat.com, akpm@linux-foundation.org, sgrubb@redhat.com
Subject: [PATCH] Audit: Ignore terminating NUL in AUDIT_USER_TTY messages
Date: Fri, 12 Sep 2008 21:59:04 +0200	[thread overview]
Message-ID: <1221249545.2702.10.camel@amilo> (raw)
In-Reply-To: <1221169719.2952.14.camel@localhost.localdomain>

From: Miloslav Trmac <mitr@redhat.com>

AUDIT_USER_TTY, like all other messages sent from user-space, is sent
NUL-terminated.  Unlike other user-space audit messages, which come only
from trusted sources, AUDIT_USER_TTY messages are processed using
audit_log_n_untrustedstring().

This patch modifies AUDIT_USER_TTY handling to ignore the trailing NUL
and use the "quoted_string" representation of the message if possible.

Signed-Off-By: Miloslav Trmac <mitr@redhat.com>
---
> Miloslav, this is also going to take care of nulls in the TTY_AUDIT_USER
> message from userspace.  Is it going to be common to have control
> characters on that code path as well?
AUDIT_USER_TTY will commonly contain spaces, but not always.  This patch
cleans the AUDIT_USER_TTY messages up a bit.

 kernel/audit.c |    3 +++
 1 file changed, 3 insertions(+)
diff --git a/kernel/audit.c b/kernel/audit.c
index ccb8d68..f3d88c4 100644
--- a/kernel/audit.c
+++ b/kernel/audit.c
@@ -763,6 +763,9 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
 
 				audit_log_format(ab, " msg=");
 				size = nlmsg_len(nlh);
+				if (size > 0 &&
+				    ((unsigned char *)data)[size - 1] == '\0')
+					size--;
 				audit_log_n_untrustedstring(ab, data, size);
 			}
 			audit_set_pid(ab, pid);



  parent reply	other threads:[~2008-09-12 19:59 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-09-11 21:48 [PATCH] Audit: fix handling of 'strings' with NULL characters Eric Paris
2008-09-11 21:48 ` Eric Paris
2008-09-12  0:09 ` Andrew Morton
2008-09-12  0:09   ` Andrew Morton
2008-09-12 20:03   ` Miloslav Trmač
2008-09-12 20:03     ` Miloslav Trmač
2008-09-12 19:59 ` Miloslav Trmač [this message]
2008-09-12 19:59   ` [PATCH] Audit: Ignore terminating NUL in AUDIT_USER_TTY messages Miloslav Trmač

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=1221249545.2702.10.camel@amilo \
    --to=mitr@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=eparis@redhat.com \
    --cc=linux-audit@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=viro@zeniv.linux.org.uk \
    /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.