Bugtraq mailing list archives

Details for BID 19586


From: shulman () imperva com
Date: 6 Sep 2006 14:26:38 -0000

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.


Current thread: