Select any two versions of this STIG to compare the individual requirements
Select any old version/release of this STIG to view the previous requirements
Refer to the following report produced by the dataset and Resource Data Collection: - SENSITVE.RPT(CICSRPT). Since it is possible to have multiple CICS regions running on an LPAR, it is recommended to go in to the z/OS STIG Addendum and fill out all the information in the "CICS Systems Programmer Worksheet" for each CICS region running on the LPAR. It is recommended to save this information for any other CICS vulnerabilities that will require it. If the following guidance is true, this is not a finding. WRITE and/or greater access to CICS system datasets is restricted to systems programming personnel.
Review the access authorizations for CICS system datasets for each region. Ensure they conform to the specifications below: A CICS environment may include several dataset types required for operation. Typically they are CICS product libraries, which are usually included in the STEPLIB concatenation but may be found in DD DFHRPL. CICS system datasets can be identified with DFH DD statements, other product system datasets, and application program libraries. Restrict WRITE and/or greater access to CICS program libraries and all system datasets to systems programmers only. Other access must be documented and approved by the ISSO. The site may determine access to application datasets included in the DD DFHRPL and CICS region startup JCL according to need. Ensure that procedures are established, documented, and followed that prevent the introduction of unauthorized or untested application programs into production application systems.
Refer to the following report produced by the ACF2 Data Collection and dataset and Resource Data Collection: - SENSITVE.RPT(TRANS). - ACF2CMDS.RPT(RESOURCE) - Alternate report. Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Browse the dataset allocated by the ACF2PARM DD statement in each CICS startup procedure. Determine the resource type for transactions. Example: CICSKEY OPTION=VALIDATE,TYPE=resource type, RESOURCE=TRANS Verify the following items are in effect for all CICS transactions for each resource type. If the following guidance is true, this is not a finding. Note: Authorized personnel include systems programming and security staffs. Additional guidance regarding authorized personnel for specific transactions is included in this z/OS STIG Addendum. For example, CEMT SPI provides a broader use of this sensitive transaction by restricting execution to inquiries. Transactions, listed in tables CICS CATEGORY 2 CICS AND OTHER PRODUCT TRANSACTIONS and CICS CATEGORY 4 COTS-SUPPLIED SENSITIVE TRANSACTIONS, in the z/OS STIG Addendum, are restricted to authorized personnel. Note: The exception to this is the CEOT and CSGM transactions, which can be made available to all users. Note: The exception to this is the CWBA transaction, which can be made available to the CICS Default user. Note: The transactions beginning with "CK" apply to regions running WebSphere MQ. Note: Category 1 transactions are internally restricted to CICS region userids.
The ISSO will ensure that each CICS region is associated with a unique userid and that userid is properly defined. Develop a plan to implement the required changes. Most transactions are protected in groups. An example would be "KT2", which would contain all Category 2 transactions. KT2 is defined to ACF2 as a resource and contains all the Category 2 transactions. An example of how to implement this within ACF2 is shown here: $KEY(CEMT) TYPE(KT2) UID(syspaudt) ALLOW UID(*) PREVENT Transactions groups should be defined and permitted in accordance with the CICS Transaction tables listed in the z/OS STIG Addendum.
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the following report produced by the CICS Data Collection: - CICS.RPT(DFHSITxx). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Refer to the CICS region SYSLOG - (Alternate source of SIT parameters) Be sure to process DFHSIT based on the order specified. The system initialization parameters are processed in the following order, with later system initialization parameter values overriding those specified earlier. CICS system initialization parameters are specified in the following ways: - In the system initialization table, loaded from a library in the STEPLIB concatenation of the CICS startup procedure. - In the PARM parameter of the EXEC PGM=DFHSIP statement of the CICS startup procedure. - In the SYSIN dataset defined in the startup procedure (but only if SYSIN is coded in the PARM parameter). - In the ACF2PARM dataset defined in the startup procedure. Verify the following CICS System Initialization Table (SIT) parameter settings are specified for each CICS region. If the following guidance is true, this is not a finding. SEC=YES - If SEC is not coded in the CICS region startup JCL, go to offset x'117' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the security byte flag. Below are the hex and bit settings for this flag. X'80' EQU B'10000000' External Security Requested DFLTUSER=<parameter> - If DFLTUSER is not coded in the CICS region startup JCL, go to offset x'118' from the beginning on the SIT dump (record sequence number - 6) for a length of 8 bytes. The value will be the CICS default userid. ACF2PARM overrides the CICS SIT DFLTUSER parameter value with the logonid supplied in the ACF2PARM DEFAULT TERMINAL= parameter. XUSER=YES - If XUSER is not coded in the CICS region startup JCL, go to offset x'117' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the security byte flag. Below is the hex and bit settings for this flag. X'04' EQU B'00000100' Surrogate User Checking required The CICS interface now controls this DFHSIT keyword via the INITIAL XUSER= initialization parameter. The CICS interface dynamically sets this DFHSIT setting during initialization processing using the value specified via the ACF2PARM parameter file. This overrides any value specified by the CICS systems programmer via the CICS SYSIN file, execution parameter overrides, or the DFHSIT table so the security administrator and not the CICS systems programmer controls surrogate userid checking SNSCOPE=NONE|CICS|MVSIMAGE|SYSPLEX - If SNSCOPE is not coded in the CICS region startup JCL, go to offset x'124' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the signon scope byte flag. Verify that users cannot sign on to more than one CICS production region within the scope of a single CICS region, a single z/OS image, or a sysplex. Below are listed the hex and bit settings for this flag: X'01' EQU 1 SIGNON SCOPE = NONE X'02' EQU 2 SIGNON SCOPE = CICS X'03' EQU 3 SIGNON SCOPE = MVSIMAGE X'04' EQU 4 SIGNON SCOPE = SYSPLEX Note: SNSCOPE=NONE is only allowed with test/development regions.
Ensure that CICS System Initialization Table (SIT) parameter values are specified using the following guidance. The system initialization parameters are processed in the following order, with later system initialization parameter values overriding those specified earlier. CICS system initialization parameters are specified in the following ways: - In the system initialization table, loaded from a library in the STEPLIB concatenation of the CICS startup procedure. - In the PARM parameter of the EXEC PGM=DFHSIP statement of the CICS startup procedure. - In the SYSIN dataset defined in the startup procedure (but only if SYSIN is coded in the PARM parameter). - In the ACF2PARM dataset defined in the startup procedure. Ensure the following CICS System Initialization Table (SIT) parameter settings are specified for each CICS region: SEC=YES - If SEC is not coded in the CICS region startup JCL, go to offset x'117' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the security byte flag. Below are listed the hex and bit settings for this flag. X'80' EQU B'10000000' External Security Requested <<=== X'40' EQU B'01000000' Resource Prefix Required X'10' EQU B'00010000' RACLIST class APPCLU required X'08' EQU B'00001000' ESM INSTLN data is required X'04' EQU B'00000100' Surrogate User Checking required X'02' EQU B'00000010' Always enact resource check X'01' EQU B'00000001' Always enact command check DFLTUSER=<parameter> - If DFLTUSER is not coded in the CICS region startup JCL, go to offset x'118' from the beginning on the SIT dump (record sequence number - 6) for a length of 8 bytes. The value will be the CICS default userid. XUSER=YES - If XUSER is not coded in the CICS region startup JCL, go to offset x'117' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the security byte flag. Below are listed the hex and bit settings for this flag. X'80' EQU B'10000000' External Security Requested X'40' EQU B'01000000' Resource Prefix Required X'10' EQU B'00010000' RACLIST class APPCLU required X'08' EQU B'00001000' ESM INSTLN data is required X'04' EQU B'00000100' Surrogate User Checking required <<=== X'02' EQU B'00000010' Always enact resource check X'01' EQU B'00000001' Always enact command check SNSCOPE=NONE|CICS|MVSIMAGE|SYSPLEX - If SNSCOPE is not coded in the CICS region startup JCL, go to offset x'124' from the beginning on the SIT dump (record sequence number - 6) for a length of 1. This is the signon scope byte flag. Ensure that users cannot sign on to more than one CICS production region within the scope of a single CICS region, a single z/OS image, or a sysplex. Below are listed the hex and bit settings for this flag: X'01' EQU 1 SIGNON SCOPE = NONE X'02' EQU 2 SIGNON SCOPE = CICS X'03' EQU 3 SIGNON SCOPE = MVSIMAGE X'04' EQU 4 SIGNON SCOPE = SYSPLEX Note: SNSCOPE=NONE is only allowed with test/development regions.
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the following report produced by the ACF2 Data Collection: - ACF2CMDS.RPT(LOGONIDS). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Verify the following items are in effect for each CICS region logonid. If the following guidance is true, this is not a finding. A unique logonid is associated with the CICS region. The CICS region logonid has the STC, ACF2CICS, MUSASS, and NO-SMC attributes specified. Note: The ACF2CICS privilege will be restricted to CICS region logonids only. If CICS region submits jobs on behalf of its users, the JOBFROM attribute is specified. If CICS region has a requirement to update information in the ACF2 database, the MUSUPDT attribute is specified. Not granted the ACF2 NON-CNCL privilege. No access to interactive online facilities (e.g., TSO) other than CICS.
The ISSO will ensure that each CICS region is associated with a unique userid and that userid is properly defined. Review all CICS region, default, and end-user userids to ensure they are defined and controlled as required. Ensure that the following is defined for each CICS region: A unique userid is defined. Use the ACF2 insert command to accomplish this. A sample command is provided here: INSERT <cicsregionid> NAME('STC, CICS Region') JOBFROM MUSASS NO-SMC STC ACF2CICS
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the following report produced by the ACF2 Data Collection: - ACF2CMDS.RPT(LOGONIDS). - ACF2CMDS.RPT(RESOURCE). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Verify the following items are in effect for the CICS default logonid(s) (i.e., Browse the ACF2PARM DD statement for DEFAULT TERMINAL=<parameter> and DEFAULT NONTERMINAL=nnnnnnnn). If the following guidance is true, this is not a finding. Not granted the ACF2 NON-CNCL privilege. No access to interactive online facilities (e.g., TSO) other than CICS. IDLE(15) field is set to 15 minutes. A system's default time for terminal lockout or session termination may be lengthened to 30 minutes at the discretion of the ISSM. The ISSM will maintain the documentation for each system with a timeout adjusted beyond the 15-minute recommendation to explain the basis for this decision. Restricted from accessing all datasets and resources with the following exceptions: Non-restricted CICS transactions (e.g., CESF, CESN, "good morning" transaction, etc.) If applicable, resources necessary to operate in an intersystem communication (ISC) environment (i.e., LU6.1, LU6.2, and MRO) Note: Refer to the IBM CICS Transaction Server Resource Definition Guide for latest and most accurate definition for the Default CICS User. Note: Any exceptions to these guidelines must be approved by the site ISSO and documented in the site security plan.
Ensure that the default CICS user is restricted and properly defined. Ensure the following items are in effect for the CICS default logonid(s) (i.e., Browse the ACF2PARM DD statement for DEFAULT TERMINAL=<parameter> and DEFAULT NONTERMINAL=nnnnnnnn): Not granted the ACF2 NON-CNCL privilege. Use the ACF2 LIST command to display the default CICS userid. Example: SET LID LIST CICS CHANGE CICS NONON-CNCL No access to interactive online facilities (e.g., TSO) other than CICS. Use the ACF2 LIST command to display the default CICS userid. Example: SET LID LIST CICS CHANGE CICS NOTSO IDLE(15) field is set to 15 minutes, up to 30 with justification. Use the ACF2 LIST command to display the default CICS userid. Example: SET LID LIST CICS CHANGE CICS IDLE(15) up to 30 with justification Restricted from accessing all datasets and resources with the following exceptions: Non-restricted CICS transactions (e.g., CESF, CESN, 'good morning' transaction, etc.) If applicable, resources necessary to operate in an intersystem communication (ISC) environment (i.e., LU6.1, LU6.2, and MRO) Use the ACF2 ACFRPTRX or ACFRPTXR reports to verify if the CICS default userid has access to any resources or datasets.
Refer to the following report produced by the ACF2 Data Collection: - ACF2CMDS.RPT(LOGONIDS). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Note: Any logonid that does not have an IDLE value specified will obtain its IDLE value from the default value set in ZCIC0041. Any logonid that specifies an IDLE value must meet the requirements specified below. For all logonids with the CICS attribute that have IDLE(15) specified, this is not a finding. Note: If the timeout limit is greater than 15 minutes, and the system is processing unclassified information, review the following items. If any of these is true, this is not a finding. If a session is not terminated, but instead is locked out after 15 minutes of inactivity, a process must be in place that requires user identification and authentication before the session is unlocked. Session lockout will be implemented through system controls or terminal screen protection. A system's default time for terminal lockout or session termination may be lengthened to 30 minutes at the discretion of the ISSM. The ISSM will maintain the documentation for each system with a timeout adjusted beyond the 15-minute recommendation to explain the basis for this decision. The ISSM may set selected userids to have a timeout of up to 60 minutes to complete critical reports or transactions without timing out If each exception meets the following criteria, this is not a finding. The time-out exception cannot exceed 60 minutes. A letter of justification fully documenting the user requirement(s) must be submitted and approved by the site ISSM. In addition, this letter must identify an alternate means of access control for the terminal(s) involved (e.g., a room that is locked at all times, a room with a cipher lock to limit access, a password protected screen saver set to 30 minutes or less, etc.). The requirement must be revalidated on an annual basis. If the MULTSIGN option in the logonid record field is restricted to test or development use, this is not a finding.
Ensure that all userids with a CICS segment have the TIMEOUT parameter set to 15 minutes. Ensure that all LIDs authorized to access a CICS facility restrict MULTSIGN to test and development use. Examples: SET LID LIST CICS CHANGE CICS IDLE(15)
Refer to the following report produced by the ACF2 Data Collection: - SENSITVE.RPT(CICSRPT). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. WRITE and/or greater access to the ACF2/CICS parameter dataset, specified on the ACF2PARM DD statement, is restricted to systems programming personnel and security personnel. If this guidance is true, this is not a finding.
The ISSO will ensure that WRITE and/or greater access to the ACF2/CICS parameter dataset is limited to systems programmers and security personnel. Review the access authorizations for CICS system datasets. WRITE and/or greater access to the ACF2/CICS parameter dataset, specified on the ACF2PARM DD statement, is restricted to systems programming personnel and security personnel. Example: $KEY(S3C) $PREFIX(SYS3) CICSTS.SYSIN UID(syspaudt) R(A) W(L) A(L) E(A) CICSTS.SYSIN UID(secaaudt) R(A) W(L) A(L) E(A) CICSTS.SYSIN UID(*) PREVENT SET RULE COMPILE 'ACF2.MVA.DSNRULES(S3C)' STORE
Refer to the following report produced by the ACF2 Data Collection and Data Set and Resource Data Collection: - SENSITVE.RPT(XCMD) - ACF2CMDS.RPT(RESOURCE) - Alternate report Automated Analysis: Refer to the following report produced by the ACF2 Data Collection Checklist: - PDI (ZCIC0021) Ensure that all IBM CICS Transaction Server SPI command resources defined in the IBM CICS-RACF Security Guide are properly protected according to the requirements specified in the site security plan, use CICS SPI Resources table in the zOS STIG Addendum as a guide. If the following guidance is true, this is not a finding. The ACF2 resources and/or generic equivalent as designated in the above table are defined with a default access of PREVENT. The ACF2 resource access authorizations restrict access to the appropriate personnel as designated in the above table.
Ensure that the IBM CICS Transaction Server SPI command resources defined in the IBM CICS-RACF Security Guide access is in accordance with those outlined in the site security plan use CICS SPI Resources table in the zOS STIG Addendum as a guide. These tables list the resources and access requirements for IBM CICS Transaction Server; ensure the following guidelines are followed: The ACF2 resources and/or generic equivalent as designated in the above table are defined with a default access of PREVENT. The ACF2 resource access authorizations restrict access to the appropriate personnel as designated in the above table. The following commands are provided as a sample for implementing resource controls: $KEY(ASSOCIATION) TYPE(XCD) - UID(CICSAUDT) SERVICE(READ) ALLOW - UID(CICUAUDT) SERVICE(READ) ALLOW - UID(SYSCAUDT) SERVICE(READ) ALLOW - UID(*) PREVENT
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. If every CICS region on the system has the ACF2PARM DD statement in the CICS startup JCL, this is not a finding.
The ISSO will ensure that each CICS region procedure has the ACF2/CICS parameter dataset specified. Ensure every CICS region on the system has the ACF2PARM DD statement in the CICS startup JCL. View the started task proc for each CICS region in SYS3.PROCLIB using ISPF.
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Refer to the CICS region SYSLOG - (Alternate source of SIT parameters). Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. If all key ACF2/CICS parameters for every CICS region are coded as stated in the table titled ACF2/CICS Parameters in the z/OS STIG Addendum, this is not a finding. Note: The DEFAULT TERMINAL=parameter must be specified. CICSKEY OPTION=VALIDATE,TYPE=resource type,RESOURCE=TRANS will specify a unique resource type for each CICS region.
Ensure the ACF2/CICS parameters are coded with values specified in the table titled ACF2/CICS Parameters, in the zOS STIG Addendum. Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. Ensure that all key ACF2/CICS parameters for every CICS region are coded as stated in the table titled ACF2/CICS Parameters, in the zOS STIG Addendum.
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. If the following items are in effect for entries specified in the SAFELIST parameter, this is not a finding. Transactions are uniquely identified. Transactions are not masked. Sensitive transactions are not included. Note: For information on transactions that are eligible for exemption from security checking, refer to Category 3 Transactions for CICS TS 3.1 - 5.1 in the z/OS STIG addendum. If the above items are true for all entries specified in the SAFELIST parameter for each CICS region, this is not a finding.
The systems programmer and ISSO will ensure the ACF2/CICS parameter SAFELIST are coded with the values specified below. Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. Ensure the following items are in effect for entries specified in the SAFELIST parameter: Transactions are uniquely identified. Transactions are not masked. Sensitive transactions are not included. Note: For information on transactions that are eligible for exemption from security checking, refer to Category 3 Transactions for CICS TS 3.1 - 5.1 in the z/OS STIG addendum.
Refer to the following report produced by the z/OS Data Collection: - EXAM.RPT(CICSPROC). Refer to the CICS Systems Programmer Worksheets filled out from previous vulnerability ZCIC0010. Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. If the PROTLIST parameter is not specified for all CICS regions, this is not a finding.
The systems programmer and ISSO will ensure the ACF2/CICS parameter PROTLIST is not coded. Browse the ACF2/CICS dataset allocated by the ACF2PARM DD statement in the JCL of each CICS procedure. Make sure the PROTLIST parameter is not specified for all CICS regions.