Commit 55ad2f8d340678397de5916b9cd960f17ebd7150

Authored by Miloslav Trmac
Committed by Al Viro
1 parent b3897f5671

audit: ignore terminating NUL in AUDIT_USER_TTY messages

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>
Cc: Eric Paris <eparis@redhat.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Steve Grubb <sgrubb@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Showing 1 changed file with 3 additions and 0 deletions Side-by-side Diff

... ... @@ -766,6 +766,9 @@
766 766  
767 767 audit_log_format(ab, " msg=");
768 768 size = nlmsg_len(nlh);
  769 + if (size > 0 &&
  770 + ((unsigned char *)data)[size - 1] == '\0')
  771 + size--;
769 772 audit_log_n_untrustedstring(ab, data, size);
770 773 }
771 774 audit_set_pid(ab, pid);