{"stig":{"title":"zOS WebSphere MQ for TSS Security Technical Implementation Guide","version":"7","release":"2"},"checks":[{"vulnId":"V-225623","ruleId":"SV-225623r1146199_rule","severity":"high","ruleTitle":"WebSphere MQ channel security must be implemented in accordance with security requirements.","description":"WebSphere MQ Channel security can be configured to provide authentication, message privacy, and message integrity between queue managers. Secure Sockets Layer (SSL) uses encryption techniques, digital signatures and digital certificates to provide message privacy, message integrity and mutual authentication between clients and servers.\n\nFailure to properly secure a WebSphere MQ channel may lead to unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of some system services, applications, and customer data.\n\nSatisfies: SRG-OS-000505, SRG-OS-000555","checkContent":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nCollect the following Information for WebSphere MQ queue manager.\n\n- If a WebSphere MQ queue manager communicates with another WebSphere MQ queue manager, provide the WebSphere MQ queue manager and channel names used to connect these queue managers.\n\nAutomated Analysis requires Additional Analysis\nAutomated Analysis\nRefer to the following report produced by the z/OS Data Collection:\n\n- PDI(ZWMQ0011).\n\nIf the following guidelines are true for each channel definition displayed from the DISPLAY CHANNEL command, this is not a finding.\nVerify that each WebSphere MQ channel is using SSL by checking for the SSLCIPH parameter, which must specify a FIPS 140-2 compliant value of the following: (Note: Both ends of the channel must specify the same cipher specification.)\n\nECDHE_ECDSA_AES_128_CBC_SHA256\nECDHE_ECDSA_AES_256_CBC_SHA384\nECDHE_RSA_AES_128_CBC_SHA256\nECDHE_RSA_AES_256_CBC_SHA384\nTLS_RSA_WITH_3DES_EDE_CBC_SHA\nTLS_RSA_WITH_AES_128_CBC_SHA\nTLS_RSA_WITH_AES_128_CBC_SHA256\nTLS_RSA_WITH_AES_256_CBC_SHA\nTLS_RSA_WITH_AES_256_CBC_SHA256\n\nRepeat the above step for each queue manager ssid identified.","fixText":"The systems programmer and the ISSO will review the WebSphere MQ Screen interface invoked by the REXX CSQOREXX, reviewing the channel's SSLCIPH setting.\n\nDisplay the channel properties and look for the \"SSL Cipher Specification\" value.\n\nEnsure that a FIPS 140-2 compliant value is shown.\n\nECDHE_ECDSA_AES_128_CBC_SHA256\nECDHE_ECDSA_AES_256_CBC_SHA384\nECDHE_RSA_AES_128_CBC_SHA256\nECDHE_RSA_AES_256_CBC_SHA384\nTLS_RSA_WITH_3DES_EDE_CBC_SHA\nTLS_RSA_WITH_AES_128_CBC_SHA\nTLS_RSA_WITH_AES_128_CBC_SHA256\nTLS_RSA_WITH_AES_256_CBC_SHA\nTLS_RSA_WITH_AES_256_CBC_SHA256\n\nNote that both ends of the channel must specify the same cipher specification. \n\nRepeat these steps for each queue manager ssid identified.","ccis":["CCI-000068","CCI-002421","CCI-002423","CCI-002450"]},{"vulnId":"V-225624","ruleId":"SV-225624r1146202_rule","severity":"medium","ruleTitle":"WebSphere MQ channel security is not implemented in accordance with security requirements.","description":"WebSphere MQ channel security can be configured to provide authentication, message privacy, and message integrity between queue managers. WebSphere MQ channels use SSL encryption techniques, digital signatures and digital certificates to provide message privacy, message integrity and mutual authentication between clients and servers.\n\nFailure to properly secure a WebSphere MQ channel may lead to unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of some system services, applications, and customer data.","checkContent":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nTo determine which Release of WebSphere MQ, review ssid reports for message CSQU000I. Collect the following Information for each WebSphere MQ queue manager. \n\n- If a WebSphere MQ queue manager communicates with another WebSphere MQ queue manager, provide the WebSphere MQ queue manager and channel names used to connect these queue managers.\n- If any WebSphere MQ channels are used to communicate within the enclave, provide a list of channels and provide documentation regarding the sensitivity of the information on the channel.\n\nReview the ssid report(s) and perform the following steps. If the following guidance for each queue manager ssid is true, this is not a finding.\n\nFind the DISPLAY QMGR DEADQ, SSLKEYR, SCYCASE command to locate the start of the Queue Manager definitions.\n\nVerify that each WebSphere MQ 5.3 queue manager is using a digital certificate by reviewing the SSLKEYR parameter to ensure that a keyring is identified. i.e., SSLKEYR(sslkeyring-id).\n\nIssue the following TSS commands, where ssidCHIN is the Acid for the WebSphere MQ Channel Initiator's userid and sslkeyring-id is obtained from the above action:\n\nTSS LIST(ssidCHIN) KEYRING(sslkeyring-id)\n\nNote: The sslkeyring-id is case sensitive.\n\nIn the output find the DIGICERT field for ACID(ssidCHIN). Use this DIGICERT in the following command:\n\nTSS LIST(ssidCHIN) DIGICERT(digicert)\n\nNote: The digicert is case sensitive.\n\nReview the ISSUER DISTINGUISHED NAME field in the resulting output for information of any of the following:\n\nOU=PKI.OU=DoD.O=U.S. Government.C=US\nOU=ECA.O=U.S. Government.C=US\n\nRepeat these steps for each queue manager ssid identified.","fixText":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier). \n\nFind the DISPLAY QMGR SSLKEYR command to locate the start of the queue manager definitions.\nVerify that each WebSphere MQ queue manager is using a digital certificate by reviewing the SSLKEYR parameter to ensure that a keyring is identified - i.e., SSLKEYR(sslkeyring-id)\nIssue the following TSS commands, where ssidCHIN is the lid for the WebSphere MQ Channel Initiator's userid and sslkeyring-id is obtained from the above action:\n\nTSS LIST(ssidCHIN) KEYRING(sslkeyring-id)\n\nNote: The sslkeyring-id is case sensitive.\n\nIn the output find the DIGICERT field for ACID(ssidCHIN). Use this DIGICERT in the following command:\n\nTSS LIST(ssidCHIN) DIGICERT(digicert)\n\nNote: The Certificate Label Name is case sensitive.\n\nReview the Issuer's Name field in the resulting output for information of any of the following:\n\nOU=PKI.OU=DoD.O=U.S. Government.C=US\nOU=ECA.O=U.S. Government.C=US\n\nRepeat these steps for each queue manager ssid identified.\n\nTo implement the requirements stated above, the following two items are provided which attempt to assist with (1) Technical \"how to\" information and (2) A DISA Point of contact for obtaining SSL certificates for CSD WebSphere MQ channels:\n\nReview the information available on setting up SSL, Keyrings, and Digital Certificates in the CA TSS Cookbook regarding usage of the TSS commands to administer PKI Certificates as well as the WebSphere MQ Security manual. Also review the information contained in the documentation provided as part of the install package from the DISA SSO Resource Management Factory (formerly Software Factory).\n\nFor information on obtaining an SSL certificate in the DISA CSD environment, send email inquiry to disaraoperations@disa.mil for more information.","ccis":["CCI-002470"]},{"vulnId":"V-225625","ruleId":"SV-225625r1146204_rule","severity":"medium","ruleTitle":"Production WebSphere MQ Remotes must utilize Certified Name Filters (CNF).","description":"IBM WebSphere MQ can use a user ID associated with an ACP certificate as a channel user ID. When an entity at one end of an SSL channel receives a certificate from a remote connection, the entity asks The ACP if there is a user ID associated with that certificate. The entity uses that user ID as the channel user ID. If there is no user ID associated with the certificate, the entity uses the user ID under which the channel initiator is running. Without a validly defined Certificate Name Filter for the entity IBM WebSphere MQ will set the channel user ID to the default.","checkContent":"Validate that the list of all Production WebSphere MQ Remotes exist, and contains approved Certified Name Filters and associated USERIDS.\n\nIf the filter(s) is (are) defined, accurate and has been approved by Vulnerability ICER0030 and the associated USERID(s) is only granted need to know permissions and authority to resources and commands, this is not a finding. \n\nIf there is no Certificate Name Filter for WebSphere MQ Remotes this is a finding.\n\nNote: Improper use of CNF filters for MQ Series will result in the following Message ID.\n\nCSQX632I found in the following example:\n\nCSQX632I csect-name SSL certificate has no\nassociated user ID, remote channel\nchannel-name - channel initiator user ID\nused","fixText":"The responsible MQ systems programmer(s) will create and maintain a spreadsheet that contains a list of all Production WebSphere MQ Remotes and associated individual USERIDs with corresponding valid Certified Name Filters (CNF). This documentation will be reviewed and validated annually by responsible MQ systems programmer(s) and forwarded for approval by the ISSM.\n\nThe ISSO will define the associated USERIDs, the CNF, and grant the minimal need-to-know access, by granting only the required resources and commands for each USERID in the ACP. Refer to the IBM WebSphere MQ Security manual for details on defining CNF for WebSphere MQ.\n\nGeneric access will not be granted, such as resource permission at the SSID MQ resource level.","ccis":["CCI-000366","CCI-001133"]},{"vulnId":"V-225626","ruleId":"SV-225626r1146206_rule","severity":"medium","ruleTitle":"User timeout parameter values for WebSphere MQ queue managers are not specified in accordance with security requirements.","description":"Users signed on to a WebSphere MQ queue manager could leave their terminals unattended for long periods of time. This may allow unauthorized individuals to gain access to WebSphere MQ resources and application data. This exposure could compromise the availability, integrity, and confidentiality of some system services and application data.","checkContent":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nAutomated Analysis\nRefer to the following report produced by the z/OS Data Collection:\n\n- PDI(ZWMQ0020).\n\nReview the ssid report(s) and perform the following steps:\n\nFind the DISPLAY SECURITY command to locate the start of the security parameter settings.\nReview the CSQH015I and CSQH016I messages to determine the Timeout and Interval parameter settings respectively.\nRepeat these steps for each queue manager ssid.\n\nThe standard values are:\n\nTIMEOUT(15)\nINTERVAL(5)\n\nIf the Timeout and Interval values conform to the standard values, this is not a finding.","fixText":"Review the WebSphere MQ System Setup Guide and the information on the ALTER SECURITY command in the WebSphere MQ Script (MQSC) Command Reference.\n\nEnsure the values for the TIMEOUT and INTERVAL parameters are specified in accordance with security requirements.","ccis":["CCI-001133"]},{"vulnId":"V-225627","ruleId":"SV-225627r1146209_rule","severity":"medium","ruleTitle":"WebSphere MQ started tasks are not defined in accordance with the proper security requirements.","description":"Started tasks are used to execute WebSphere MQ queue manager services. Improperly defined WebSphere MQ started tasks may result in inappropriate access to application resources and the loss of accountability. This exposure could compromise the availability of some system services and application data.","checkContent":"Refer to the following reports produced by the TSS Data Collection:\n\n- TSSCMDS.RPT(#STC).\n- TSSCMDS.RPT(@ACIDS).\n- TSSCMDS.RPT(FACLIST) - Preferred report containing all control option values in effect including default values.\n- TSSCMDS.RPT(TSSPRMFL) - Alternate report containing only control option values explicitly coded at TSS startup.\n\nNote: The FACLIST report must be created by security personnel. The TSSPRMFL report can be used if security personnel have not executed the required steps documented in the TSS Data Collection.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nProvide a list of all WebSphere MQ Subsystem Ids (Queue managers) and Release levels.\n\nReview WebSphere MQ started tasks and ensure the following items are in effect, this is not a finding. \n\nFor ssidMSTR\nFACILITY(STC, BATCH)\nPASSWORD(xxxxxxxx,0)\nSOURCE(INTRDR)\nNOSUSPEND\nMASTFAC(ssidMSTR)\n\nFor ssidCHIN\nFACILITY(STC, BATCH)\nPASSWORD(xxxxxxxx,0)\nSOURCE(INTRDR)\nNOSUSPEND\n\nWebSphere MQ queue manager facilities is defined to the Facility Matrix Table using the following sample commands:\n\nFAC(USERxx=NAME=ssidMSTR,MODE=FAIL,PGM=CSQ,ID=xx,ACTIVE)\nFAC(ssidMSTR=SHRPRF,ASUBM,NOABEND,MULTUSER,XDEF,LUMSG)\nFAC(ssidMSTR=STMSG,SIGN(S),INSTDATA,NORNDPW,AUTHINIT)\nFAC(ssidMSTR=NOPROMPT,NOAUDIT,RES,WARNPW,NOTSOC)\nFAC(ssidMSTR=LCFTRANS,IJU,MSGLC,NOTRACE,NOEODINIT)\nFAC(ssidMSTR=NODORMPW,NONPWR)\nFAC(ssidMSTR=LOG(INIT,SMF,MSG,SEC9))\nFAC(ssidMSTR=DOWN=GLOBAL,LOCKTIME=00,DEFACID=(*NONE*))\n\nRepeat these steps for each queue manager ssid.","fixText":"Review WebSphere MQ started tasks and ensure the following items are in effect:\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nssidMSTR is the name of a queue manager STC.\nssidCHIN is the name of a distributed queuing (a.k.a., channel initiator) STC.\n\nEach WebSphere MQ started task is associated with a unique ACID.\n\nEach WebSphere MQ started task is defined to the STC record with a unique ACID.\n\nEach ssidMSTR STC ACID has a corresponding WebSphere MQ MASTFAC as defined in the z/OS.\n\nFor example, a Started Task Table entry exists for each queue manager started task procedure xxxxMSTR and distributed queuing started task procedure xxxxCHIN. A corresponding userid for each started task exists. Queue manager and channel initiator started tasks will not be defined with the BYPASS attribute.\n\nWebSphere MQ queue manager facilities are defined using the control options as specified below:\n\nDefine each queue manager xxxxMSTR to the TOP SECRET Facility Matrix Table using the following sample commands:\n\nFACILITY(USERxx=NAME=xxxxMSTR)\nFACILITY(xxxxMSTR=MODE=FAIL,PGM=CSQ,ID=xx)\nFACILITY(xxxxMSTR=ACTIVE,SHRPRF,ASUBM,NOABEND)\nFACILITY(xxxxMSTR=MULTUSER,XDEF,LUMSG,STMSG,SIGN(S))\nFACILITY(xxxxMSTR=INSTDATA,NORNDPW,AUTHINIT)\nFACILITY(xxxxMSTR=NOPROMPT,NOAUDIT,RES,WARNPW)\nFACILITY(xxxxMSTR=NOTSOC,LCFTRANS,IJU,MSGLC,NOTRACE)\nFACILITY(xxxxMSTR=NOEODINIT,NODORMPW,NONPWR)\n(INIT,SMF,MSG,SEC9))\nFACILITY(xxxxMSTR=DOWN=GLOBAL,LOCKTIME=00,DEFACID=(*NONE*))","ccis":["CCI-000764"]},{"vulnId":"V-225628","ruleId":"SV-225628r1146386_rule","severity":"medium","ruleTitle":"WebSphere MQ all update and alter access to MQSeries/WebSphere MQ product and system data sets are not properly restricted.","description":"MVS data sets provide the configuration, operational, and executable properties of WebSphere MQ. Some data sets are responsible for the security implementation of WebSphere MQ. Failure to properly protect these data sets may lead to unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the ACP Data Collection:\n\n- SENSITVE.RPT(MQSRPT).\n\nEnsure ACP data sets rules for WebSphere MQ system data sets (e.g., SYS2.MQM.) restrict access as follows. If the following guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nIf the following guidance is true, this is not a finding.\n\nThe ACP data set rules restrict READ access to data sets referenced by the following DDnames restricted to WebSphere MQ STCs, WebSphere MQ administrators, and systems programming personnel. All access to these data sets is logged.\n\nDDname\tProcedure\tDescription\nCSQINP1\tssidMSTR\tInput parameters\nCSQINP2\tssidMSTR\tInput parameters\nCSQXLIB\tssidCHIN\tUser exit library\n\nThe ACP data set rules restrict WRITE and/or greater access to the above data sets to WebSphere MQ administrators and systems programming personnel.\n\nThe ACP data set rules restrict WRITE and/or greater access to data sets referenced by the following DDnames restricted to WebSphere MQ STCs, WebSphere MQ administrators, and systems programming personnel. All WRITE and/or greater access to these data sets is logged.\n\nDDname\tProcedure\tDescription\nCSQPxxxx\tssidMSTR\tPage data sets\nBSDSx\tssidMSTR\tBootstrap data sets\nCSQOUTx\tssidMSTR\tSYSOUT data sets\nCSQSNAP\tssidMSTR\tDUMP data set\n(See note)\tssidMSTR\tLog data sets\n\nNote: To determine the log data set names, review the JESMSGLG file of the ssidMSTR active task(s). Find CSQJ001I messages to obtain data set names.\n \nThe ACP data set rules restrict ALTER access to archive data sets to WebSphere MQ STCs, WebSphere MQ administrator, and systems programming personnel. All ALTER access to these data sets is logged.\n\nNote: To determine the archive data sets names, review the JESMSGLG file of the ssidMSTR active task(s). Find the CSQY122I message to obtain the ARCPRFX1 and ARCPRFX2 data set high-level qualifiers.\n\nExcept for the specific data set requirements just mentioned, WRITE and/or greater access to all other WebSphere MQ system data sets is restricted to the WebSphere MQ administrator and systems programming personnel.","fixText":"The systems programmer will have the ISSO  ensure that all WRITE and/or greater access to WebSphere MQ product and system data sets are restricted to WebSphere MQ administrators, systems programmers, and WebSphere MQ started tasks.\n\nThe installation requires that the following data sets be APF authorized. \n\nhlqual.SCSQAUTH\nhlqual.SCSQLINK\nhlqual.SCSQANLx\nhlqual.SCSQSNL\nhlqual.SCSQMVR1\nhlqual.SCSQMVR2\n\nREAD access to data sets referenced by the CSQINP1, CSQINP2, and CSQXLIB DDs in the queue manager's procedure will be restricted to the queue manager userid, WebSphere MQ administrator, and systems programming personnel. Log all access to these data sets.\n\nWRITE and/or greater access to data set profiles protecting all page sets, logs, bootstrap data sets (BSDS), and data sets referenced by the CSQOUTX and CSQSNAP DDs in the queue manager's procedure will be restricted to the queue manager userid, WebSphere MQ administrator, and systems programming personnel. Log all WRITE and/or greater access to these data sets.\n\nALL access to all archive data sets in the queue manager's procedure will be restricted to the queue manager userid, WebSphere MQ administrator, and systems programming personnel. Log all ALL access to these data sets.","ccis":["CCI-000213","CCI-001499","CCI-002234"]},{"vulnId":"V-225629","ruleId":"SV-225629r1146215_rule","severity":"medium","ruleTitle":"WebSphere MQ security class(es) must not be defined improperly.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following reports produced by the TSS Data Collection:\n\n- TSSCMDS.RPT(#RDT).\n- SENSITVE.RPT(WHOOMADM).\n- SENSITVE.RPT(WHOOMCMD).\n- SENSITVE.RPT(WHOOMCON).\n- SENSITVE.RPT(WHOOMNLI).\n- SENSITVE.RPT(WHOOMPRO.)\n- SENSITVE.RPT(WHOOMQUE).\n- SENSITVE.RPT(WHOOXADM).\n- SENSITVE.RPT(WHOOXNLI).\n- SENSITVE.RPT(WHOOXPRO).\n- SENSITVE.RPT(WHOOXQUE).\n- SENSITVE.RPT(WHOOXTOP).\n\nIf the following WebSphere MQ Resource Class(es) is (are) defined in the Resource Definition Table (RDT), this is not a finding.\n\nMQADMIN\nMQCMDS\nMQCONN\nMQNLIST\nMQPROC\nMQQUEUE\n\nWhen SCYCASE is set to MIXED, and the following WebSphere MQ Resource Class(es) is (are) defined in the Resource Definition Table (RDT), this is not a finding.\n\nMXADMIN\nMXNLIST\nMXPROC\nMXQUEUE\nMXTOPIC\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nNote: If both MQADMIN and MXADMIN resource classes are not defined to the RDT record, no security checking is performed.","fixText":"Ensure that all WebSphere MQ resources are defined to TSS.\n\nThe following should be defined to the RDT:\n\nMQADMIN\nMQCONN\nMQCMDS\nMQNLIST\nMQPROC\nMQQUEUE\n\nWhen SCYCASE is set to mixed,  and the following WebSphere MQ resource classes should be defined to the TSS RDT.\n\nMXADMIN\nMXNLIST\nMXPROC\nMXQUEUE\nMXTOPIC\n\nUse the following commands to define (establish ownership of) resources for each WebSphere MQ subsystem to TSS:\n\nTSS ADD(deptname) MQADMIN(ssid.)\nTSS ADD(deptname) MQCMDS(ssid.)\nTSS ADD(deptname) MQCONN(ssid.)\nTSS ADD(deptname) MQNLIST(ssid.)\nTSS ADD(deptname) MQPROC(ssid.)\nTSS ADD(deptname) MQQUEUE(ssid.)\n\nWhen SCYCASE is set to mixed, CLASMAP Definitions must include the following entries:\n\nTSS ADD(deptname) MXADMIN(ssid.)\nTSS ADD(deptname) MXNLIST(ssid.)\nTSS ADD(deptname) MXPROC(ssid.)\nTSS ADD(deptname) MXQUEUE(ssid.)\nTSS ADD(deptname) MXTOPIC(ssid.)\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nAnother method to ensure protection is to assign the DEFPROT attribute to the resource class in the RDT record by using the following command:\n\nTSS REP(RDT) RESCLASS(MQADMIN) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MQCMDS) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MQCONN) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MQNLIST) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MQPROC) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MQQUEUE) ATTR(DEFPROT)\n\nWhen SCYCASE is set to mixed.\n\nTSS REP(RDT) RESCLASS(MXADMIN) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MXNLIST) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MXPROC) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MXQUEUE) ATTR(DEFPROT)\nTSS REP(RDT) RESCLASS(MXTOPIC) ATTR(DEFPROT)","ccis":["CCI-000213","CCI-002358"]},{"vulnId":"V-225630","ruleId":"SV-225630r1146218_rule","severity":"high","ruleTitle":"WebSphere MQ switch profiles must be properly defined to the appropriate ADMIN class.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nAutomated Analysis requires Additional Analysis.\nRefer to the following report produced by the z/OS Data Collection:\n\n- PDI(ZWMQ0051).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nReview the Security switches identified in response to the DISPLAY SECURITY command in each ssid report(s). If all of the following switches specify ON, this is not a finding.\n\nSUBSYSTEM\nCONNECTION\nCOMMAND\nCONTEXT\nALTERNATE USER\nPROCESS\nNAMELIST\nQUEUE\nTOPIC\nCOMMAND RESOURCES\n\nIf SUBSYSTEM specifies OFF, this is a finding with a severity of Category I.\n\nIf any of the other above switches specify OFF (other than the exception mentioned below), this is a finding and downgrade the severity to a Category II.\n\nIf COMMAND RESOURCE Security switch specifies OFF, this is not a finding.\n\nNote: At the discretion of the ISSO, COMMAND RESOURCE Security switch may specify OFF by defining ssid.NO.CMD.RESC.CHECKS in the MQADMIN (or MXADMIN if SCYCASE is set to MIXED) resource class.","fixText":"Switch profiles are special WebSphere MQ profiles that are used to turn on/off security checking for a type of resource. Due to the security exposure this creates, no profiles with the first two qualifiers of ssid.NO will be defined to the MQADMIN or MXADMIN class, with one exception. Due to the fact that (1) all sensitive WebSphere MQ commands are restricted to queue managers, channel initiators, and designated systems personnel, and (2) no command resource checking is performed on DISPLAY commands, at the discretion of the ISSO a ssid.NO.CMD.RESC.CHECKS switch profile may be defined to the MQADMIN or MXADMIN class. \n\nIdentify if any switch profile permissions exist using the sample TSS command: \n \nTSS WHOHAS MQADMIN(ssid.NO.)\n\nUse the \"TSS REVOKE(acid) MQADMIN(<SwitchProfileName>)\" to remove the profile.\n\nAn additional refresh to an active WebSphere MQ queue manager may be required. A sample is shown below using the value QMD1 as the queue manager name.\n\nFrom the Console:\n\n>QMD1 REFRESH SECURITY(*)","ccis":["CCI-000213"]},{"vulnId":"V-225631","ruleId":"SV-225631r1146221_rule","severity":"medium","ruleTitle":"WebSphere MQ connection class resources must be protected properly.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the TSS Data Collection:\n\n- SENSITVE.RPT(WHOHMCON).\n\nReview the following connection resources for each queue manager defined to the connection resource class:\n\nResource\tAuthorized Users\nssid.BATCH\tTSO and batch job ACIDs\nssid.CICS\tCICS region ACIDs\nssid.IMS\tIMS region ACIDs\nssid.CHIN\tChannel initiator ACIDs\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nFor all connection resources defined to the MQCONN, if the following guidance is true, this is not a finding.\n\nAccess authorization restricts access to the appropriate users as indicated above.\nAll access FAILUREs are logged.","fixText":"Review the following connection resources defined to the MQCONN or MXCONN resource class:\n\nResource\tAuthorized Users\nssid.BATCH\tTSO and batch job ACIDs\nssid.CICS\tCICS region ACIDs\nssid.IMS\tIMS region ACIDs\nssid.CHIN\tChannel initiator ACIDs\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nFor all connection resources defined to the MQCONN or MXCONN resource class, ensure the following items are in effect:\n\nAccess authorization restricts access to the appropriate users as indicated above.\nAll access FAILUREs are logged.\n\nThe following is a sample of the commands required to allow a batch user (USER1) to connect to a queue manager (QM1):\n\nTSS ADD(USER1) FAC(QM1MSTR)\nTSS PER(USER1) MQCONN(QM1.BATCH) ACC(READ)","ccis":["CCI-002234","CCI-000213"]},{"vulnId":"V-225632","ruleId":"SV-225632r1146224_rule","severity":"medium","ruleTitle":"WebSphere MQ dead letter and alias dead letter queues are not properly defined.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the  z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nReview the ssid report(s) and perform the following steps:\n\nFind the DISPLAY QMGR DEADQ command to locate the start of the dead-letter queue information. Review the DEADQ parameter to obtain the name of the real dead-letter queue.\n\nFrom the top of the report, find the QUEUE(dead-letter.queue.name) entry to locate the start of the real dead-letter queue definition. Review the GET and PUT parameters to determine their values, and ensure they conform to the specified security requirements. If the following values are set for the dead-letter.queue.name, this is not a finding.\n\nThe standard values are:\n\nGET(ENABLED)\nPUT(ENABLED)\n\nNote: dead-letter.queue.name is the value of the DEADQ parameter determined above.\n \nFrom the top of the report, find the QUEUE(dead-letter.queue.name.PUT) entry to locate the start of the alias dead-letter queue definition. Review the GET and PUT parameters to determine their values, and ensure they conform to those specified in the security requirements. If the following values are set for the dead-letter.queue.name.PUT, this is not a finding.\n\nThe standard values are:\n\nGET(DISABLED)\nPUT(ENABLED)\n\nNote: Dead-letter.queue.name is the value of the DEADQ parameter determined above.\n\nNote: The TARGQ parameter value for the alias queue will be the real dead letter queue name.\n\nNote: If an alias queue is not used in place of the dead-letter queue, then the ACP rules for the dead-letter queue must be coded to restrict unauthorized users and systems from reading the messages on the file.","fixText":"The systems programmer responsible for supporting WebSphere MQ will ensure that the dead-letter queue and its alias are properly defined.\n\nThe following scenario describes how to securely define a dead-letter queue:\n\nDefine the real dead-letter queue with attributes PUT(ENABLED) and GET(ENABLED).\n\nGive update authority for the dead-letter queue to CKTI (the WebSphere MQ-supplied CICS task initiator), channel initiators, and any automated application used for dead-letter queue maintenance.\n\nDefine an alias queue that resolves to the real dead-letter queue, but give the alias queue the attributes PUT(ENABLED) and GET(DISABLED).\n\nTo put a message on the dead-letter queue, an application uses the alias queue. The application does the following:\n\nRetrieve the name of the real dead-letter queue. To do this, it opens the queue manager object using MQOPEN, and then issues an MQINQ to get the dead-letter queue name.\n\nBuild the name of the alias queue by appending the characters \".PUT\" to this name, in this case, ssid.DEAD.QUEUE.PUT.\n\nOpen the alias queue, ssid.DEAD.QUEUE.PUT.\n\nPut the message on the real dead-letter queue by issuing an MQPUT against the alias queue.\n\nGive the userid associated with the application update authority to the alias, but no access to the real dead-letter queue.\n\nNote: If an alias queue is not used in place of the dead-letter queue, then the ACP rules for the dead-letter queue will be coded to restrict unauthorized users and systems from reading the messages on the file.\n\nUndeliverable messages can be routed to a dead-letter queue. Two levels of access should be established for these queues. The first level allows applications, as well as some WebSphere MQ objects, to put messages to this queue. The second level restricts the ability to get messages from this queue and protects sensitive data. This will be accomplished by defining an alias queue that resolves to the real dead-letter queue, but defines the alias queue with the attributes PUT(ENABLED) and GET(DISABLED). The ability to get messages from the dead-letter queue will be restricted to message channel agents (MCAs), CKTI (WebSphere MQ-supplied CICS task initiator), channel initiators utility, and any automated application used for dead-letter queue maintenance.","ccis":["CCI-001762","CCI-000764"]},{"vulnId":"V-225633","ruleId":"SV-225633r1146227_rule","severity":"medium","ruleTitle":"WebSphere MQ queue resource defined to the appropriate resource class must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the z/OS Data Collection:\n\n- MQSRPT(ssid).\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier). \n\nRefer to the following report produced by the Data Set and Resource Data Collection:\n\n- SENSITVE.RPT(WHOHMQUE).\n- SENSITVE.RPT(WHOHXQUE).\n\nFor all queues identified by the DISPLAY QUEUE(*) ALL command in the MQSRPT(ssid), these queues will be prefixed by ssid to identify the resources to be protected. Ensure these queue resources are defined to the MQQUEUE (MXQUEUE resource class if SCYCASE is set to MIXED). If the following guidance is true, this is not a finding.\n\nFor message queues (i.e., ssid.queuename), access authorization restricts access to users requiring the ability to get messages from and put messages to message queues. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list. Decentralized MQ Administrators, non-DECC datacenter users, can have up to ALTER access to the user message queues.\n\nFor system queues (i.e., ssid.SYSTEM.queuename), access authorization restricts WRITE and/or greater access to WebSphere MQ STCs, WebSphere MQ administrators, systems programming personnel, and CICS regions running WebSphere MQ applications.\n\nFor the following system queues, ensure that UPDATE access is restricted to auditors and users that require access to review message queues.\nssid.SYSTEM.COMMAND.INPUT\nssid.SYSTEM.COMMAND.REPLY\nssid.SYSTEM.CSQOREXX.*\nssid.SYSTEM.CSQUTIL.*\n\nFor the real dead-letter queue (to determine queue name refer to ZWMQ0053), ALTER access authorization restricts access to WebSphere MQ STCs, WebSphere MQ administrators, CICS regions running WebSphere MQ applications, and any automated application used for dead-letter queue maintenance.\n\nFor the alias dead-letter queue (to determine queue name refer to ZWMQ0053), UPDATE access authorization restricts access to users requiring the ability to put messages to the dead-letter queue. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.","fixText":"For all queue resources defined to the MQQUEUE or MXQUEUE resource class, ensure the following items are in effect:\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nFor message queues (i.e., ssid.queuename), access authorization restricts access to users requiring the ability to get messages from and put messages to message queues. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nFor system queues (i.e., ssid.SYSTEM.queuename), access authorization restricts access to WebSphere MQ STCs, WebSphere MQ administrators, systems programming personnel, and CICS regions running WebSphere MQ applications.\n\nFor the following system queues ensure that UPDATE access is restricted to WebSphere MQ STCs, WebSphere MQ administrators, systems programming personnel, CICS regions running WebSphere MQ applications, auditors, and users that require access to review message queues.\n\nssid.SYSTEM.COMMAND.INPUT\nssid.SYSTEM.COMMAND.REPLY\nssid.SYSTEM.CSQOREXX.*\n\nFor the following system queues (i.e., ssid.SYSTEM.CSQUTIL.*) ensure that UPDATE access is restricted to WebSphere MQ STCs, WebSphere MQ administrators, systems programming personnel, CICS regions running WebSphere MQ applications, and auditors.\n\nFor the real dead-letter queue (to determine queue name, refer to ZWMQ0053), access authorization restricts access to WebSphere MQ STCs, WebSphere MQ administrators, CICS regions running WebSphere MQ applications, and any automated application used for dead-letter queue maintenance.\n\nFor the alias dead-letter queue (to determine queue name, refer to ZWMQ0053), access authorization restricts access to users requiring the ability to put messages to the dead-letter queue. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nNote: If an alias queue is not used in place of the dead-letter queue, the RACF rules for the dead-letter queue will be coded to restrict unauthorized users and systems from reading the messages on the file.\n\nThe following is a sample of the commands required to allow a user (USER1) to get messages from or put messages to queues beginning with (PAY.) on subsystem (QM1):\n\nTSS PER(USER1) MQQUEUE(QM1.PAY.) ACC(UPDATE)","ccis":["CCI-000213"]},{"vulnId":"V-225634","ruleId":"SV-225634r1146230_rule","severity":"medium","ruleTitle":"WebSphere MQ Process resources must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the TSS Data Collection:\n\n- SENSITVE.RPT(WHOHMPRO).\n- SENSITVE.RPT(WHOHXPRO).\n\nFor all process resources (i.e., ssid.processname) defined to MQPROC resource class (or MXPROC resource class , if SCYCASE is set to MIXED), ensure access authorization restricts access to users requiring the ability to make process inquiries. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list. If this guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).","fixText":"For all process resources (i.e., ssid.processname) defined to MQPROC or MXPROC resource class, ensure access authorization restricts access to users requiring the ability to make process inquiries. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nThe following is a sample of the commands required to allow a user (USER1) to inquire on processes beginning with the letter V on queue manager (QM1):\n\nTSS ADD(USER1) FAC(QM1MSTR)\nTSS PER(USER1) MQPROC(QM1.V) ACC(READ) \n      ACTION(AUDIT)","ccis":["CCI-000213"]},{"vulnId":"V-225635","ruleId":"SV-225635r1146233_rule","severity":"medium","ruleTitle":"WebSphere MQ Namelist resources must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following reports produced by the TSS Data Collection:\n\n- SENSITVE.RPT(WHOHMNLI).\n- SENSITVE.RPT(WHOHXNLI).\n\nFor all namelist resources (i.e., ssid.namelist) defined to MQNLIST resource class (or MXNLIST resource class , if SCYCASE is set to MIXED), ensure access authorization restricts access to users requiring the ability to make namelist inquiries. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list. If this guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).","fixText":"For all namelist resources (i.e., ssid.namelist) defined to MQNLIST or MXNLIST resource class, ensure access authorization restricts access to users requiring the ability to make namelist inquiries. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nThe following is a sample of the commands required to allow a user (USER1) to inquire on namelist TST1 on queue manager (QM1):\n\nTSS ADD(USER1) FAC(QM1MSTR)\nTSS PER(USER1) MQNLIST(QM1.TST1.) ACC(READ) \n      ACTION(AUDIT)","ccis":["CCI-000213"]},{"vulnId":"V-225636","ruleId":"SV-225636r1146236_rule","severity":"medium","ruleTitle":"WebSphere MQ alternate user resources defined to appropriate ADMIN resource class must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following reports produced by the TSS Data Collection:\n\n- SENSITVE.RPT(WHOHMADM).\n- SENSITVE.RPT(WHOHXADM).\n\nFor all alternate user resources (i.e., ssid.ALTERNATE.USER.alternatelogonid) defined to MQADMIN resource class (or MXADMIN resource class, if SCYCASE is set to MIXED), ensure access authorization restricts access to users requiring the ability to use the alternate userid. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list. If this guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).","fixText":"For all alternate user resources (i.e., ssid.ALTERNATE.USER.alternateuserid) defined to MQADMIN or MXADMIN resource class, ensure access authorization restricts access to users requiring the ability to use the alternate userid. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nThe following is a sample of the commands required to allow payroll server (PAYSRV1) to specify alternate userids starting with the characters PS on queue manager (QM1):\n\nTSS ADD(USER1) FAC(QM1MSTR)\nTSS PER(USER1) MQADMIN(QM1.ALTERNATE.USER.PS) \n      ACC(UPDATE) ACTION(AUDIT)","ccis":["CCI-000213"]},{"vulnId":"V-225637","ruleId":"SV-225637r1146239_rule","severity":"medium","ruleTitle":"WebSphere MQ context resources defined to the appropriate ADMIN resource class must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following reports produced by the TSS Data Collection:\n\n- SENSITVE.RPT(WHOHMADM).\n- SENSITVE.RPT(WHOHXADM).\n\nFor all context resources (i.e., ssid.CONTEXT) defined to the MQADMIN resource class (or MXADMIN resource class, if SCYCASE is set to MIXED), ensure access authorization restricts access to users requiring the ability to pass or set identity and/or origin data for a message. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list. If this guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).","fixText":"For all context resources (i.e., ssid.CONTEXT) defined to the MQADMIN or MXADMIN resource class, ensure access authorization restricts access to users requiring the ability to pass or set identity and/or origin data for a message. This is difficult to determine. However, an item for concern may be a profile with * READ specified in the access list.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nThe following is a sample of the commands required to allow a systems programming group (SYS1) to offload and reload messages for queue manager (QM1):\n\nTSS ADD(SYS1) FAC(QM1MSTR)\nTSS PER(SYS1) MQADMIN(QM1.CONTEXT) ACC(UPDATE) ACTION(AUDIT)","ccis":["CCI-000213"]},{"vulnId":"V-225638","ruleId":"SV-225638r1146242_rule","severity":"medium","ruleTitle":"WebSphere MQ command resources defined to MQCMDS resource class are not protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following report produced by the Data Set and Resource Data Collection:\n\n- SENSITVE.RPT(WHOHMCMD).\n\nFor all command resources (i.e., ssid.command) defined to MQCMDS resource class, if the following guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nAccess authorization restricts access to the appropriate personnel as designated in the WebSphere MQ COMMAND SECURITY CONTROLS Table in the z/OS STIG Addendum.\n\nAll command access is logged as designated in the WebSphere MQ COMMAND SECURITY CONTROLS Table in the z/OS STIG Addendum.","fixText":"Command security validates userids authorized to issue WebSphere MQ commands. Command security will be active, and all profiles will be defined to the MQCMDS class.\n\nFor all command resources (i.e., ssid.command) defined to MQCMDS resource class, ensure the following items are in effect:\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).\n\nAccess authorization restricts access to the appropriate personnel as designated in the table titled \"WebSphere MQ Command Security Controls \" in the zOS STIG Addendum. \n\nAll command access is logged as designated in the table titled \"WebSphere MQ Command Security Controls \" in the zOS STIG Addendum.\n\nThe following is a sample of the commands required to allow a systems programming group (SYS1) to issue the command CLEAR QLOCAL in subsystem QM1:\n\nTSS ADD(SYS1) FAC(QM1MSTR)\nTSS PER(SYS1) MQCMDS(QM1.CLEAR.LOCAL) ACC(ALTER)\n\t\tACTION(AUDIT)","ccis":["CCI-000213","CCI-002234"]},{"vulnId":"V-225639","ruleId":"SV-225639r1146245_rule","severity":"medium","ruleTitle":"WebSphere MQ RESLEVEL resources in the appropriate ADMIN resource class must be protected in accordance with security requirements.","description":"WebSphere MQ resources allow for the control of administrator functions, connections, commands, queues, processes, and namelists. Some resources provide the ability to disable or bypass security checking. Failure to properly protect WebSphere MQ resources may result in unauthorized access. This exposure could compromise the availability, integrity, and confidentiality of system services, applications, and customer data.","checkContent":"Refer to the following reports produced by the Data Set and Resource Data Collection:\n\n- SENSITVE.RPT(WHOHMADM).\n- SENSITVE.RPT(WHOHXADM).\n\nAutomated Analysis\nRefer to the following report produced by the Data Set and Resource Data Collection:\n\n- PDI(ZWMQ0060).\n\nAccess authorization to these RESLEVEL resources restricts all access. No users are permitted access to ssid.RESLEVEL resources in the MQADMIN resource class (or MXADMIN resource class, if SCYCASE is set to MIXED). If this guidance is true, this is not a finding.\n\nNote: ssid is the queue manager name (a.k.a., subsystem identifier).","fixText":"RESLEVEL security profiles control the number of userids checked for API resource security. RESLEVEL security will not be implemented due to the following exposures and limitations:\n\nRESLEVEL is a powerful option that can cause the bypassing of all security checks.\n\nSecurity audit records are not created when the RESLEVEL profile is utilized.\n\nIf the WARNING option is specified on a RESLEVEL profile, no warning messages are produced.\n\nTo protect against any profile in the MQADMIN or MXADMIN class, such as ssid.**, resolving to a RESLEVEL profile, an ssid.RESLEVEL permission will be created for each queue manager with an access of none.\n\nThe following sample command prevents access to ssid.RESLEVEL:\n\n TSS PER(ALL) MQADMIN(ssid.RESLEVEL) ACCESS(NONE)","ccis":["CCI-000213","CCI-001762"]}]}