mirror 2.9 hole

From: 3APA3A (wiseat_private)
Date: Tue Sep 28 1999 - 07:27:54 PDT

  • Next message: der Mouse: "Re: Redhat 6.0 Password Issues"

    Hello BUGTRAQat_private,
    
    mirror is a Perl script which is widely used for making copy of remote
    FTP site. It's included in FreeBSD packages. There are security holes,
    which   allows  overwrite  local  files  from  remote  ftp  site  with
    permissions  of  the  user  who uses mirror. Then retrieving directory
    listing  mirror  doesn't  check  filename or directory name to contain
    ".."  or  "\"  This  allows  to create or overwrite files in directory
    different from destination.
    
    To  simply  test  this  bug you can create " .." directory on your ftp
    site  and  mirror  your  site.  Mirror  will create temporary files in
    directory  one  level  higher  then  specifyed.  This way you couldn't
    overwrite  some useful information, but this may be used, for example,
    to fill out / directory (if mirror is ran from root).
    
    But  with putting little changes into you ftpd (for example making him
    change '\' to '/' on listings) you can force mirror to overwrite _any_
    file with permissions of mirror user then he mirrors your ftp site.
    
    
    Tested with:
    $ mirror -v
    $Id: mirror.pl,v 2.9 1998/05/29 19:01:07 lmjm Exp lmjm $
    
    
    
             /\_/\
            { . . }     |\
    +--oQQo->{ ^ }<-----+ \
    |Здесь был U Ученый Кот}
    +-------------o66o--+ /
                        |/
    Особую проблему составляет алкоголизм.  (Лем)
    



    This archive was generated by hypermail 2b30 : Fri Apr 13 2001 - 15:05:39 PDT