Security Bulletin: Buffer Overflow Vulnerability in IBM DB2 SQL/PSM Stored Procedure Infrastructure (CVE-2012-4826).
Vulnerability in IBM DB2 could allow an authenticated user to cause a stack-based buffer overflow and possibly attain remote code execution.
CVE ID: CVE-2012-4826
The IBM DB2 products listed below contain a security vulnerability that could
allow an authenticated user to exploit a vulnerability in DB2's SQL/Persistent Stored Module (PSM) Stored Procedure (SP) infrastructure to cause a stack-based buffer overflow and possibly attain remote code execution.
To exploit the vulnerability the malicious user would need:
1. A valid credential to connect to database
2. CONNECT privilege on database
3. Privileges to debug an SQL/PSM.
The vulnerability is in the DB2's SQL/PSM debugging infrastructure and as such requires that the attacker have the privilege to debug a debuggable SQL/PSM stored procedure.
By default, a general user has all the privileges required to create and deploy a debuggable SQL/PSM SP. Revoking EXECUTE privilege on SYSPROC.PSMD_SET_COMPILEMODE from PUBLIC will prevent a general user from deploying a debuggable SQL/PSM SP. If there already exists debuggable SQL/PSM Stored Procedures then the only prevention is to drop and recreate them without debug mode enabled.
CVSS Base Score: 8.5
CVSS Temporal Score: See http://xforce.iss.net/xforce/xfdb/78817 for the current score
CVSS Environmental Score*: Undefined
CVSS String: (AV:N/AC:M/Au:S/C:C/I:C/A:C)
The following IBM DB2 V9.1, V9.5, V9.7 and V10.1 editions running on AIX, Linux, HP, Solaris and Windows:
IBM® DB2® 10.1 Express Edition
IBM® DB2® 10.1 Workgroup Server Edition
IBM® DB2® 10.1 Enterprise Server Edition
IBM® DB2® 10.1 Advanced Enterprise Server Edition
IBM® DB2® Connect™ 10.1 Application Server Edition
IBM® DB2® Connect™ 10.1 Enterprise Edition
IBM® DB2® Connect™ 10.1 Unlimited Edition for System i®
IBM® DB2® Connect™ 10.1 Unlimited Edition for System z®
IBM® DB2® 9.7 Express Edition
IBM® DB2® 9.7 Workgroup Server Edition
IBM® DB2® 9.7 Enterprise Server Edition
IBM® DB2® 9.7 Advanced Enterprise Server Edition
IBM® DB2® Connect™ 9.7 Application Server Edition
IBM® DB2® Connect™ 9.7 Enterprise Edition
IBM® DB2® Connect™ 9.7 Unlimited Edition for System i®
IBM® DB2® Connect™ 9.7 Unlimited Edition for System z®
IBM® DB2® 9.5 Express Edition
IBM® DB2® 9.5 Workgroup Server Edition
IBM® DB2® 9.5 Enterprise Server Edition
IBM® DB2® 9.5 Advanced Enterprise Server Edition
IBM® DB2® Connect™ 9.5 Application Server Edition
IBM® DB2® Connect™ 9.5 Enterprise Edition
IBM® DB2® Connect™ 9.5 Unlimited Edition for System i®
IBM® DB2® Connect™ 9.5 Unlimited Edition for System z®
IBM® DB2® 9.1 Express Edition
IBM® DB2® 9.1 Workgroup Server Edition
IBM® DB2® 9.1 Enterprise Server Edition
IBM® DB2® 9.1 Advanced Enterprise Server Edition
IBM® DB2® Connect™ 9.1 Application Server Edition
IBM® DB2® Connect™ 9.1 Enterprise Edition
IBM® DB2® Connect™ 9.1 Unlimited Edition for System i®
IBM® DB2® Connect™ 9.1 Unlimited Edition for System z®
NOTE: The DB2 Connect products mentioned are affected only if a local database has been created.
NOTE: DB2 V9.1 has reached End-of-Service.
The following IBM V9.8 editions running on AIX and Linux:
IBM® DB2® pureScale™ Feature for Enterprise Server Edition
The recommended solution is to apply the appropriate fix for this vulnerability. Mitigation is also available.
The fix for this vulnerability for DB2 V9.7 is in Fix Pack 7 and is available for download. For DB2 V9.5, V9.8 and V10.1, the fix is planned to be made available in future fix packs.
In general, DB2 fix packs can be downloaded from the following site: http://www.ibm.com/support/docview.wss?uid=swg27007053. You may download the specific fix pack you need from the following:
|V9.1 FP12||IC87192||Contact technical support.|
|V9.5||IC86765||Not available. Contact technical support.|
|V9.8||IC86782||Not available. Contact technical support.|
A special build with the interim fix will be made available for DB2 V9.5 FP10, V9.8 FP5 and V10.1 FP1. Please contact your service representative to obtain the special build and reference the APAR number for the release you want.
A special build with the fix will be made available in DB2 V9.1 FP12 for customers with a valid extended support contract. Contact your service representative to obtain the special build and reference APAR IC87192.
Contact Technical Support:
To prevent existing debuggable SQL/PSM stored procedures from being exploited, you need to search for debuggable SQL/PSM SP, then drop and recreate them without debug mode enabled. You can search for debuggable SQL/PSM SP with the following SELECT statement:
SELECT ROUTINESCHEMA, ROUTINENAME FROM SYSCAT.ROUTINES WHERE DEBUG_MODE='ALLOW'
To prevent the general user from creating their own debuggable SQL/PSM SP, you need to execute the following statement to prevent SQL/PSM SP from being deployed in debug mode:
REVOKE EXECUTE ON PROCEDURE SYSPROC.PSMD_SET_COMPILEMODE FROM PUBLIC RESTRICT
Grant EXECUTE privilege on SYSPROC.PSMD_SET_COMPILEMODE to only those uses that you trust.
This vulnerability was reported to IBM by Martin Rakhmanov of Application Security Inc.
October 17, 2012: Document created.
December 7, 2012: V10.1 FP2 has shipped. Updated download URL for V10.1 FP2.
*The CVSS Environment Score is customer environment specific and will ultimately impact the Overall CVSS Score. Customers can evaluate the impact of this vulnerability in their environments by accessing the links in the Reference section of this Flash.
Note: According to the Forum of Incident Response and Security Teams (FIRST), the Common Vulnerability Scoring System (CVSS) is an "industry open standard designed to convey vulnerability severity and help to determine urgency and priority of response." IBM PROVIDES THE CVSS SCORES "AS IS" WITHOUT WARRANTY OF ANY KIND, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
Note: IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion.
|Information Management||IBM Data Studio||Stored Procedure and UDF Development|
|Information Management||DB2 Connect|
More support for:
DB2 for Linux, UNIX and Windows
Application Programming - SQL Routines (SQL stored procedures)
Software version: 9.1, 9.5, 9.7, 9.8, 10.1
Operating system(s): AIX, HP-UX, Linux, Solaris, Windows
Software edition: Advanced Enterprise Server, Enterprise Server, Express, Express-C, Personal, Workgroup Server
Reference #: 1614536
Modified date: 2015-08-07