UCF STIG Viewer Logo

Access to external executables must be disabled or restricted.


Overview

Finding ID Version Rule ID IA Controls Severity
V-74483 DB2X-00-003700 SV-89157r1_rule Medium
Description
Information systems are capable of providing a wide variety of functions and services. Some of the functions and services, provided by default, may not be necessary to support essential organizational operations (e.g., key missions, functions). It is detrimental for applications to provide, or install by default, functionality exceeding requirements or mission objectives. Applications must adhere to the principles of least functionality by providing only essential capabilities. DBMSs may spawn additional external processes to execute procedures that are defined in the DBMS but stored in external host files (external procedures). The spawned process used to execute the external procedure may operate within a different OS security context than the DBMS and provide unauthorized access to the host system.
STIG Date
IBM DB2 V10.5 LUW Security Technical Implementation Guide 2019-09-27

Details

Check Text ( C-74409r1_chk )
Use the following SQL Query to find external routines:
DB2> SELECT ROUTINENAME
FROM SYSCAT.ROUTINES
WHERE ORIGIN='E'

Use the following command to find out which user has privileges to run the external routines found with last query.
DB2> SELECT GRANTEE
FROM SYSCAT.ROUTINEAUTH

If non-essential routines exist outside the database, this is a finding.

If non-authorized users have privileges on external routines, this is a finding.
Fix Text (F-81083r1_fix)
Drop the external routines if these are non-essential for mission objective.
DB2> DROP FUNCTION

Revoke execute privileges from non-authorized users on external routines.
DB2> REVOKE EXECUTE ON FUNCTION FROM

Note: Select the following link for the knowledgebase information on the DROP statement:
http://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.sql.ref.doc/doc/r0000945.html?cp=SSEPGG_10.5.0%2F2-12-7-129&lang=en