<<< Date Index >>>     <<< Thread Index >>>

Details for BID 19586



DB2 UDB - Handshake Protocol DoS Attack (BID 19586)

Background:
DB2 Universal Database (UDB)? is a popular database software package from IBM 
available for legacy platforms as well as open systems (Unix and Windows). 
Clients use a protocol called DRDA to communicate with the DB2 UDB server. 
Protocol messages are used for session setup, authentication and data transfer.

Scope:
Imperva?s Application Defense Center is conducting an extensive research of the 
DRDA protocol and its implementation. As part of the research the team has 
identified vulnerability in DB2 UDB?s connection establishment mechanism that 
allows an attacker to terminate the UDB service, effectively denying service 
from all database users.

Findings:
An attacker can send a specially crafted ACCSEC command during the handshake 
process with the server, causing the server process to crash.

Details:
A simple connection establishment process to the DB2 UDB server with a 
user-password authentication consists of several commands: EXCSAT (Exchange 
Server Attributes), ACCSEC (Access Security), SECCHK (Security Check) and 
ACCRDB (Access RDB). The RDBNAM parameter, which appears in some of them, 
specifies the name of the RDB that the command accesses (according to the 
documentation, if this parameter is specified, its value must be the same as 
the value specified on the ACCRDB command for RDBNAM). ACCSEC usually appears 
twice during the handshake process.
It turns out that if the RDBNAM parameter is omitted from the first ACCSEC 
command, the DB2 UDB server becomes unstable, while the establishment of the 
connection may continue successfully. Once the connection is established, a 
simple command (such as SELECT) sent through the connection causes the service 
to terminate unexpectedly.

Exploit:
Send a connection establishment request to the DB2 UDB server, where the RDBNAM 
parameter is omitted from the first ACCSEC command. After the connection is 
established, send a simple query (e.g.: SELECT * FROM dummy).

Vulnerable:
DB2 UDB version 8.x all platforms.

Not Vulnerable:

Vendor?s Status:
- January 11th 2006 ? Vendor Notified
- August 14th 2006 ? Patched in UDB 8.1 FixPak 13,  APAR is IY87211
- August 18th 2006 ? Reported by vendor to Bugtraq and labeled as BID 19586

Workaround:
None.

Credit:
Discovered by Tal Ryterski from Imperva Inc.