Wednesday, December 12, 2007

[NT] Vulnerability in Message Queuing Allows Code Execution (MS07-065)

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

The SecuriTeam alerts list - Free, Accurate, Independent.

Get your security news from a reliable source.
http://www.securiteam.com/mailinglist.html


- - - - - - - - -

Vulnerability in Message Queuing Allows Code Execution (MS07-065)
------------------------------------------------------------------------


SUMMARY

This important security update resolves a privately reported vulnerability
in Message Queuing Service (MSMQ) that could allow remote code execution
in implementations on Microsoft Windows 2000 Server, or elevation of
privilege in implementations on Microsoft Windows 2000 Professional and
Windows XP.

An attacker must have valid logon credentials to exploit the elevation of
privilege vulnerability on Microsoft Windows 2000 Professional and Windows
XP. An attacker could then install programs; view, change, or delete data;
or create new accounts.

DETAILS

Affected Software:
* Microsoft Windows 2000 Server Service Pack 4 and Microsoft Windows 2000
Professional Service Pack 4
* Windows XP Service Pack 2

Non Affected Software:
* Windows XP Professional x64 Edition and Windows XP Professional x64
Edition Service Pack 2
* Windows Server 2003 Service Pack 1 and Windows Server 2003 Service Pack
2
* Windows Server 2003 x64 Edition and Windows Server 2003 x64 Edition
Service Pack 2
* Windows Server 2003 with SP1 for Itanium-based Systems and Windows
Server 2003 with SP2 for Itanium-based Systems
* Windows Vista
* Windows Vista x64 Edition

Message Queuing Service Remote Code Execution Vulnerability -
CVE-2007-3039:
A remote code execution vulnerability exists in the Message Queuing
Service when it incorrectly validates input strings before passing the
strings to a buffer. An attacker could exploit the vulnerability by
constructing a specially crafted MSMQ message that could allow remote code
execution in a remote attack scenario on Microsoft Windows 2000 Server and
a local elevation of privilege in a local scenario on Microsoft Windows
2000 Professional and Windows XP. An attacker who successfully exploited
this vulnerability could take complete control of an affected system.

To view this vulnerability as a standard entry in the Common
Vulnerabilities and Exposures list, see
<http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2007-3039>
CVE-2007-3039.

Mitigating Factors for Message Queuing Service Remote Code Execution
Vulnerability - CVE-2007-3039:
Mitigation refers to a setting, common configuration, or general
best-practice, existing in a default state, that could reduce the severity
of exploitation of a vulnerability. The following mitigating factors may
be helpful in your situation:

* An attacker must have valid logon credentials in order to exploit this
vulnerability on Microsoft 2000 Professional and Windows XP.

* By default, the Message Queuing component is not installed on any
affected operating system edition and can only be enabled by a user with
administrative privileges. Only customers who manually install the Message
Queuing component are likely to be vulnerable to this issue.

* For customers that require the Message Queuing component, firewall best
practices and standard default firewall configurations can help protect
networks from attacks that originate outside the enterprise perimeter.
Best practices recommend that systems that are connected to the Internet
have a minimal number of ports exposed.

Workarounds for Message Queuing Service Remote Code Execution
Vulnerability - CVE-2007-3039:
Workaround refers to a setting or configuration change that does not
correct the underlying vulnerability but would help block known attack
vectors before you apply the update. Microsoft has tested the following
workarounds and states in the discussion whether a workaround reduces
functionality:

* Block the following at the firewall:

* All unsolicited inbound traffic on ports greater than 1024
* Any other specifically configured RPC port

These ports are used to initiate a connection with RPC. Blocking them at
the firewall will help prevent systems that are behind that firewall from
attempts to exploit this vulnerability. Also, make sure that you block any
other specifically configured RPC port on the remote system. Microsoft
recommends that you block all unsolicited inbound communication from the
Internet to help prevent attacks that may use other ports. For more
information about the ports that RPC uses, visit
<http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/cnet/cnfc_por_gdqc.mspx?mfr=true> TCP and UDP Port Assignments.

* Disable the Message Queuing Service:

* Interactively:

Disabling the Message Queuing service will help protect the affected
system from attempts to exploit this vulnerability. To disable the Message
Queuing service, follow these steps:
1. Click Start, and then click Control Panel. Alternatively, point to
Settings, and then click Control Panel.
2. Double-click Administrative Tools. Alternatively, click Switch to
Classic View and then double-click Administrative Tools.
3. Double-click Services.
4. Double-click Message Queuing.
5. In the Startup type list, click Disabled.
6. Click Stop, and then click OK.

