lkml.org 
[lkml]   [2010]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH v2] sanitize task->comm to avoid leaking escape codes
Date
> > This patch sanitizes task->comm to only contain printable characters
> > when it is set. Additionally, it redefines get_task_comm so that it is
> > more obvious when misused by callers (presently nothing was incorrectly
> > calling get_task_comm's unsafe use of strncpy).
>
> This is a regression for tools that correctly handle unmutilated data.
>
> > + /* sanitize non-printable characters */
> > + for (i = 0; buf[i] && i < (sizeof(tsk->comm) - 1); i++) {
> > + if (!isprint(buf[i]))
> > + tsk->comm[i] = '?';
>
> The kernel "isprint" isn't adequate for this. comm is set by the shell
> based on argv[0] usually which means that in normal situations it is a
> UTF-8 string.

Ah, I recall one use case. In past, some IBM folks talked about they
want to map Java thread name to prctl(PR_SET_NAME). In such case,
utf-8 name is very common.

So, I agree with you.

Thanks.





\
 
 \ /
  Last update: 2010-06-30 02:33    [W:0.167 / U:0.676 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site