[lkml]   [1996]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: t bit and symlinks patch
Alan wrote:
> Nice idea. IMHO however the fix is to stop people writing applications
> that use /tmp for everything. /tmp was a great idea once upon a time. Its
> value nowdays is a bit questionable. Better that daemons use /var/run
> and applications $HOME/.files

I generally agree, its just that I think its hard to actually change
all those programs (and programmers) out there that use /tmp.

I also think that the change does in fact breath new life into
/tmp. Are there any /tmp related security holes that it doesn't fix?
There probably are some, its just that I can't think of them right

Anyway, I've updated my patch slightly. I changed it so that symlinks
owned by root are not affected. This is safe and means it breaks less

With my original patch I found that one thing broke on my mail
server. I had a link called "tridge" owned by root in /var/spool/mail
that pointed to /home/tridge/InBox (due to a transition in mailer
behaviour). I also had /var/spool/mail world writeable with the t bit
set. My original patch meant I couldn't run programs that referenced

This is now the active bit of the patch:

if (S_ISLNK(inode->i_mode) && (dir->i_mode & S_ISVTX) &&
inode->i_uid != 0 &&
current->fsuid != inode->i_uid) {
*res_inode = NULL;
return -EPERM;

the full patch is available from

Cheers, Andrew

 \ /
  Last update: 2005-03-22 13:37    [W:0.062 / U:4.252 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site