You can also stop and disable the MSMQ service by using the following
command at the command prompt (available in Windows XP and in the
Microsoft Windows 2000 Resource Kit):
sc stop MSMQ & sc config MSMQ start= disabled

* By Group Policy:

Disable the Message Queuing service by using the Group Policy settings.
You can disable the startup of this service at either the local, site,
domain, or organizational-unit level by using Group Policy object
functionality in Microsoft Windows 2000 domain environments or in Windows
Server 2003 domain environments.

Note: You may also review the Windows Server 2003 Security Guide. This
guide includes information about how to disable services.

For more information about Group Policy, visit the following Microsoft Web
sites:
*
<http://www.microsoft.com/technet/prodtechnol/windowsserver2003/technologies/directory/activedirectory/stepbystep/gpfeat.mspx> Step-by-Step Guide to Understanding the Group Policy Feature Set
* <http://technet.microsoft.com/en-us/library/bb742376.aspx> Windows
2000 Group Policy
*
<http://www.microsoft.com/windowsserver2003/technologies/management/grouppolicy/default.mspx> Group Policy in Windows Server 2003

How to undo the workaround: Use the steps above to set the Startup Type to
Automatic and start the service.

FAQ for Message Queuing Service Code Execution Vulnerability -
CVE-2007-3039:
What is the scope of the vulnerability?
This is a remote code execution vulnerability for Microsoft Windows 2000
Server and a local elevation of privilege vulnerability for Microsoft
Windows 2000 Professional and Windows XP. An attacker who successfully
exploited this vulnerability could take complete control of an affected
system remotely on Microsoft Windows 2000 Server and locally on Microsoft
Windows 2000 Professional and Windows XP. An attacker could then install
programs or view, change, or delete data.

What causes the vulnerability?
The MSMQ service improperly checks input strings before passing them to
the buffer. As a result, an unchecked buffer overrun in the service code
is possible, allowing an attacker to execute arbitrary code in the context
of LOCAL SYSTEM.

What is Message Queuing?
Microsoft Message Queuing technology enables applications that are running
at different times to communicate across heterogeneous networks and across
systems that may be temporarily offline. Applications send messages to
queues and read messages from queues. Message Queuing provides guaranteed
message delivery, efficient routing, security, and priority-based
messaging. It can be used to implement solutions for both asynchronous and
synchronous messaging scenarios. For more information about Message
Queuing, see the Message Queuing product documentation.

What might an attacker use the vulnerability to do?
An attacker who successfully exploited this vulnerability could gain local
system rights which could allow remote code execution in implementations
on Microsoft Windows 2000 Server, or elevation of privilege in
implementations on Windows 2000 Professional and Windows XP. An attacker
could then install programs; view, change, or delete data; or create new
accounts with full user rights.

How could an attacker exploit the vulnerability?
To exploit this vulnerability locally on Microsoft 2000 Professional and
Windows XP, an attacker would first have to log on to the system. To
exploit this vulnerability remotely on Microsoft Windows 2000 Server, an
attacker would have to send specially crafted packets to the MSMQ service
that could exploit the vulnerability and gain complete control of the
affected system.

What systems are primarily at risk from the vulnerability?
Microsoft Windows 2000 and Windows XP systems that have the MSMQ service
enabled are the systems that are primarily at risk.

What does the update do?
The update removes the vulnerability by modifying the way that the MSMQ
service validates input strings before passing the strings to the
allocated buffer.

When this security bulletin was issued, had this vulnerability been
publicly disclosed?
No. Microsoft received information about this vulnerability through
responsible disclosure.

When this security bulletin was issued, had Microsoft received any reports
that this vulnerability was being exploited?
No. Microsoft had not received any information to indicate that this
vulnerability had been publicly used to attack customers and had not seen
any examples of proof of concept code published when this security
bulletin was originally issued.


ADDITIONAL INFORMATION

The information has been provided by Microsoft Security Bulletin MS07-065.
The original article can be found at:
<http://www.microsoft.com/technet/security/bulletin/ms07-065.mspx>

http://www.microsoft.com/technet/security/bulletin/ms07-065.mspx

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


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.

No comments:

Post a Comment