Re: X11 cookie hijacker

From: Casper Dik (casperat_private)
Date: Wed Nov 04 1998 - 01:16:45 PST

  • Next message: Perry E. Metzger: "Re: 10th anniversary of the Internet Worm"

    >Evil grin. It has already been told a million times: you are asking for
    >a problem if your /tmp/.X11-unix (and/or /tmp/.X11-pipe on Solaris) has
    >the permission bits allowing other users to play games with its contents.
    
    
    Please note that with the latest Solaris 2.5.1 patches (not sure about
    the Solaris 2.6 status of same) as well in Solaris 7, the permissions of
    /tmp/.X11-* are:
    
    drwxrwxr-x   2 root     root         104 Nov  3 08:59 /tmp/.X11-pipe/
    drwxrwxr-x   2 root     root         104 Nov  3 08:59 /tmp/.X11-unix/
    
    
    (This is no problem when Xsun is started by root through dtlogin;
    since it's only set-gid root, it's slightly trickier when started
    from the command line)
    
    
    >- set the sticky bit on /tmp/.X11-unix, make sure the bit stays there
    
            Unfortunately, some systems will allow users to remove such
            directories from /tmp (This is what happened when SV got their
            hands on the sticky bit and messed with it)
    
    >- make it world-unwritable, make sure it stays this way (this works if
    >  all your Xservers run with some extra privileges)
    
    This is what Sun has done (the servers already run set-uid root (x86) or
    set-gid root (SPARC) to access devices (x86) and change the priority of
    processes with the input focus (both)
    
    >- special Solaris option: put /tmp/.X11-{unix,pipe} into /etc/logindevperm
    >  (assumption: the user sitting at the console is the only who uses X)
    
    Ugh; that might not be such a hot idea; /etc/logindevperm will gladly
    follows symbolic links for chowns (has to for devices) and once you own
    /tmp/.X11-* you can remove it, replace it with a link and logout and back
    in again.
    
    >- abolish Unix-domain X11 sockets and use TCP only (giving up MIT-SHM etc)
    
    
    Which is really hard to do with X11R6.4 which will go through hoops to
    find out whether the hostname to connect to is local; and if so, use
    local transport.
    
    
    Casper
    



    This archive was generated by hypermail 2b30 : Fri Apr 13 2001 - 14:22:00 PDT