Three BadBlue Vulnerabilities

From: Matthew Murphy (mattmurphyat_private)
Date: Fri Jul 12 2002 - 17:50:16 PDT

  • Next message: Chris Wysopal: "Re: MFC ISAPI Framework Buffer Overflow"

    Advisory: Working Resources BadBlue Multiple Vulnerabilities
    
    Issue: Three vulnerabilities; a denial of service, an insecurity in password
    storage, and a file disclosure vulnerability that could allow viewing of the
    password file.
    
    Risk: Critical
    
    SecurityFocus: "Working Resources BadBlue Invalid Get Request Denial of
    Service Vulnerability" describes one of these issues.
    
    Invalid GET Request Vulnerability
    ----------------------------------
    
    By sending a specially crafted GET request (specifically, one with no
    filename component) it is possible to cause the server to stop handling
    further requests.  The administrator must fully exit and manually restart
    the server to resume normal operation:
    
    GET HTTP/1.0
    
    Some servers withstood this, but balked at a similar request:
    
    GET  HTTP/1.0
    
    The only difference here being two spaces instead of one.
    
    Malformed Escaping Invalid Byte Vulnerability
    -----------------------------------------------
    
    By sending a malformed version of an HTTP-escaped NULL byte ("%00") BadBlue
    can be forced to return the source code of the desired file (or the binary
    content if the file is a binary).  This vulnerability can be used to read
    the contents of EXT.INI, which stores BadBlue's configuration data,
    including any users or Access Control Lists (ACLs) on the server and the
    passwords for any such data, as well.  The attacker simply appends ".%
    00.txt" to the filename.  BadBlue appears to strip spaces after
    HTTP-escaping, but does this after null-byte filtering has already been
    applied, causing this specially designed request to bypass the filter:
    
    GET /ext.ini.% 00.txt HTTP/1.0
    
    Will reveal the contents of the BadBlue configuration file.  If the server
    is configured to allow uploads, but not to allow read/execute access without
    a password, this can be used to break the password protection.
    
    Un-encrypted Password Vulnerability
    --------------------------------------
    
    This vulnerability involves the password storage in the aforementioned
    ext.ini file.  The vulnerability allows a local user with read access to the
    configuration file to see any passwords for secured resources or user
    accounts.  BadBlue stores the passwords with no encryption at all, meaning
    that simply opening the file is sufficient for password theft.  Combined
    with the above vulnerability, this enables a remote user to read the
    passwords of any BadBlue server.
    



    This archive was generated by hypermail 2b30 : Fri Jul 12 2002 - 18:45:52 PDT