Services RFP - procure.ohio.gov 2 Word file.docx  · Web viewThese are in addition to the standard...

277
SUPPLEMENT 2 FEDERAL GOVERNMENT SECURITY REQUIREMENTS 1

Transcript of Services RFP - procure.ohio.gov 2 Word file.docx  · Web viewThese are in addition to the standard...

SUPPLEMENT 2

FEDERAL GOVERNMENT

SECURITY REQUIREMENTS

1

FEDERAL GOVERNMENT

SECURITY REQUIREMENTS

The links listed below contain generic guidelines for all web application specific security requirements regardless of the technology used for a project. These are in addition to the standard operating system STIG requirements enforced throughout our environment. Black box testing and a vulnerability assessment will be performed prior to system acceptance.

Use federal requirements in response to this Request for Proposal except the dual factor Common Access Card authentication requirements. We do not require the use of a Common Access Card for this system.

Federal Security Technical Implementation Guides (STIGs)

Web Server Specific Guides -https://iase.disa.mil/stigs/app-security/web-servers/Pages/index.aspx

Application Server Specific Guides -https://iase.disa.mil/stigs/app-security/app-servers/Pages/index.aspx

Database Server Specific Guides -https://iase.disa.mil/stigs/app-security/database/Pages/index.aspx

Operating System Specific Guides -https://iase.disa.mil/stigs/os/Pages/index.aspx

2

UNCLASSIFIED Page 1 of 80

UNCLASSIFIED

Application Server Security Requirements Guide Version: 2Release: 3

26 Jan 2018XSL Release 1/29/2015 Sort by: VulidDescription: The Application Server Security Requirements Guide (SRG) is published as a tool to improve the security of Department of Defense (DoD) information systems. The requirements are derived from the NIST 800- 53 and related documents. Comments or proposed revisions to this document should be sent via e-mail to the following address: [email protected].

Group ID (Vulid): V-35070Group Title: SRG-APP-000001-AS-000001Rule ID: SV-46335r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000001-AS-000001Rule Title: The application server must limit the number of concurrent sessions to an organization-defined number for all accounts and/or account types.

Vulnerability Discussion: Application management includes the ability to control the number of sessions that utilize an application by all accounts and/or account types. Limiting the number of allowed sessions is helpful in

UNCLASSIFIED Page 2 of 80

limiting risks related to Denial of Service attacks.

Application servers host and expose business logic and application processes.

The application server must possess the capability to limit the maximum number of concurrent sessions in a manner that affects the entire application server or on an individual application basis.

Although there is some latitude concerning the settings themselves, the settings should follow DoD-recommended values, but the settings should be configurable to allow for future DoD direction.

While the DoD will specify recommended values, the values can be adjusted to accommodate the operational requirement of a given system.

Check Content:Review the application server product documentation and configuration to determine if the number of concurrent sessions can be limited to the organization-defined number of sessions for all accounts and/or account types.

If a feature to limit the number of concurrent sessions is not available, is not set, or is set to unlimited, this is a finding.

Fix Text: Configure the application server to limit the number of concurrent sessions for all accounts and/or account types to the organization-defined number.

CCI: CCI-000054

Group ID (Vulid): V-35089Group Title: SRG-APP-000014-AS-000009Rule ID: SV-46376r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000014-AS-000009Rule Title: The application server must use encryption strength in accordance with the categorization of the management data during remote access management sessions.

Vulnerability Discussion: Remote management access is accomplished by leveraging common communication protocols and establishing a remote connection to the application server via a network for the purposes of managing the application server. If cryptography is not used, then the session data traversing the remote connection could be intercepted and compromised.

Types of management interfaces utilized by an application server include web-based HTTPS interfaces as well as command line-based management interfaces.

Check Content:Check the application server configuration to ensure all management interfaces use encryption in accordance with the management data.

If the application server is not configured to encrypt remote access management sessions in accordance with the categorization of the management data, this is a finding.

Fix Text: Configure the application server to use encryption strength in accordance with the categorization of the management data during remote access management sessions.

CCI: CCI-000068

UNCLASSIFIED Page 3 of 80

Group ID (Vulid): V-35090Group Title: SRG-APP-000015-AS-000010Rule ID: SV-46377r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000015-AS-000010Rule Title: The application server must implement cryptography mechanisms to protect the integrity of the remote access session.

Vulnerability Discussion: Encryption is critical for protection of remote access sessions. If encryption is not being used for integrity, malicious users may gain the ability to modify the application server configuration. The use of cryptography for ensuring integrity of remote access sessions mitigates that risk.

Application servers utilize a web management interface and scripted commands when allowing remote access. Web access requires the use of TLS and scripted access requires using ssh or some other form of approved cryptography. Application servers must have a capability to enable a secure remote admin capability.

FIPS 140-2 approved TLS versions include TLS V1.0 or greater.

FIPS 140-2 approved TLS versions must be enabled and non-FIPS-approved SSL versions must be

disabled. NIST SP 800-52 specifies the preferred configurations for government systems.

Check Content:Review the application server documentation and configuration to ensure the application server is configured to use cryptography to protect the integrity of remote access sessions.

If the application server is not configured to implement cryptography mechanisms to protect the integrity of remote access sessions, this is a finding.

Fix Text: Configure the application server to implement cryptography mechanisms to protect the integrity of the remote access session.

CCI: CCI-001453

Group ID (Vulid): V-35096Group Title: SRG-APP-000068-AS-000035Rule ID: SV-46383r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000068-AS-000035Rule Title: The application server management interface must display the Standard Mandatory DoD Notice and Consent Banner before granting access to the system.

Vulnerability Discussion: Application servers are required to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the system management interface, providing privacy and security notices consistent with applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance that states that:

UNCLASSIFIED Page 4 of 80

(i) users are accessing a U.S. Government information system;(ii) system usage may be monitored, recorded, and subject to audit;(iii) unauthorized use of the system is prohibited and subject to criminal and civil penalties; and(iv) the use of the system indicates consent to monitoring and recording.

System use notification messages can be implemented in the form of warning banners displayed when individuals log on to the information system.

System use notification is intended only for information system access including an interactive logon interface with a human user, and is not required when an interactive interface does not exist.

Use this banner for desktops, laptops, and other devices accommodating banners of 1300 characters. The banner shall be implemented as a click-through banner at logon (to the extent permitted by the operating system), meaning it prevents further activity on the information system unless and until the user executes a positive action to manifest agreement by clicking on a box indicating "OK".

"You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only.By using this IS (which includes any device attached to this IS), you consent to the following conditions:-The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations.-At any time, the USG may inspect and seize data stored on this IS.-Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG-authorized purpose.-This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy.-Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details."

Check Content:Review the application server management interface configuration to verify the application server is configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access.

The banner must read:

"You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only.By using this IS (which includes any device attached to this IS), you consent to the following conditions:-The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations.-At any time, the USG may inspect and seize data stored on this IS.-Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG-authorized purpose.-This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy.-Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details."

UNCLASSIFIED Page 5 of 80

If the application server management interface does not display the banner or displays an unapproved banner, this is a finding.

Fix Text: Configure the application server management interface so it displays the Standard Mandatory DoD Notice and Consent Banner prior to allowing access.

The banner must read:

"You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only.By using this IS (which includes any device attached to this IS), you consent to the following conditions:-The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations.-At any time, the USG may inspect and seize data stored on this IS.-Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG-authorized purpose.-This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy.-Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details."

CCI: CCI-000048

Group ID (Vulid): V-35098Group Title: SRG-APP-000069-AS-000036Rule ID: SV-46385r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000069-AS-000036Rule Title: The application server management interface must retain the Standard Mandatory DoD Notice and Consent Banner on the screen until users acknowledge the usage conditions and take explicit actions to log on for further access.

Vulnerability Discussion: To establish acceptance of system usage policy, a click-through banner at the application server management interface logon is required. The banner shall prevent further activity on the application server unless and until the user executes a positive action to manifest agreement by clicking on a box indicating "OK".

Check Content:Review application server management interface product documentation and configuration to determine that the logon banner can be displayed until the user takes action to acknowledge the agreement.

If the banner screen allows continuation to the application server without user interaction, this is a finding.

Fix Text: Configure the application server management interface to retain the logon banner on the screen until the user takes explicit action to logon to the server.

CCI: CCI-000050

UNCLASSIFIED Page 6 of 80

Group ID (Vulid): V-35135Group Title: SRG-APP-000080-AS-000045Rule ID: SV-46422r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000080-AS-000045Rule Title: The application server must protect against an individual (or process acting on behalf of an individual) falsely denying having performed organization-defined actions to be covered by non-repudiation.

Vulnerability Discussion: Non-repudiation of actions taken is required in order to maintain application integrity. Examples of particular actions taken by individuals include creating information, sending a message, approving information (e.g., indicating concurrence or signing a contract), and receiving a message.

Non-repudiation protects individuals against later claims by an author of not having authored a particular document, a sender of not having transmitted a message, a receiver of not having received a message, or a signatory of not having signed a document.

Typical application server actions requiring non-repudiation will be related to application deployment among developers/users and administrative actions taken by admin personnel.

Check Content:Review application server product documentation and server configuration to determine if the system does protect against an individual's (or process acting on behalf of an individual) falsely denying having performed organization-defined actions to be covered by non-repudiation.

If the application does not meet this requirement, this is a finding.

Fix Text: Configure the application server to protect against an individual's (or process acting on behalf of an individual) falsely denying having performed organization-defined actions to be covered by non-repudiation.

CCI: CCI-000166

Group ID (Vulid): V-35139Group Title: SRG-APP-000086-AS-000048Rule ID: SV-46426r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000086-AS-000048Rule Title: For application servers providing log record aggregation, the application server must compile log records from organization-defined information system components into a system-wide log trail that is time- correlated with an organization-defined level of tolerance for the relationship between time stamps of individual records in the log trail.

Vulnerability Discussion: Log generation and log records can be generated from various components within the application server. The list of logged events is the set of events for which logs are to be generated. This set of events is typically a subset of the list of all events for which the system is capable of generating log records (e.g., logable events, time stamps, source and destination addresses, user/process identifiers, event descriptions, success/fail indications, filenames involved, and access control or flow control rules invoked).

The events occurring must be time-correlated in order to conduct accurate forensic analysis. In addition, the correlation must meet certain tolerance criteria. For instance, DoD may define that the time stamps of different

UNCLASSIFIED Page 7 of 80

logged events must not differ by any amount greater than ten seconds. It is also acceptable for the application server to utilize an external logging tool that provides this capability.

Check Content:Review the application server log feature configuration to determine if the application server or an external logging tool in conjunction with the application server does compile log records from multiple components within the server into a system-wide log trail that is time-correlated with an organization-defined level of tolerance for the relationship between time stamps of individual records in the log trail.

If the application server does not meet this requirement, this is a finding.

Fix Text: Configure the application server or an external logging tool supporting the application server to compile log records from multiple components within the server into a system-wide log trail that is time-correlated with an organization-defined level of tolerance for the relationship between time stamps of individual records in the log trail.

CCI: CCI-000174

Group ID (Vulid): V-35141Group Title: SRG-APP-000089-AS-000050Rule ID: SV-46428r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000089-AS-000050Rule Title: The application server must generate log records for access and authentication events.

Vulnerability Discussion: Log records can be generated from various components within the application server. From an application server perspective, certain specific application server functionalities may be logged as well. The application server must allow the definition of what events are to be logged. As conditions change, the number and types of events to be logged may change, and the application server must be able to facilitate these changes.

The minimum list of logged events should be those pertaining to system startup and shutdown, system access, and system authentication events.

Check Content:Review the application server documentation and the deployed system configuration to determine if, at a minimum, system startup and shutdown, system access, and system authentication events are logged.

If the logs do not include the minimum logable events, this is a finding.

Fix Text: Configure the application server to generate log records for system startup and shutdown, system access, and system authentication events.

CCI: CCI-000169

Group ID (Vulid): V-35142Group Title: SRG-APP-000090-AS-000051Rule ID: SV-46429r3_ruleSeverity: CAT II

UNCLASSIFIED Page 8 of 80

Rule Version (STIG-ID): SRG-APP-000090-AS-000051Rule Title: The application server must allow only the ISSM (or individuals or roles appointed by the ISSM) to select which logable events are to be logged.

Vulnerability Discussion: Log records can be generated from various components within the application server, (e.g., httpd, beans, etc.) From an application perspective, certain specific application functionalities may be logged, as well.

The list of logged events is the set of events for which logs are to be generated. This set of events is typically a subset of the list of all events for which the system is capable of generating log records (e.g., logable events, time stamps, source and destination addresses, user/process identifiers, event descriptions, success/fail indications, filenames involved, and access control or flow control rules invoked).

Application servers utilize role-based access controls in order to specify the individuals who are allowed to configure application component logable events. The application server must be configured to select which personnel are assigned the role of selecting which logable events are to be logged.

The personnel or roles that can select logable events are only the ISSM (or individuals or roles appointed by the ISSM).

Check Content:Review application server product documentation and configuration to determine if the system only allows the ISSM (or individuals or roles appointed by the ISSM) to change logable events.

If the system is not configured to perform this function, this is a finding.

Fix Text: Configure the application server to only allow the ISSM (or individuals or roles appointed by the ISSM) to change logable events.

CCI: CCI-000171

Group ID (Vulid): V-35143Group Title: SRG-APP-000091-AS-000052Rule ID: SV-46430r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000091-AS-000052Rule Title: The application server must generate log records when successful/unsuccessful attempts to access subject privileges occur.

Vulnerability Discussion: Accessing a subject's privileges can be used to elevate a lower-privileged subject's privileges temporarily in order to cause harm to the application server or to gain privileges to operate temporarily for a designed purpose. When these actions take place, the event needs to be logged.

Application servers either provide a local user store, or they integrate with enterprise user stores like LDAP. When the application server provides the user store and enforces authentication, the application server must generate a log record when modification of privileges is successfully or unsuccessfully performed.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records when successful/unsuccessful attempts are made to access privileges.

UNCLASSIFIED Page 9 of 80

If log records are not generated, this is a finding.

Fix Text: Configure the application server to generate log records when privileges are successfully/unsuccessfully accessed.

CCI: CCI-000172

Group ID (Vulid): V-35148Group Title: SRG-APP-000092-AS-000053Rule ID: SV-46435r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000092-AS-000053Rule Title: The application server must initiate session logging upon startup.

Vulnerability Discussion: Session logging activities are developed, integrated, and used in consultation with legal counsel in accordance with applicable federal laws, Executive Orders, directives, policies, or regulations.

Check Content:Review the application server product documentation and server configuration to determine if the application server initiates session logging on application server startup.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to initiate session logging on application server startup.

CCI: CCI-001464

Group ID (Vulid): V-35150Group Title: SRG-APP-000093-AS-000054Rule ID: SV-46437r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000093-AS-000054Rule Title: The application server must provide the capability for authorized users to capture, record, and log all content related to a user session.

Vulnerability Discussion: The application server must be capable of enabling a setting for troubleshooting or debugging purposes which will log all user session information specified by an authorized user.

Check Content:Review the application server documentation to determine if the application server can be configured to capture/record and log all content related to a user session.

If the application server does not have the capability to allow an authorized user to capture, record, and log all content related to a user session, this is a finding.

Fix Text: Configure the application server to provide the capability for authorized users to capture, record, and log all content related to a user session.

UNCLASSIFIED Page 10 of 80

CCI: CCI-001462

Group ID (Vulid): V-35159Group Title: SRG-APP-000095-AS-000056Rule ID: SV-46446r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000095-AS-000056Rule Title: The application server must produce log records containing information to establish what type of events occurred.

Vulnerability Discussion: Information system logging capability is critical for accurate forensic analysis. Without being able to establish what type of event occurred, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible.

Log record content that may be necessary to satisfy the requirement of this control includes time stamps, source and destination addresses, user/process identifiers, event descriptions, success/fail indications, filenames involved, and access control or flow control rules invoked.

Application servers must log all relevant log data that pertains to the application server. Examples of relevant data include, but are not limited to, Java Virtual Machine (JVM) activity, HTTPD/Web server activity, and application server-related system process activity.

Check Content:Review the application server log configuration to determine if the application server produces log records showing what type of event occurred.

If the log data does not show the type of event, this is a finding.

Fix Text: Configure the application server to include the event type in the log data.

CCI: CCI-000130

Group ID (Vulid): V-35165Group Title: SRG-APP-000096-AS-000059Rule ID: SV-46452r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000096-AS-000059Rule Title: The application server must produce log records containing sufficient information to establish when (date and time) the events occurred.

Vulnerability Discussion: Application server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct order of the events that occurred is important during forensic analysis. Events that appear harmless by themselves might be flagged as a potential threat when properly viewed in sequence. By also establishing the event date and time, an event can be properly viewed with an enterprise tool to fully see a possible threat in its entirety.

UNCLASSIFIED Page 11 of 80

Without sufficient information establishing when the log event occurred, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

In addition to logging event information, application servers must also log the corresponding dates and times of these events. Examples of event data include, but are not limited to, Java Virtual Machine (JVM) activity, HTTPD activity, and application server-related system process activity.

Check Content:Review the logs on the application server to determine if the date and time are included in the log event data.

If the date and time are not included, this is a finding.

Fix Text: Configure the application server logging system to log date and time with the event.

CCI: CCI-000131

Group ID (Vulid): V-35167Group Title: SRG-APP-000097-AS-000060Rule ID: SV-46454r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000097-AS-000060Rule Title: The application server must produce log records containing sufficient information to establish where the events occurred.

Vulnerability Discussion: Application server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct location or process within the application server where the events occurred is important during forensic analysis. To determine where an event occurred, the log data must contain data such as application components, modules, session identifiers, filenames, host names, and functionality.

Check Content:Review the logs on the application server to determine if the logs contain information that establishes where within the application server the event occurred. The data in the log file should establish the component, module, session identifier, filename, host name, and functionality within the application server where an event occurred.

If the application server does not log where within the application server the event took place, this is a finding.

Fix Text: Configure the application server logging system to log where the event took place.

CCI: CCI-000132

Group ID (Vulid): V-35170Group Title: SRG-APP-000098-AS-000061Rule ID: SV-46457r3_ruleSeverity: CAT II

UNCLASSIFIED Page 12 of 80

Rule Version (STIG-ID): SRG-APP-000098-AS-000061Rule Title: The application server must produce log records containing sufficient information to establish the sources of the events.

Vulnerability Discussion: Application server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct source, e.g., source IP, of the events is important during forensic analysis. Correctly determining the source will add information to the overall reconstruction of the logable event. By determining the source of the event correctly, analysis of the enterprise can be undertaken to determine if the event compromised other assets within the enterprise.

Without sufficient information establishing the source of the logged event, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

Check Content:Review the application server documentation and deployment configuration to determine if the application server is configured to generate sufficient information to resolve the source, e.g., source IP, of the log event.

Request a user access the application server and generate logable events, and then review the logs to determine if the source of the event can be established.

If the source of the event cannot be determined, this is a finding.

Fix Text: Configure the application server to generate the source of each logable event.

CCI: CCI-000133

Group ID (Vulid): V-35176Group Title: SRG-APP-000099-AS-000062Rule ID: SV-46463r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000099-AS-000062Rule Title: The application server must produce log records that contain sufficient information to establish the outcome of events.

Vulnerability Discussion: Information system logging capability is critical for accurate forensic analysis. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, filenames involved, access control or flow control rules invoked.

Success and failure indicators ascertain the outcome of a particular application server event or function. As such, they also provide a means to measure the impact of an event and help authorized personnel to determine the appropriate response. Event outcome may also include event-specific results (e.g., the security state of the information system after the event occurred).

Check Content:Review application server documentation and the log files on the application server to determine if the logs

UNCLASSIFIED Page 13 of 80

contain information that establishes the outcome of event data.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server logging system to log the event outcome.

CCI: CCI-000134

Group ID (Vulid): V-35182Group Title: SRG-APP-000100-AS-000063Rule ID: SV-46469r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000100-AS-000063Rule Title: The application server must generate log records containing information that establishes the identity of any individual or process associated with the event.

Vulnerability Discussion: Information system logging capability is critical for accurate forensic analysis. Log record content that may be necessary to satisfy the requirement of this control includes: time stamps, source and destination addresses, user/process identifiers, event descriptions, success/fail indications, filenames involved, and access control or flow control rules invoked.

Application servers have differing levels of logging capabilities that can be specified by setting a verbosity level. The application server must, at a minimum, be capable of establishing the identity of any user or process that is associated with any particular event.

Check Content:Review application server documentation and the log files on the application server to determine if the logs contain information that establishes the identity of the user or process associated with log event data.

If the application server does not produce logs that establish the identity of the user or process associated with log event data, this is a finding.

Fix Text: Configure the application server logging system to log the identity of the user or process related to the events.

CCI: CCI-001487

Group ID (Vulid): V-35186Group Title: SRG-APP-000108-AS-000067Rule ID: SV-46473r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000108-AS-000067Rule Title: The application server must alert the SA and ISSO, at a minimum, in the event of a log processing failure.

Vulnerability Discussion: Logs are essential to monitor the health of the system, investigate changes that occurred to the system, or investigate a security incident. When log processing fails, the events during the failure can be lost. To minimize the timeframe of the log failure, an alert needs to be sent to the SA and ISSO at a minimum.

UNCLASSIFIED Page 14 of 80

Log processing failures include, but are not limited to, failures in the application server log capturing mechanisms or log storage capacity being reached or exceeded. In some instances, it is preferred to send alarms to individuals rather than to an entire group. Application servers must be able to trigger an alarm and send an alert to, at a minimum, the SA and ISSO in the event there is an application server log processing failure.

Check Content:Review application server log configuration. Verify the application server sends alerts to the SA and ISSO in the event of a log processing failure.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server log feature to alert the SA and ISSO in the event of a log processing failure.

CCI: CCI-000139

Group ID (Vulid): V-35190Group Title: SRG-APP-000109-AS-000068Rule ID: SV-46477r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000109-AS-000068Rule Title: The application server must shut down by default upon log failure (unless availability is an overriding concern).

Vulnerability Discussion: It is critical that, when a system is at risk of failing to process logs, it detects and takes action to mitigate the failure. Log processing failures include software/hardware errors, failures in the log capturing mechanisms, and log storage capacity being reached or exceeded. During a failure, the application server must be configured to shut down unless the application server is part of a high availability system.

When availability is an overriding concern, other approved actions in response to a log failure are as follows:

(i) If the failure was caused by the lack of log record storage capacity, the application must continue generating log records if possible (automatically restarting the log service if necessary), overwriting the oldest log records in a first-in-first-out manner.

(ii) If log records are sent to a centralized collection server and communication with this server is lost or the server fails, the application must queue log records locally until communication is restored or until the log records are retrieved manually. Upon restoration of the connection to the centralized collection server, action should be taken to synchronize the local log data with the collection server.

Check Content:If the application server is a high availability system, this finding is NA.

Review the application server configuration settings to determine if the application server is configured to shut down on a log failure.

If the application server is not configured to shut down on a log failure, this is a finding.

Fix Text: If the application server is a high availability system, this finding is NA.

Configure the application server to shut down on a log failure.

UNCLASSIFIED Page 15 of 80

CCI: CCI-000140

Group ID (Vulid): V-35191Group Title: SRG-APP-000109-AS-000070Rule ID: SV-46478r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000109-AS-000070Rule Title: The application server must be configured to fail over to another system in the event of log subsystem failure.

Vulnerability Discussion: This requirement is dependent upon system MAC and availability. If the system MAC and availability do not specify redundancy requirements, this requirement is NA.

It is critical that, when a system is at risk of failing to process logs as required, it detects and takes action to mitigate the failure.

Application servers must be capable of failing over to another system which can handle application and logging functions upon detection of an application log processing failure. This will allow continual operation of the application and logging functions while minimizing the loss of operation for the users and loss of log data.

Check Content:If the system MAC level and availability do not require redundancy, this requirement is NA.

Review the system's accreditation documentation to determine system MAC and confidentiality requirements. Review application server configuration settings to determine if the application server is configured to fail over operation to another system when the log subsystem fails to operate.

If the system MAC level requires redundancy and the application server is not configured to fail over to another system which can handle application and log functions when a log subsystem failure occurs, this is a finding.

Fix Text: If the system MAC level and availability do not require redundancy, this requirement is NA.

Configure the application server to fail over to another system which can handle log functions when the logging subsystem fails.

CCI: CCI-000140

Group ID (Vulid): V-35203Group Title: SRG-APP-000116-AS-000076Rule ID: SV-46490r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000116-AS-000076Rule Title: The application server must use internal system clocks to generate time stamps for log records.

Vulnerability Discussion: Without the use of an approved and synchronized time source configured on the systems, events cannot be accurately correlated and analyzed to determine what is transpiring within the application server.

UNCLASSIFIED Page 16 of 80

If an event has been triggered on the network, and the application server is not configured with the correct time, the event may be seen as insignificant, when in reality the events are related and may have a larger impact across the network. Synchronization of system clocks is needed in order to correctly correlate the timing of events that occur across multiple systems. Determining the correct time a particular event occurred on a system, via time stamps, is critical when conducting forensic analysis and investigating system events.

Application servers must utilize the internal system clock when generating time stamps and log records.

Check Content:Review the application server configuration files to determine if the internal system clock is used for time stamps. If this is not feasible, an alternative workaround is to take an action that generates an entry in the logs and then immediately query the operating system for the current time. A reasonable match between the two times will suffice as evidence that the system is using the internal clock for timestamps.

If the application server does not use the internal system clock to generate time stamps, this is a finding.

Fix Text: Configure the application server to use internal system clocks to generate time stamps for log records.

CCI: CCI-000159

Group ID (Vulid): V-35205Group Title: SRG-APP-000118-AS-000078Rule ID: SV-46492r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000118-AS-000078Rule Title: The application server must protect log information from any type of unauthorized read access.

Vulnerability Discussion: If log data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity is difficult, if not impossible, to achieve. In addition, access to log records provides information an attacker could potentially use to his or her advantage.

Application servers contain admin interfaces that allow reading and manipulation of log records. Therefore, these interfaces should not allow unfettered access to those records. Application servers also write log data to log files which are stored on the OS, so appropriate file permissions must also be used to restrict access.

Log information includes all information (e.g., log records, log settings, transaction logs, and log reports) needed to successfully log information system activity. Application servers must protect log information from unauthorized read access.

Check Content:Review the configuration settings to determine if the application server log features protect log information from unauthorized access.

Review file system settings to verify the application server sets secure file permissions on log files.

If the application server does not protect log information from unauthorized read access, this is a finding.

Fix Text: Configure the application server to protect log information from unauthorized read access.

CCI: CCI-000162

UNCLASSIFIED Page 17 of 80

Group ID (Vulid): V-35212Group Title: SRG-APP-000120-AS-000080Rule ID: SV-46499r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000120-AS-000080Rule Title: The application server must protect log information from unauthorized deletion.

Vulnerability Discussion: If log data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity is difficult, if not impossible, to achieve.

Application servers contain admin interfaces that allow reading and manipulation of log records. Therefore, these interfaces should not allow for unfettered access to those records. Application servers also write log data to log files which are stored on the OS, so appropriate file permissions must also be used to restrict access.

Log information includes all information (e.g., log records, log settings, transaction logs, and log reports) needed to successfully log information system activity. Application servers must protect log information from unauthorized deletion.

Check Content:Review the configuration settings to determine if the application server log features protect log information from unauthorized deletion.

Review file system settings to verify the application server sets secure file permissions on log files to prevent unauthorized deletion.

If the application server does not protect log information from unauthorized deletion, this is a finding.

Fix Text: Configure the application server to protect log information from unauthorized deletion.

CCI: CCI-000164

Group ID (Vulid): V-35213Group Title: SRG-APP-000121-AS-000081Rule ID: SV-46500r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000121-AS-000081Rule Title: The application server must protect log tools from unauthorized access.

Vulnerability Discussion: Protecting log data also includes identifying and protecting the tools used to view and manipulate log data.

Depending upon the log format and application, system and application log tools may provide the only means to manipulate and manage application and system log data.

It is, therefore, imperative that access to log tools be controlled and protected from unauthorized access.

Application servers provide a web- and/or a command line-based management functionality for managing the application server log capabilities. In addition, subsets of log tool components may be stored on the file system as jar or xml configuration files. The application server must ensure that in addition to protecting any web-based log

UNCLASSIFIED Page 18 of 80

tools, any file system-based tools are protected as well.

Check Content:Review the application server documentation and server configuration to determine if the application server protects log tools from unauthorized access.

Request a system administrator attempt to access log tools while logged into the server in a role that does not have the requisite privileges.

If the application server does not protect log tools from unauthorized access, this is a finding. Fix

Text: Configure the application server or OS to protect log tools from unauthorized access. CCI:

CCI-001493

Group ID (Vulid): V-35214Group Title: SRG-APP-000122-AS-000082Rule ID: SV-46501r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000122-AS-000082Rule Title: The application server must protect log tools from unauthorized modification.

Vulnerability Discussion: Protecting log data also includes identifying and protecting the tools used to view and manipulate log data.

Depending upon the log format and application, system and application log tools may provide the only means to manipulate and manage application and system log data.

It is, therefore, imperative that access to log tools be controlled and protected from unauthorized modification. If an attacker were to modify log tools, he could also manipulate logs to hide evidence of malicious activity.

Application servers provide a web- and/or a command line-based management functionality for managing the application server log capabilities. In addition, subsets of log tool components may be stored on the file system as jar or xml configuration files. The application server must ensure that in addition to protecting any web-based log tools, any file system-based tools are protected as well.

Check Content:Review the application server documentation and server configuration to determine if the application server protects log tools from unauthorized modification. Request a system administrator attempt to modify log tools while logged into the server in a role that does not have the requisite privileges.

Locate binary copies of log tool executables that are located on the file system and attempt to modify using unprivileged credentials.

If the application server does not protect log tools from unauthorized modification, this is a finding.

Fix Text: Configure the application server or the OS to protect log tools from unauthorized modification.

CCI: CCI-001494

UNCLASSIFIED Page 19 of 80

Group ID (Vulid): V-35215Group Title: SRG-APP-000123-AS-000083Rule ID: SV-46502r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000123-AS-000083Rule Title: The application server must protect log tools from unauthorized deletion.

Vulnerability Discussion: Protecting log data also includes identifying and protecting the tools used to view and manipulate log data.

Depending upon the log format and application, system and application log tools may provide the only means to manipulate and manage application and system log data.

It is, therefore, imperative that access to log tools be controlled and protected from unauthorized modification. If an attacker were to delete log tools, the application server administrator would have no way of managing or viewing the logs.

Application servers provide a web- and/or a command line-based management functionality for managing the application server log capabilities. In addition, subsets of log tool components may be stored on the file system as jar, class or xml configuration files. The application server must ensure that in addition to protecting any web- based log tools, any file system-based tools are protected from unauthorized deletion as well.

Check Content:Review the application server documentation and server configuration to determine if the application server protects log tools from unauthorized deletion.

Locate binary copies of log tool executables that are located on the file system and attempt to delete using unprivileged credentials.

If the application server does not protect log tools from unauthorized deletion, this is a finding.

Fix Text: Configure the application server or the OS to protect log tools from unauthorized deletion.

CCI: CCI-001495

Group ID (Vulid): V-35216Group Title: SRG-APP-000125-AS-000084Rule ID: SV-46503r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000125-AS-000084Rule Title: The application server must back up log records at least every seven days onto a different system or system component than the system or component being logged.

Vulnerability Discussion: Protection of log data includes assuring log data is not accidentally lost or deleted. Backing up log records to a different system or onto separate media from the system the application server is actually running on helps to assure that in the event of a catastrophic system failure, the log records will be retained.

Check Content:

UNCLASSIFIED Page 20 of 80

Review the application server configuration to determine if the application server backs up log records every seven days onto a different system or media from the system being logged.

If the application server does not back up log records every seven days onto a different system or media from the system being logged, this is a finding.

Fix Text: Configure the application server to back up log records every seven days onto a different system or media from the system being logged.

CCI: CCI-001348

Group ID (Vulid): V-35217Group Title: SRG-APP-000126-AS-000085Rule ID: SV-46504r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000126-AS-000085Rule Title: The application server must use cryptographic mechanisms to protect the integrity of log information.

Vulnerability Discussion: Protection of log records is of critical importance. Encrypting log records provides a level of protection that does not rely on host-based protections that can be accidentally misconfigured, such as file system permissions. Cryptographic mechanisms are the industry-established standard used to protect the integrity of log data. An example of a cryptographic mechanism is the computation and application of a cryptographic- signed hash using asymmetric cryptography.

Check Content:Review the application server documentation and configuration to determine if the application server can protect log data using cryptographic means.

If the application server is not configured to encrypt and sign logs, this is a finding.

Fix Text: Configure the application server to encrypt and sign logs.

CCI: CCI-001350

Group ID (Vulid): V-35224Group Title: SRG-APP-000133-AS-000092Rule ID: SV-46511r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000133-AS-000092Rule Title: The application server must limit privileges to change the software resident within software libraries.

Vulnerability Discussion: Application servers have the ability to specify that the hosted applications utilize shared libraries. The application server must have a capability to divide roles based upon duties wherein one project user (such as a developer) cannot modify the shared library code of another project user. The application server must also be able to specify that non-privileged users cannot modify any shared library code at all.

Check Content:Check the application server documentation and configuration to determine if the application server provides role- based access that limits the capability to change shared software libraries.

UNCLASSIFIED Page 21 of 80

Validate file permission settings to ensure library files are secured in relation to OS access.

If the application server does not meet this requirement, this is a finding.

Fix Text: Configure the application server to limit privileges to change the software resident within software libraries through the use of defined user roles and file permissions.

CCI: CCI-001499

Group ID (Vulid): V-35234Group Title: SRG-APP-000141-AS-000095Rule ID: SV-46521r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-AS-000095Rule Title: The application server must adhere to the principles of least functionality by providing only essential capabilities.

Vulnerability Discussion: Application servers provide a myriad of differing processes, features and functionalities. Some of these processes may be deemed to be unnecessary or too unsecure to run on a production DoD system. Application servers must provide the capability to disable or deactivate functionality and services that are deemed to be non-essential to the server mission or can adversely impact server performance, for example, disabling dynamic JSP reloading on production application servers as a best practice.

Check Content:Review the application server documentation and configuration to determine if the application server can disable non-essential features and capabilities.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to use only essential features and capabilities.

CCI: CCI-000381

Group ID (Vulid): V-35299Group Title: SRG-APP-000148-AS-000101Rule ID: SV-46586r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000148-AS-000101Rule Title: The application server must use an enterprise user management system to uniquely identify and authenticate users (or processes acting on behalf of organizational users).

Vulnerability Discussion: To assure accountability and prevent unauthorized access, application server users must be uniquely identified and authenticated. This is typically accomplished via the use of a user store which is either local (OS-based) or centralized (LDAP) in nature.

To ensure support to the enterprise, the authentication must utilize an enterprise solution.

Check Content:

UNCLASSIFIED Page 22 of 80

Review application server documentation and configuration settings to determine if the application server is using an enterprise solution to authenticate organizational users and processes running on the users' behalf.

If an enterprise solution is not being used, this is a finding.

Fix Text: Configure the application server to use an enterprise user management system to uniquely identify and authenticate users and processes acting on behalf of organizational users.

CCI: CCI-000764

Group ID (Vulid): V-35300 THIS DOES NOT APPLY TO THE REQUEST FOR PROPOSAL Group Title: SRG-APP-000149-AS-000102Rule ID: SV-46587r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000149-AS-000102Rule Title: The application server must use multifactor authentication for network access to privileged accounts.

Vulnerability Discussion: Multifactor authentication creates a layered defense and makes it more difficult for an unauthorized person to access the application server. If one factor is compromised or broken, the attacker still has at least one more barrier to breach before successfully breaking into the target. Unlike a simple username/password scenario where the attacker could gain access by knowing both the username and password without the user knowing his account was compromised, multifactor authentication adds the requirement that the attacker must have something from the user, such as a token, or to biometrically be the user.

Multifactor authentication is defined as: using two or more factors to achieve

authentication. Factors include:(i) something a user knows (e.g., password/PIN);(ii) something a user has (e.g., cryptographic identification device, token); or(iii) something a user is (e.g., biometric). A CAC or PKI Hardware Token meets this definition.

A privileged account is defined as an information system account with authorizations of a privileged user. These accounts would be capable of accessing the web management interface.

When accessing the application server via a network connection, administrative access to the application server must be PKI Hardware Token enabled.

Check Content:Review the application server configuration to ensure the system is authenticating via multifactor authentication for privileged users.

If all aspects of application server web management interfaces are not authenticating privileged users via multifactor authentication methods, this is a finding.

Fix Text: Configure the application server to authenticate privileged users via multifactor authentication for network access to the management interface.

CCI: CCI-000765

UNCLASSIFIED Page 23 of 80

Group ID (Vulid): V-35301Group Title: SRG-APP-000151-AS-000103Rule ID: SV-46588r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000151-AS-000103Rule Title: The application server must use multifactor authentication for local access to privileged accounts.

Vulnerability Discussion: Multifactor authentication creates a layered defense and makes it more difficult for an unauthorized person to access the application server. If one factor is compromised or broken, the attacker still has at least one more barrier to breach before successfully breaking into the target. Unlike a simple username/password scenario where the attacker could gain access by knowing both the username and password without the user knowing his account was compromised, multifactor authentication adds the requirement that the attacker must have something from the user, such as a token, or to biometrically be the user.

Multifactor authentication is defined as: using two or more factors to achieve

authentication. Factors include:(i) something a user knows (e.g., password/PIN);(ii) something a user has (e.g., cryptographic identification device, token); or(iii) something a user is (e.g., biometric). A CAC or PKI Hardware Token meets this definition.

A privileged account is defined as an information system account with authorizations of a privileged user. These accounts would be capable of accessing the command line management interface.

When accessing the application server via a local connection, administrative access to the application server must be PKI hardware token enabled.

Check Content:Review the application server configuration to ensure the system is authenticating via multifactor authentication for privileged users.

If all aspects of application server command line management interfaces are not authenticating privileged users via multifactor authentication methods, this is a finding.

Fix Text: Configure the application server to authenticate privileged users via multifactor authentication for local access to the management interface.

CCI: CCI-000767

Group ID (Vulid): V-35302Group Title: SRG-APP-000153-AS-000104Rule ID: SV-46589r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000153-AS-000104Rule Title: The application server must authenticate users individually prior to using a group authenticator.

Vulnerability Discussion: To assure individual accountability and prevent unauthorized access, application server users (and any processes acting on behalf of application server users) must be individually identified and authenticated.

A group authenticator is a generic account used by multiple individuals. Use of a group authenticator alone does

UNCLASSIFIED Page 24 of 80

not uniquely identify individual users.

Application servers must ensure that individual users are authenticated prior to authenticating via role or group authentication. This is to ensure that there is non-repudiation for actions taken.

Check Content:Review the application server documentation and configuration to determine if the application server individually authenticates users prior to authenticating via a role or group.

Review application server logs to verify user accesses requiring authentication can be traced back to an individual account.

If the application server does not authenticate users on an individual basis, this is a finding.

Fix Text: Configure the application server to authenticate users individually prior to allowing any group-based authentication.

CCI: CCI-000770

Group ID (Vulid): V-35304Group Title: SRG-APP-000156-AS-000106Rule ID: SV-46591r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000156-AS-000106Rule Title: The application server must provide security extensions to extend the SOAP protocol and provide secure authentication when accessing sensitive data.

Vulnerability Discussion: Application servers may provide a web services capability that could be leveraged to allow remote access to sensitive application data. A web service, which is a repeatable process used to make data available to remote clients, should not be confused with a web server.

Many web services utilize SOAP, which in turn utilizes XML and HTTP as a transport. Natively, SOAP does not provide security protections. As such, the application server must provide security extensions to enhance SOAP capabilities to ensure that secure authentication mechanisms are employed to protect sensitive data. The WS_Security suite is a widely used and acceptable SOAP security extension.

Check Content:Review application server documentation to ensure the application server provides extensions to the SOAP protocol that provide secure authentication. These protocols include, but are not limited to, WS_Security suite. Review policy and data owner protection requirements in order to identify sensitive data.

If secure authentication protocols are not utilized to protect data identified by data owner as requiring protection, this is a finding.

Fix Text: Configure the application server to utilize secure authentication when SOAP web services are used to access sensitive data.

CCI: CCI-001941

UNCLASSIFIED Page 25 of 80

Group ID (Vulid): V-35306Group Title: SRG-APP-000158-AS-000108Rule ID: SV-46593r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000158-AS-000108Rule Title: The application server must uniquely identify all network-connected endpoint devices before establishing any connection.

Vulnerability Discussion: Without identifying devices, unidentified or unknown devices may be introduced, thereby facilitating malicious activity.

For distributed application servers and components, the decisions regarding the validation of identification claims may be made by services separate from the application server. In such situations, it is necessary to provide the identification decisions (as opposed to the actual identifiers) to the services that need to act on those decisions.

Check Content:Review application server documentation and configuration to ensure the application server identifies devices before allowing connections.

If the application server does not identify a device before connection, this is a finding.

Fix Text: Configure the application server to identify devices before allowing connections.

CCI: CCI-000778

Group ID (Vulid): V-35309Group Title: SRG-APP-000163-AS-000111Rule ID: SV-46596r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000163-AS-000111Rule Title: The application server must disable identifiers (individuals, groups, roles, and devices) after 35 days of inactivity.

Vulnerability Discussion: Inactive identifiers pose a risk to systems and applications. Attackers that are able to exploit an inactive identifier can potentially obtain and maintain undetected access to the application. Owners of inactive accounts will not notice if unauthorized access to their user account has been obtained.

Applications need to track periods of inactivity and disable application identifiers after 35 days of inactivity.

Management of user identifiers is not applicable to shared information system accounts (e.g., guest and anonymous accounts). It is commonly the case that a user account is the name of an information system account associated with an individual.

To avoid having to build complex user management capabilities directly into their application, wise developers leverage the underlying OS or other user account management infrastructure (AD, LDAP) that is already in place within the organization and meets organizational user account management requirements.

Check Content:Review the application server documentation and configuration to ensure the application server disables identifiers

UNCLASSIFIED Page 26 of 80

(individuals, groups, roles, and devices) after 35 days of inactivity.

If the application server is not configured to disable identifiers (individuals, groups, roles, and devices) after 35 days of inactivity, this is a finding.

Fix Text: Configure the application server to disable identifiers (individuals, groups, roles, and devices) after 35 days of inactivity.

CCI: CCI-000795

Group ID (Vulid): V-35317Group Title: SRG-APP-000171-AS-000119Rule ID: SV-46604r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000171-AS-000119Rule Title: The application server must store only encrypted representations of passwords.

Vulnerability Discussion: Applications must enforce password encryption when storing passwords. Passwords need to be protected at all times and encryption is the standard method for protecting passwords. If passwords are not encrypted, they can be plainly read and easily compromised.

Application servers provide either a local user store or they integrate with enterprise user stores like LDAP. When the application server is responsible for creating or storing passwords, the application server must enforce the storage of encrypted representations of passwords.

Check Content:Review application server documentation and configuration to determine if the application server enforces the requirement to only store encrypted representations of passwords.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to only store encrypted representations of passwords.

CCI: CCI-000196

Group ID (Vulid): V-35318Group Title: SRG-APP-000172-AS-000120Rule ID: SV-46605r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000172-AS-000120Rule Title: The application server must transmit only encrypted representations of passwords.

Vulnerability Discussion: Passwords need to be protected at all times, and encryption is the standard method for protecting passwords during transmission. If passwords are not encrypted, they can be plainly read (i.e., clear text) and easily compromised.

Application servers have the capability to utilize either certificates (tokens) or user IDs and passwords in order to authenticate. When the application server transmits or receives passwords, the passwords must be encrypted.

UNCLASSIFIED Page 27 of 80

Check Content:Review application server documentation and configuration to determine if the application server enforces the requirement to encrypt passwords when they are transmitted.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to transmit only encrypted representations of passwords.

CCI: CCI-000197

Group ID (Vulid): V-35319Group Title: SRG-APP-000172-AS-000121Rule ID: SV-46606r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000172-AS-000121Rule Title: The application server must utilize encryption when using LDAP for authentication.

Vulnerability Discussion: Passwords need to be protected at all times, and encryption is the standard method for protecting passwords during transmission.

Application servers have the capability to utilize LDAP directories for authentication. If LDAP connections are not protected during transmission, sensitive authentication credentials can be stolen. When the application server utilizes LDAP, the LDAP traffic must be encrypted.

Check Content:Review application server documentation and configuration to determine if the application server enforces the requirement to encrypt LDAP traffic.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to encrypt LDAP traffic.

CCI: CCI-000197

Group ID (Vulid): V-35322Group Title: SRG-APP-000175-AS-000124Rule ID: SV-46609r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000175-AS-000124Rule Title: The application server must perform RFC 5280-compliant certification path validation.

Vulnerability Discussion: A certificate's certification path is the path from the end entity certificate to a trusted root certification authority (CA). Certification path validation is necessary for a relying party to make an informed decision regarding acceptance of an end entity certificate. Certification path validation includes checks such as certificate issuer trust, time validity and revocation status for each certificate in the certification path. Revocation status information for CA and subject certificates in a certification path is commonly provided via certificate revocation lists (CRLs) or online certificate status protocol (OCSP) responses.

Check Content:

UNCLASSIFIED Page 28 of 80

Review the application server documentation and deployed configuration to determine whether the application server provides PKI functionality that validates certification paths in accordance with RFC 5280.

If PKI is not being used, this is NA.

If the application server is using PKI, but it does not perform this requirement, this is a finding.

Fix Text: Configure the application server to validate certificates in accordance with RFC 5280.

CCI: CCI-000185

Group ID (Vulid): V-35324Group Title: SRG-APP-000176-AS-000125Rule ID: SV-46611r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000176-AS-000125Rule Title: Only authenticated system administrators or the designated PKI Sponsor for the application server must have access to the web servers private key.

Vulnerability Discussion: The cornerstone of the PKI is the private key used to encrypt or digitally sign information.

If the private key is stolen, this will lead to the compromise of the authentication and non-repudiation gained through PKI because the attacker can use the private key to digitally sign documents and can pretend to be the authorized user.

Both the holders of a digital certificate and the issuing authority must protect the computers, storage devices, or whatever they use to keep the private keys. Java-based application servers utilize the Java keystore, which provides storage for cryptographic keys and certificates. The keystore is usually maintained in a file stored on the file system.

Check Content:Review application server configuration and documentation to ensure the application server enforces authorized access to the corresponding private key.

If the application server is not configured to enforce authorized access to the corresponding private key, this is a finding.

Fix Text: Configure the application server to enforce authorized access to the corresponding private key.

CCI: CCI-000186

Group ID (Vulid): V-35325Group Title: SRG-APP-000177-AS-000126Rule ID: SV-46612r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000177-AS-000126Rule Title: The application server must map the authenticated identity to the individual user or group account for PKI-based authentication.

UNCLASSIFIED Page 29 of 80

Vulnerability Discussion: The cornerstone of PKI is the private key used to encrypt or digitally sign information. The key by itself is a cryptographic value that does not contain specific user information, but the key can be mapped to a user. Without mapping the certificate used to authenticate to the user account, the ability to determine the identity of the individual user or group will not be available for forensic analysis.

Application servers must provide the capability to utilize and meet requirements of the DoD Enterprise PKI infrastructure for application authentication.

Check Content:Review application server documentation to ensure the application server provides a PKI integration capability that meets DoD PKI infrastructure requirements.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to utilize the DoD Enterprise PKI infrastructure.

CCI: CCI-000187

Group ID (Vulid): V-35328Group Title: SRG-APP-000178-AS-000127Rule ID: SV-46615r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000178-AS-000127Rule Title: The application server must obscure feedback of authentication information during the authentication process to protect the information from possible exploitation/use by unauthorized individuals.

Vulnerability Discussion: To prevent the compromise of authentication information during the authentication process, the application server authentication screens must obfuscate input so an unauthorized user cannot view a password, PIN, or any other authenticator value as it is being typed.

This can occur when a user is authenticating to the application server through the web management interface or command line interface. The application server must obfuscate all passwords, PINs, or other authenticator information when typed. User ID is not required to be obfuscated.

Check Content:Review the application server documentation and configuration to determine if any interfaces which are provided for authentication purposes display the user's password when it is typed into the data entry field.

If authentication information is not obfuscated when entered, this is a finding.

Fix Text: Configure the application server to obscure feedback of authentication information during the authentication process to protect the information from possible exploitation/use by unauthorized individuals.

CCI: CCI-000206

Group ID (Vulid): V-35329Group Title: SRG-APP-000179-AS-000129Rule ID: SV-46616r3_rule

UNCLASSIFIED Page 30 of 80

Severity: CAT IIRule Version (STIG-ID): SRG-APP-000179-AS-000129Rule Title: The application server must utilize FIPS 140-2 approved encryption modules when authenticating users and processes.

Vulnerability Discussion: Encryption is only as good as the encryption modules utilized. Unapproved cryptographic module algorithms cannot be verified and cannot be relied upon to provide confidentiality or integrity, and DoD data may be compromised due to weak algorithms. The use of TLS provides confidentiality of data in transit between the application server and client. FIPS 140-2 approved TLS versions include TLS V1.0 or greater.

TLS must be enabled and non-FIPS-approved SSL versions must be disabled. NIST SP 800-52 specifies the preferred configurations for government systems.

Check Content:Review the application server documentation and deployed configuration to determine which version of TLS is being used.

If the application server is not using TLS when authenticating users or non-FIPS-approved SSL versions are enabled, this is a finding.

Fix Text: Configure the application server to use a FIPS-2 approved TLS version to authenticate users and to disable all non-FIPS-approved SSL versions.

CCI: CCI-000803

Group ID (Vulid): V-35376Group Title: SRG-APP-000211-AS-000146Rule ID: SV-46663r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000211-AS-000146Rule Title: The application server must separate hosted application functionality from application server management functionality.

Vulnerability Discussion: The application server consists of the management interface and hosted applications. By separating the management interface from hosted applications, the user must authenticate as a privileged user to the management interface before being presented with management functionality. This prevents non-privileged users from having visibility to functions not available to the user. By limiting visibility, a compromised non- privileged account does not offer information to the attacker to functionality and information needed to further the attack on the application server.

Application server management functionality includes functions necessary to administer the application server and requires privileged access via one of the accounts assigned to a management role. The hosted application and hosted application functionality consists of the assets needed for the application to function, such as the business logic, databases, user authentication, etc.

The separation of application server administration functionality from hosted application functionality is either physical or logical and is accomplished by using different computers, different central processing units, different instances of the operating system, network addresses, network ports, or combinations of these methods, as appropriate.

UNCLASSIFIED Page 31 of 80

Check Content:Review the application server documentation and configuration to verify that the application server separates admin functionality from hosted application functionality.

If the application server does not separate application server admin functionality from hosted application functionality, this is a finding.

Fix Text: Configure the application server so that admin management functionality and hosted applications are separated.

CCI: CCI-001082

Group ID (Vulid): V-35381Group Title: SRG-APP-000219-AS-000147Rule ID: SV-46668r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000219-AS-000147Rule Title: The application server must ensure authentication of both client and server during the entire session.

Vulnerability Discussion: This control focuses on communications protection at the session, versus packet level.

At the application layer, session IDs are tokens generated by web applications to uniquely identify an application user's session. Web applications utilize session tokens or session IDs in order to establish application user identity. Proper use of session IDs addresses man-in-the-middle attacks, including session hijacking or insertion of false information into a session.

Application servers must provide the capability to perform mutual authentication. Mutual authentication is when both the client and the server authenticate each other.

Check Content:Review the application server configuration and documentation to ensure the application server provides mutual authentication capabilities.

If the application server does not provide the ability for applications to utilize mutual authentication, this is a finding.

Fix Text: Configure the application server to mutually authenticate during the entire session as required by application design and policy.

CCI: CCI-001184

Group ID (Vulid): V-35415Group Title: SRG-APP-000220-AS-000148Rule ID: SV-46702r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000220-AS-000148Rule Title: The application server must invalidate session identifiers upon user logout or other session termination.

UNCLASSIFIED Page 32 of 80

Vulnerability Discussion: If communications sessions remain open for extended periods of time even when unused, there is the potential for an adversary to hijack the session and use it to gain access to the device or networks to which it is attached. Terminating sessions after a logout event or after a certain period of inactivity is a method for mitigating the risk of this vulnerability. When a user management session becomes idle, or when a user logs out of the management interface, the application server must terminate the session.

Check Content:Review the application server configuration and organizational policy to determine if the system is configured to terminate administrator sessions upon administrator logout or any other organization- or policy-defined session termination events, such as idle time limit exceeded.

If the configuration is not set to terminate administrator sessions per defined events, this is a finding.

Fix Text: Configure the application server to terminate administrative sessions upon logout or any other organization- or policy-defined session termination events.

CCI: CCI-001185

Group ID (Vulid): V-35421Group Title: SRG-APP-000223-AS-000151Rule ID: SV-46708r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000223-AS-000151Rule Title: The application server must recognize only system-generated session identifiers.

Vulnerability Discussion: This requirement focuses on communications protection at the application session, versus network packet level. The intent of this control is to establish grounds for confidence at each end of a communications session in the ongoing identity of the other party and in the validity of the information being transmitted.

Unique session IDs are the opposite of sequentially generated session IDs which can be easily guessed by an attacker. Unique session identifiers help to reduce predictability of said identifiers.

Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending application traffic, they will have more difficulty in hijacking the session or otherwise manipulating valid sessions.

Check Content:Review the application server configuration to determine if the application server recognizes only system- generated session identifiers.

If the application server does not recognize only system-generated session identifiers, this is a finding.

Fix Text: Design the application server to recognize only system-generated session identifiers.

CCI: CCI-001664

Group ID (Vulid): V-35422Group Title: SRG-APP-000224-AS-000152

UNCLASSIFIED Page 33 of 80

Rule ID: SV-46709r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000224-AS-000152Rule Title: The application server must generate a unique session identifier using a FIPS 140-2 approved random number generator.

Vulnerability Discussion: The application server will use session IDs to communicate between modules or applications within the application server and between the application server and users. The session ID allows the application to track the communications along with credentials that may have been used to authenticate users or modules.

Unique session IDs are the opposite of sequentially generated session IDs which can be easily guessed by an attacker. Unique session identifiers help to reduce predictability of said identifiers.

Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending application traffic, they will have more difficulty in hijacking the session or otherwise manipulating valid sessions.

Check Content:Review the application server configuration and documentation to determine if the application server uses a FIPS 140-2 approved random number generator to create unique session identifiers.

Have a user log onto the application server to determine if the session IDs generated are random and unique.

If the application server does not generate unique session identifiers and does not use a FIPS 140-2 random number generator to create the randomness of the session ID, this is a finding.

Fix Text: Configure the application server to generate unique session identifiers and to use a FIPS 140-2 random number generator to generate the randomness of the session identifiers.

CCI: CCI-001188

Group ID (Vulid): V-35423Group Title: SRG-APP-000225-AS-000153Rule ID: SV-46710r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-AS-000153Rule Title: The application server must be configured to perform complete application deployments.

Vulnerability Discussion: Failure to a known secure state helps prevent a loss of confidentiality, integrity, or availability in the event of a failure of the information system or a component of the system.

When an application is deployed to the application server, if the deployment process does not complete properly and without errors, there is the potential that some application files may not be deployed or may be corrupted and an application error may occur during runtime.

The application server must be able to perform complete application deployments. A partial deployment can leave the server in an inconsistent state. Application servers may provide a transaction rollback function to address this issue.

Check Content:

UNCLASSIFIED Page 34 of 80

Review the application server configuration and documentation to ensure the system is configured to perform complete application deployments.

If the application server is not configured to ensure complete application deployments or provides no rollback functionality, this is a finding.

Fix Text: Configure the application server to detect errors that occur during application deployment and to prevent deployment if errors are encountered.

CCI: CCI-001190

Group ID (Vulid): V-35424Group Title: SRG-APP-000225-AS-000154Rule ID: SV-46711r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-AS-000154Rule Title: The application server must provide a clustering capability.

Vulnerability Discussion: This requirement is dependent upon system MAC and confidentiality. If the system MAC and confidentiality levels do not specify redundancy requirements, this requirement is NA.

Failure to a known secure state helps prevent a loss of confidentiality, integrity, or availability in the event of a failure of the information system or a component of the system. When application failure is encountered, preserving application state facilitates application restart and return to the operational mode of the organization with less disruption of mission/business processes.

Clustering of multiple application servers is a common approach to providing fail-safe application availability when system MAC and confidentiality levels require redundancy.

Check Content:This requirement is dependent upon system MAC and confidentiality.

If the system MAC and confidentiality levels do not specify redundancy requirements, this requirement is NA.

Review the application server configuration and documentation to ensure the application server is configured to provide clustering functionality.

If the application server is not configured to provide clustering or some form of failover functionality, this is a finding.

Fix Text: This requirement is dependent upon system MAC and confidentiality.

If the system MAC and confidentiality levels do not specify redundancy requirements, this requirement is NA.

Configure the application server to provide application failover or participate in an application cluster which provides failover.

CCI: CCI-001190

UNCLASSIFIED Page 35 of 80

Group ID (Vulid): V-35426Group Title: SRG-APP-000231-AS-000156Rule ID: SV-46713r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000231-AS-000156Rule Title: The application server must employ cryptographic mechanisms to ensure confidentiality and integrity of all information at rest when stored off-line.

Vulnerability Discussion: This control is intended to address the confidentiality and integrity of information at rest in non-mobile devices and covers user information and system information. Information at rest refers to the state of information when it is located on a secondary storage device (e.g., disk drive, tape drive) within an organizational information system.

Application servers generate information throughout the course of their use, most notably, log data. If the data is not encrypted while at rest, the data used later for forensic investigation cannot be guaranteed to be unchanged and cannot be used for prosecution of an attacker. To accomplish a credible investigation and prosecution, the data integrity and information confidentiality must be guaranteed.

Application servers must provide the capability to protect all data, especially log data, so as to ensure confidentiality and integrity.

Check Content:Review the application server configuration to ensure the system is protecting the confidentiality and integrity of all application server data at rest when stored off-line.

If the application server is not configured to protect all application server data at rest when stored off-line, this is a finding.

Fix Text: Configure the application server to employ cryptographic mechanisms to ensure confidentiality and integrity of all application server data at rest when stored off-line.

CCI: CCI-001199

Group ID (Vulid): V-35436Group Title: SRG-APP-000251-AS-000165Rule ID: SV-46723r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000251-AS-000165Rule Title: The application server must check the validity of all data inputs to the management interface, except those specifically identified by the organization.

Vulnerability Discussion: Invalid user input occurs when a user inserts data or characters into an applications data entry field and the application is unprepared to process that data. This results in unanticipated application behavior potentially leading to an application or information system compromise. Invalid user input is one of the primary methods employed when attempting to compromise an application.

Application servers must ensure their management interfaces perform data input validation checks. Input validation consists of evaluating user input and ensuring that only allowed characters are utilized. An example is ensuring that the interfaces are not susceptible to SQL injection attacks.

Check Content:

UNCLASSIFIED Page 36 of 80

Review the application server configuration to determine if the system checks the validity of information inputs to the management interface, except those specifically identified by the organization.

If the management interface data inputs are not validated, this is a finding.

Fix Text: Configure the application server to check the validity of data inputs into the management interface except those specifically identified by the organization.

CCI: CCI-001310

Group ID (Vulid): V-35440Group Title: SRG-APP-000266-AS-000169Rule ID: SV-46727r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000266-AS-000169Rule Title: The application server must only generate error messages that provide information necessary for corrective actions without revealing sensitive or potentially harmful information in error logs and administrative messages.

Vulnerability Discussion: Any application providing too much information in error logs and in administrative messages to the screen risks compromising the data and security of the application and system. The structure and content of error messages needs to be carefully considered by the organization and development team.

The application server must not log sensitive information such as passwords, private keys, or other sensitive data. This requirement pertains to logs that are generated by the application server and application server processes, not the applications that may reside on the application server. Those errors are out of the scope of these requirements.

Check Content:Review system documentation and logs to determine if the application server writes sensitive information such as passwords or private keys into the logs and administrative messages.

If the application server writes sensitive or potentially harmful information into the logs and administrative messages, this is a finding.

Fix Text: Configure the application server to not write sensitive information into the logs and administrative messages.

CCI: CCI-001312

Group ID (Vulid): V-35441Group Title: SRG-APP-000267-AS-000170Rule ID: SV-46728r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000267-AS-000170Rule Title: The application server must restrict error messages only to authorized users.

Vulnerability Discussion: If the application provides too much information in error logs and administrative messages to the screen, this could lead to compromise. The structure and content of error messages need to be carefully considered by the organization and development team. The extent to which the information system is

UNCLASSIFIED Page 37 of 80

able to identify and handle error conditions is guided by organizational policy and operational requirements.

Application servers must protect the error messages that are created by the application server. All application server users' accounts are used for the management of the server and the applications residing on the application server. All accounts are assigned to a certain role with corresponding access rights. The application server must restrict access to error messages so only authorized users may view them. Error messages are usually written to logs contained on the file system. The application server will usually create new log files as needed and must take steps to ensure that the proper file permissions are utilized when the log files are created.

Check Content:Review the application server configuration and documentation to determine if the application server will restrict access to error messages so only authorized users may view or otherwise access them.

If the application server cannot be configured to restrict access to error messages to only authorized users, this is a finding.

Fix Text: Configure the application server to restrict access to error messages so only authorized users may view or otherwise access them.

CCI: CCI-001314

Group ID (Vulid): V-35445Group Title: SRG-APP-000290-AS-000174Rule ID: SV-46732r4_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000290-AS-000174Rule Title: The application server must use cryptographic mechanisms to protect the integrity of log tools.

Vulnerability Discussion: Protecting the integrity of the tools used for logging purposes is a critical step in ensuring the integrity of log data. Log data includes all information (e.g., log records, log settings, and log reports) needed to successfully log information system activity.

It is not uncommon for attackers to replace the log tools or inject code into the existing tools for the purpose of providing the capability to hide or erase system activity from the logs.

To address this risk, log tools must be cryptographically signed in order to provide the capability to identify when the log tools have been modified, manipulated or replaced. An example is a checksum hash of the file or files.

Application server log tools must use cryptographic mechanisms to protect the integrity of the tools or allow cryptographic protection mechanisms to be applied to their tools.

Check Content:Review the application server configuration to determine if the application server log tools have been cryptographically signed to protect the integrity of the tools.

If the application server log tools have not been cryptographically signed, this is a finding.

Fix Text: Configure the application server log tools to be cryptographically signed to protect the integrity of the tools.

CCI: CCI-001496

UNCLASSIFIED Page 38 of 80

Group ID (Vulid): V-35738Group Title: SRG-APP-000033-AS-000024Rule ID: SV-47025r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000033-AS-000024Rule Title: The application server must enforce approved authorizations for logical access to information and system resources in accordance with applicable access control policies.

Vulnerability Discussion: Strong access controls are critical to securing the application server. Access control policies (e.g., identity-based policies, role-based policies, attribute-based policies) and access enforcement mechanisms (e.g., access control lists, access control matrices, cryptography) must be employed by the application server to control access between users (or processes acting on behalf of users) and objects (e.g., applications, files, records, processes, application domains) in the application server.

Without stringent logical access and authorization controls, an adversary may have the ability, with very little effort, to compromise the application server and associated supporting infrastructure.

Check Content:Review application server product documentation and configuration to determine if the system enforces authorization requirements for logical access to the system in accordance with applicable policy.

If the application server is not configured to utilize access controls or follow access control policies, this is a finding.

Fix Text: Configure the application server to enforce access control policies for logical access to the system in accordance with applicable policy.

CCI: CCI-000213

Group ID (Vulid): V-35772Group Title: SRG-APP-000119-AS-000079Rule ID: SV-47059r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000119-AS-000079Rule Title: The application server must protect log information from unauthorized modification.

Vulnerability Discussion: If log data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity is difficult, if not impossible, to achieve. In addition, access to log records provides information an attacker could potentially use to his or her advantage.

Application servers contain admin interfaces that allow reading and manipulation of log records. Therefore, these interfaces should not allow unfettered access to those records. Application servers also write log data to log files which are stored on the OS, so appropriate file permissions must also be used to restrict access.

Log information includes all information (e.g., log records, log settings, transaction logs and log reports) needed to successfully log information system activity. Application servers must protect log information from unauthorized modification.

UNCLASSIFIED Page 39 of 80

Check Content:Review the configuration settings to determine if the application server log features protect log information from unauthorized modification.

Review file system settings to verify the application server sets secure file permissions on log files to prevent unauthorized modification.

If the application server does not protect log information from unauthorized modification, this is a finding.

Fix Text: Configure the application server to protect log information from unauthorized modification.

CCI: CCI-000163

Group ID (Vulid): V-57397Group Title: SRG-APP-000343-AS-000030Rule ID: SV-71669r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000343-AS-000030Rule Title: The application server must provide access logging that ensures users who are granted a privileged role (or roles) have their privileged activity logged.

Vulnerability Discussion: In order to be able to provide a forensic history of activity, the application server must ensure users who are granted a privileged role or those who utilize a separate distinct account when accessing privileged functions or data have their actions logged.

If privileged activity is not logged, no forensic logs can be used to establish accountability for privileged actions that occur on the system.

Check Content:Review application server documentation and log configuration to verify the application server logs privileged activity.

If the application server is not configured to log privileged activity, this is a finding.

Fix Text: Configure the application server to log privileged activity.

CCI: CCI-002234

Group ID (Vulid): V-57399Group Title: SRG-APP-000340-AS-000185Rule ID: SV-71671r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000340-AS-000185Rule Title: The application server must prevent non-privileged users from executing privileged functions to include disabling, circumventing, or altering implemented security safeguards/countermeasures.

Vulnerability Discussion: Preventing non-privileged users from executing privileged functions mitigates the risk that unauthorized individuals or processes may gain unnecessary access to information or privileges.

UNCLASSIFIED Page 40 of 80

Restricting non-privileged users also prevents an attacker, who has gained access to a non-privileged account, from elevating privileges, creating accounts, and performing system checks and maintenance.

Check Content:Review application server documentation and configuration to verify that non-privileged users cannot access or execute privileged functions.

Have a user logon as a non-privileged user and attempt to execute privileged

functions. If the user is capable of executing privileged functions, this is a finding.

Fix Text: Configure the application server to deny non-privileged users access to and execution of privileged functions.

CCI: CCI-002235

Group ID (Vulid): V-57401Group Title: SRG-APP-000295-AS-000263Rule ID: SV-71673r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000295-AS-000263Rule Title: The application server must automatically terminate a user session after organization-defined conditions or trigger events requiring a session disconnect.

Vulnerability Discussion: An attacker can take advantage of user sessions that are left open, thus bypassing the user authentication process.

To thwart the vulnerability of open and unused user sessions, the application server must be configured to close the sessions when a configured condition or trigger event is met.

Session termination terminates all processes associated with a user's logical session except those processes that are specifically created by the user (i.e., session owner) to continue after the session is terminated.

Conditions or trigger events requiring automatic session termination can include, for example, periods of user inactivity, targeted responses to certain types of incidents, and time-of-day restrictions on information system use.

Check Content:Review application server documentation and configuration settings to determine if the application server is configured to close user sessions after defined conditions or trigger events are met.

If the application server is not configured or cannot be configured to disconnect users after defined conditions and trigger events are met, this is a finding.

Fix Text: Configure the application server to terminate user sessions on defined conditions or trigger events.

CCI: CCI-002361

Group ID (Vulid): V-57403

UNCLASSIFIED Page 41 of 80

Group Title: SRG-APP-000296-AS-000201Rule ID: SV-71675r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000296-AS-000201Rule Title: The application server management interface must provide a logout capability for user-initiated communication session.

Vulnerability Discussion: If a user cannot explicitly end an application server management interface session, the session may remain open and be exploited by an attacker; this is referred to as a zombie session.

The attacker will then have access to the application server management functions without going through the user authentication process.

To prevent this type of attack, the application server management interface must close user sessions when defined events are met and provide a logout function for users to explicitly close the session and free resources that were in use by the user.

Check Content:Review application server documentation and configuration settings to determine if the application server management interface provides a logout capability.

If the application server management interface does not provide a logout capability, this is a finding.

Fix Text: Configure the application server management interface to provide a logout capability for the users.

CCI: CCI-002363

Group ID (Vulid): V-57405Group Title: SRG-APP-000297-AS-000188Rule ID: SV-71677r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000297-AS-000188Rule Title: The application server management interface must display an explicit logout message to users indicating the reliable termination of authenticated communications sessions.

Vulnerability Discussion: Providing a logout capability to the user allows the user to explicitly close a session and free those resources used during the session.

If a user cannot explicitly end an application session, the session may remain open and be exploited by an attacker; this is referred to as a zombie session.

The attacker will then have access to the application server management functions without going through the user authentication process.

To inform the user that the session has been reliably closed, a logout message must be displayed to the user.

Check Content:Review application server documentation and configuration settings to determine if the application server management interface displays a logout message.

If the application server management interface does not display a logout message, this is a finding.

UNCLASSIFIED Page 42 of 80

Fix Text: Configure the application server management interface to display an explicit logout message to users.

CCI: CCI-002364

Group ID (Vulid): V-57407Group Title: SRG-APP-000313-AS-000003Rule ID: SV-71679r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000313-AS-000003Rule Title: The application server must associate organization-defined types of security attributes having organization-defined security attribute values with information in process.

Vulnerability Discussion: The application server provides a framework for applications to communicate between each other to form an overall well-designed application to perform a task. As the information traverses the application server and the components, the security attributes must be maintained. Without the association of security attributes to information, there is no basis for the application server or hosted applications to make security-related access control decisions. The security attributes are abstractions representing the basic properties or characteristics of an entity (e.g., subjects and objects) with respect to safeguarding information.

One example includes marking data as classified or FOUO. These security attributes may be assigned manually or during data processing, but either way, it is imperative these assignments are maintained while the data is in process. If the security attributes are lost when the data is being processed, there is the risk of a data compromise.

Check Content:Review the application server documentation to determine if the application associates organization-defined types of security attributes with organization-defined security attribute values to information in process.

If the application server does not associate the security attributes to information in process or the feature is not implemented, this is a finding.

Fix Text: Configure the application server to associate organization-defined types of security attributes having organization-defined security attribute values with information in process.

CCI: CCI-002263

Group ID (Vulid): V-57409Group Title: SRG-APP-000314-AS-000005Rule ID: SV-71681r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000314-AS-000005Rule Title: The application server must associate organization-defined types of security attributes having organization-defined security attribute values with information in transmission.

Vulnerability Discussion: The application server provides a framework for applications to communicate between each other to form an overall well-designed application to perform a task. As the information is transmitted, the security attributes must be maintained. Without the association of security attributes to information, there is no basis for the application to make security-related access control decisions.

UNCLASSIFIED Page 43 of 80

Security attributes are abstractions representing the basic properties or characteristics of an entity (e.g., subjects and objects) with respect to safeguarding information.

One example includes marking data as classified or FOUO. These security attributes may be assigned manually or during data processing, but either way, it is imperative these assignments are maintained while the data is in transmission. If the security attributes are lost when the data is being transmitted, there is the risk of a data compromise.

Check Content:Review the application server documentation to determine if the application associates organization-defined types of security attributes with organization-defined security attribute values to information in transmission.

If the application server does not associate the security attributes to information in transmission or the feature is not implemented, this is a finding.

Fix Text: Configure the application server to associate organization-defined types of security attributes having organization-defined security attribute values with information in transmission.

CCI: CCI-002264

Group ID (Vulid): V-57411Group Title: SRG-APP-000016-AS-000013Rule ID: SV-71683r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000016-AS-000013Rule Title: The application server must ensure remote sessions for accessing security functions and security- relevant information are logged.

Vulnerability Discussion: Logging must be utilized in order to track system activity, assist in diagnosing system issues, and provide evidence needed for forensic investigations post security incident.

Remote access by administrators requires that the admin activity be logged.

Application servers provide a web and command line-based remote management capability for managing the application server. Application servers must ensure that all actions related to administrative functionality such as application server configuration are logged.

Check Content:Review the application server product documentation to determine if the application server logs remote administrative sessions.

If the application server does not log remote sessions for the admin user, then this is a finding.

Fix Text: Configure the application server to log an event for each instance when the administrator accesses the system remotely.

CCI: CCI-000067

Group ID (Vulid): V-57413

UNCLASSIFIED Page 44 of 80

Group Title: SRG-APP-000315-AS-000094Rule ID: SV-71685r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000315-AS-000094Rule Title: The application server must control remote access methods.

Vulnerability Discussion: Application servers provide remote access capability and must be able to enforce remote access policy requirements or work in conjunction with enterprise tools designed to enforce policy requirements. Automated monitoring and control of remote access sessions allows organizations to detect cyber attacks and also ensure ongoing compliance with remote access policies by logging connection activities of remote users.

Examples of policy requirements include, but are not limited to, authorizing remote access to the information system, limiting access based on authentication credentials, and monitoring for unauthorized access.

Check Content:Review organization policy, application server product documentation and configuration to determine if the system enforces the organization's requirements for remote connections.

If the system is not configured to enforce these requirements, or the remote connection settings are not in accordance with the requirements, this is a finding.

Fix Text: Configure the application server to enforce remote connection settings.

CCI: CCI-002314

Group ID (Vulid): V-57415Group Title: SRG-APP-000316-AS-000199Rule ID: SV-71687r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000316-AS-000199Rule Title: The application server must provide the capability to immediately disconnect or disable remote access to the management interface.

Vulnerability Discussion: Without the ability to immediately disconnect or disable remote access, an attack or other compromise taking progress would not be immediately stopped.

The application server must have the capability to immediately disconnect current users remotely accessing the management interface and/or disable further remote access. The speed of disconnect or disablement varies based on the criticality of missions/business functions and the need to eliminate immediate or future remote access to organizational information systems.

Check Content:Review the application server product documentation and server configuration to ensure that there is a capability to immediately disconnect or disable remote access to the management interface.

If there is no capability, this is a finding.

Fix Text: Configure the application server to have the capability to immediately disconnect or disable remote access to the management interface.

CCI: CCI-002322

UNCLASSIFIED Page 45 of 80

Group ID (Vulid): V-57417Group Title: SRG-APP-000101-AS-000072Rule ID: SV-71689r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000101-AS-000072Rule Title: The application server must generate log records containing the full-text recording of privileged commands or the individual identities of group account users.

Vulnerability Discussion: Privileged commands are commands that change the configuration or data of the application server. Since this type of command changes the application server configuration and could possibly change the security posture of the application server, these commands need to be logged to show the full-text of the command executed. Without the full-text, reconstruction of harmful events or forensic analysis is not possible.

Organizations can consider limiting the additional log information to only that information explicitly needed for specific log requirements. At a minimum, the organization must log either full-text recording of privileged commands or the individual identities of group users, or both. The organization must maintain log trails in sufficient detail to reconstruct events to determine the cause and impact of compromise.

Check Content:Review the application server documentation and deployment configuration to determine if the application server is configured to generate full-text recording of privileged commands or the individual identities of group users at a minimum.

Have a user execute a privileged command and review the log data to validate that the full-text or identity of the individual is being logged.

If the application server is not meeting this requirement, this is a finding.

Fix Text: Configure the application server to generate the full-text recording of privileged commands or the individual identities of group users, or both.

CCI: CCI-000135

Group ID (Vulid): V-57419Group Title: SRG-APP-000356-AS-000202Rule ID: SV-71691r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000356-AS-000202Rule Title: The application server must provide centralized management and configuration of the content to be captured in log records generated by all application components.

Vulnerability Discussion: A clustered application server is made up of several servers working together to provide the user a failover and increased computing capability. To facilitate uniform logging in the event of an incident and later forensic investigation, the record format and logable events need to be uniform. This can be managed best from a centralized server.

Without the ability to centrally manage the content captured in the log records, identification, troubleshooting, and

UNCLASSIFIED Page 46 of 80

correlation of suspicious behavior would be difficult and could lead to a delayed or incomplete analysis of an ongoing attack.

Check Content:Review application server documentation and configuration to determine if the application server is part of a cluster.

If the application server is not part of a cluster, this requirement is NA.

If the application server is part of a cluster, verify that the log settings are managed and configured from a centralized management server.

If the log settings are not centrally managed, this is a finding.

Fix Text: Configure the application server to allow centralized management and configuration of the content to be captured in log records.

CCI: CCI-001844

Group ID (Vulid): V-57421Group Title: SRG-APP-000357-AS-000038Rule ID: SV-71693r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000357-AS-000038Rule Title: The application server must allocate log record storage capacity in accordance with organization- defined log record storage requirements.

Vulnerability Discussion: The proper management of log records not only dictates proper archiving processes and procedures be established, it also requires allocating enough storage space to maintain the logs online for a defined period of time.

If adequate online log storage capacity is not maintained, intrusion monitoring, security investigations, and forensic analysis can be negatively affected.

It is important to keep a defined amount of logs online and readily available for investigative purposes. The logs may be stored on the application server until they can be archived to a log system or, in some instances, a Storage Area Networks (SAN). Regardless of the method used, log record storage capacity must be sufficient to store log data when the data cannot be offloaded to a log system or SAN.

Check Content:Review the application server documentation and configuration to determine if the application server creates log storage to buffer log data until offloading to a log data storage facility.

If the application server does not allocate storage for log data, this is a finding.

Fix Text: Configure the application server to allocate storage for log data before offloading to a log data storage facility.

CCI: CCI-001849

UNCLASSIFIED Page 47 of 80

Group ID (Vulid): V-57423Group Title: SRG-APP-000358-AS-000064Rule ID: SV-71695r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000358-AS-000064Rule Title: The application server must off-load log records onto a different system or media from the system being logged.

Vulnerability Discussion: Information system logging capability is critical for accurate forensic analysis. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, filenames involved, access control or flow control rules invoked.

Off-loading is a common process in information systems with limited log storage capacity.

Centralized management of log records provides for efficiency in maintenance and management of records, as well as the backup and archiving of those records. Application servers and their related components are required to off-load log records onto a different system or media than the system being logged.

Check Content:Verify the log records are being off-loaded to a separate system or transferred from the application server to a storage location other than the application server itself.

The system administrator of the device may demonstrate this capability using a log management application, system configuration, or other means.

If logs are not being off-loaded, this is a finding.

Fix Text: Configure the application server to off-load the logs to a remote log or management server.

CCI: CCI-001851

Group ID (Vulid): V-57425Group Title: SRG-APP-000515-AS-000203Rule ID: SV-71697r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000515-AS-000203Rule Title: The application server must, at a minimum, transfer the logs of interconnected systems in real time, and transfer the logs of standalone systems weekly.

Vulnerability Discussion: Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Protecting log data is important during a forensic investigation to ensure investigators can track and understand what may have occurred. Off-loading should be set up as a scheduled task but can be configured to be run manually, if other processes during the off-loading are manual.

Off-loading is a common process in information systems with limited log storage capacity.

Check Content:Verify the log records are being off-loaded, at a minimum of real time for interconnected systems and weekly for

UNCLASSIFIED Page 48 of 80

standalone systems.

If the application server is not meeting these requirements, this is a finding.

Fix Text: Configure the application server to off-load interconnected systems in real time and standalone systems weekly.

CCI: CCI-001851

Group ID (Vulid): V-57427Group Title: SRG-APP-000359-AS-000065Rule ID: SV-71699r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000359-AS-000065Rule Title: The application server must provide an immediate warning to the SA and ISSO, at a minimum, when allocated log record storage volume reaches 75% of maximum log record storage capacity.

Vulnerability Discussion: It is critical for the appropriate personnel to be aware if a system is at risk of failing to process logs as required. Log processing failures include software/hardware errors, failures in the log capturing mechanisms, and log storage capacity being reached or exceeded. Notification of the storage condition will allow administrators to take actions so that logs are not lost. This requirement can be met by configuring the application server to utilize a dedicated logging tool that meets this requirement.

Check Content:Review the configuration settings to determine if the application server logging system provides a warning to the SA and ISSO when 75% of allocated log record storage volume is reached.

If designated alerts are not sent, or the application server is not configured to use a dedicated logging tool that meets this requirement, this is a finding.

Fix Text: Configure the application server to provide an alert to the SA and ISSO when allocated log record storage volume reaches 75% of maximum log record storage capacity.

CCI: CCI-001855

Group ID (Vulid): V-57429Group Title: SRG-APP-000360-AS-000066Rule ID: SV-71701r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000360-AS-000066Rule Title: The application server must provide an immediate real-time alert to authorized users of all log failure events requiring real-time alerts.

Vulnerability Discussion: It is critical for the appropriate personnel to be aware if a system is at risk of failing to process logs as required. Log processing failures include software/hardware errors, failures in the log capturing mechanisms, and log storage capacity being reached or exceeded. Notification of the failure event will allow administrators to take actions so that logs are not lost.

Check Content:

UNCLASSIFIED Page 49 of 80

Review the configuration settings to determine if the application server log system provides a real-time alert to authorized users when log failure events occur requiring real-time alerts.

If designated alerts are not sent to authorized users, this is a finding.

Fix Text: Configure the application server to provide a real-time alert to authorized users when log failure events occur that require real-time alerts.

CCI: CCI-001858

Group ID (Vulid): V-57431Group Title: SRG-APP-000374-AS-000210Rule ID: SV-71703r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000374-AS-000210Rule Title: The application server must record time stamps for log records that can be mapped to Coordinated Universal Time (UTC) or Greenwich Mean Time (GMT).

Vulnerability Discussion: If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analysis.

Time stamps generated by the application include date and time. Time is commonly expressed in Coordinated Universal Time (UTC), a modern continuation of Greenwich Mean Time (GMT), or local time with an offset from UTC.

Check Content:Review the application server documentation and configuration files to determine if time stamps for log records can be mapped to UTC or GMT.

If the time stamp cannot be mapped to UTC or GMT, this is a finding.

Fix Text: Configure the application server to use time stamps for log records that can easily be mapped to UTC or GMT.

CCI: CCI-001890

Group ID (Vulid): V-57433Group Title: SRG-APP-000375-AS-000211Rule ID: SV-71705r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000375-AS-000211Rule Title: The application server must record time stamps for log records that meet a granularity of one second for a minimum degree of precision.

Vulnerability Discussion: To investigate an incident, the log records should be easily put into chronological order. Without sufficient granularity of time stamps, the chronological order cannot be determined.

Time stamps generated by the application server include date and time. Granularity of time measurements refers to the degree of synchronization between information system clocks and reference clocks.

UNCLASSIFIED Page 50 of 80

Check Content:Review the application server documentation and configuration files to determine if time stamps for log records meet a granularity of one second.

If the time stamp cannot generate to a one-second granularity, this is a finding.

Fix Text: Configure the application server to use time stamps for log records that can meet a granularity of one second.

CCI: CCI-001889

Group ID (Vulid): V-57435Group Title: SRG-APP-000371-AS-000077Rule ID: SV-71707r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000371-AS-000077Rule Title: The application server must compare internal application server clocks at least every 24 hours with an authoritative time source.

Vulnerability Discussion: Determining the correct time a particular application event occurred on a system is critical when conducting forensic analysis and investigating system events.

Synchronization of system clocks is needed in order to correctly correlate the timing of events that occur across multiple systems. To meet this requirement, the organization will define an authoritative time source and have each system compare its internal clock at least every 24 hours.

Check Content:Review application server documentation and confirm that the application server compares internal application server clocks at least every 24 hours with an authoritative time source.

If the application server does not compare internal application server clocks to an authoritative source or if the frequency is greater than every 24 hours, this is a finding.

Fix Text: Configure the application server to compare internal application server clocks at least every 24 hours with an authoritative time source.

CCI: CCI-001891

Group ID (Vulid): V-57437Group Title: SRG-APP-000372-AS-000212Rule ID: SV-71709r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000372-AS-000212Rule Title: The application server must synchronize internal application server clocks to an authoritative time source when the time difference is greater than the organization-defined time period.

Vulnerability Discussion: Determining the correct time a particular application event occurred on a system is critical when conducting forensic analysis and investigating system events.

UNCLASSIFIED Page 51 of 80

Synchronization of internal application server clocks is needed in order to correctly correlate the timing of events that occur across multiple systems. To meet this requirement, the organization will define an authoritative time source and have each system synchronize when the time difference is greater than a defined time period. The industry standard for the threshold is 1ms.

Check Content:Review application server documentation and configuration to determine if the application server is configured to reset internal information clocks when the difference is greater than a defined threshold with an authoritative time source.

If the application server cannot synchronize internal application server clocks to the authoritative time source when the time difference is greater than the organization-defined time period, this is a finding.

Fix Text: Configure the application server to reset internal information system clocks when the time difference is greater than a defined time period with the authoritative time source.

CCI: CCI-002046

Group ID (Vulid): V-57439Group Title: SRG-APP-000495-AS-000220Rule ID: SV-71711r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000495-AS-000220Rule Title: The application server must generate log records when successful/unsuccessful attempts to modify privileges occur.

Vulnerability Discussion: Changing privileges of a subject/object may cause a subject/object to gain or lose capabilities. When successful/unsuccessful changes are made, the event needs to be logged. By logging the event, the modification or attempted modification can be investigated to determine if it was performed inadvertently or maliciously.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records when successful/unsuccessful attempts are made to modify privileges.

If log records are not generated, this is a finding.

Fix Text: Configure the application server to generate log records when privileges are successfully or unsuccessfully modified.

CCI: CCI-000172

Group ID (Vulid): V-57441Group Title: SRG-APP-000499-AS-000224Rule ID: SV-71713r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000499-AS-000224Rule Title: The application server must generate log records when successful/unsuccessful attempts to delete

UNCLASSIFIED Page 52 of 80

privileges occur.

Vulnerability Discussion: Deleting privileges of a subject/object may cause a subject/object to gain or lose capabilities. When successful and unsuccessful privilege deletions are made, the events need to be logged. By logging the event, the modification or attempted modification can be investigated to determine if it was performed inadvertently or maliciously.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records when successful and unsuccessful attempts are made to delete privileges.

If log records are not generated, this is a finding.

Fix Text: Configure the application server to generate log records when privileges are successfully or unsuccessfully deleted.

CCI: CCI-000172

Group ID (Vulid): V-57443Group Title: SRG-APP-000503-AS-000228Rule ID: SV-71715r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000503-AS-000228Rule Title: The application server must generate log records when successful/unsuccessful logon attempts occur.

Vulnerability Discussion: Logging the access to the application server allows the system administrators to monitor user accounts. By logging successful/unsuccessful logons, the system administrator can determine if an account is compromised (e.g., frequent logons) or is in the process of being compromised (e.g., frequent failed logons) and can take actions to thwart the attack.

Logging successful logons can also be used to determine accounts that are no longer in use.

Check Content:Review product documentation and the system configuration to determine if the application server generates log records on successful and unsuccessful logon attempts by users.

If logon attempts do not generate log records, this is a finding.

Fix Text: Configure the application server to generate log records when successful/unsuccessful logon attempts are made by users.

CCI: CCI-000172

Group ID (Vulid): V-57445Group Title: SRG-APP-000504-AS-000229Rule ID: SV-71717r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000504-AS-000229Rule Title: The application server must generate log records for privileged activities.

UNCLASSIFIED Page 53 of 80

Vulnerability Discussion: Without generating log records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.

Privileged activities would occur through the management interface. This interface can be web-based or can be command line utilities. Whichever method is utilized by the application server, these activities must be logged.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records for privileged activities.

If log records are not generated for privileged activities, this is a finding.

Fix Text: Configure the application server to generate log records for privileged activities.

CCI: CCI-000172

Group ID (Vulid): V-57481Group Title: SRG-APP-000505-AS-000230Rule ID: SV-71757r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000505-AS-000230Rule Title: The application must generate log records showing starting and ending times for user access to the application server management interface.

Vulnerability Discussion: Determining when a user has accessed the management interface is important to determine the timeline of events when a security incident occurs. Generating these events, especially if the management interface is accessed via a stateless protocol like HTTP, the log events will be generated when the user performs a logon (start) and when the user performs a logoff (end). Without these events, the user and later investigators cannot determine the sequence of events and therefore cannot determine what may have happened and by whom it may have been done.

The generation of start and end times within log events allow the user to perform their due diligence in the event of a security breach.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records showing starting and ending times for user access to the management interface.

If log records are not generated showing starting and ending times of user access to the management interface, this is a finding.

Fix Text: Configure the application server to generate log records showing starting and ending times of user access to the management interface.

CCI: CCI-000172

Group ID (Vulid): V-57483

UNCLASSIFIED Page 54 of 80

Group Title: SRG-APP-000506-AS-000231Rule ID: SV-71759r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000506-AS-000231Rule Title: The application server must generate log records when concurrent logons from different workstations occur to the application server management interface.

Vulnerability Discussion: Being able to work on a system through multiple views into the application allows a user to work more efficiently and more accurately. Before environments with windowing capabilities or multiple desktops, a user would log onto the application from different workstations or terminals. With today's workstations, this is no longer necessary and may signal a compromised session or user account.

When concurrent logons are made from different workstations to the management interface, a log record needs to be generated. This allows the system administrator to investigate the incident and to be aware of the incident.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records showing concurrent logons from different workstations to the management interface.

If concurrent logons from different workstations are not logged, this is a finding.

Fix Text: Configure the application server to generate log records showing concurrent logons from different workstations to the management interface.

CCI: CCI-000172

Group ID (Vulid): V-57485Group Title: SRG-APP-000509-AS-000234Rule ID: SV-71761r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000509-AS-000234Rule Title: The application server must generate log records for all account creations, modifications, disabling, and termination events.

Vulnerability Discussion: The maintenance of user accounts is a key activity within the system to determine access and privileges. Through changes to accounts, an attacker can create an account for persistent access, modify an account to elevate privileges or terminate/disable an account(s) to cause a DoS for user(s). To be able to track and investigate these actions, log records must be generated for any account modification functions.

Application servers either provide a local user store, or they can integrate with enterprise user stores like LDAP. As such, the application server must be able to generate log records on account creation, modification, disabling, and termination.

Check Content:Review the application server documentation and the system configuration to determine if the application server generates log records when accounts are created, modified, disabled, or terminated.

If the application server does not generate log records for account creation, modification, disabling, and termination, this is a finding.

Fix Text: Configure the application server to generate log records when accounts are created, modified, disabled,

UNCLASSIFIED Page 55 of 80

or terminated.

CCI: CCI-000172

Group ID (Vulid): V-57487Group Title: SRG-APP-000353-AS-000235Rule ID: SV-71763r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000353-AS-000235Rule Title: The application server must provide the capability for organization-identified individuals or roles to change the logging to be performed on all application components, based on all selectable event criteria within organization-defined time thresholds.

Vulnerability Discussion: Log records can be generated from various components within the application server. The list of logged events is the set of events for which logs are to be generated. This set of events is typically a subset of the list of all events for which the system is capable of generating log records (i.e., logable events).Application server log events may include, but are not limited to, HTTP, Database, and XML parsing activity.

The application server must be capable of allowing defined individuals or roles to change the logging to be performed on all application server components, based on all selectable event criteria during a defined time threshold. The time threshold can be defined by such events as a change in the threat environment. The ability to change logging parameters during the threat would allow important forensic information to be gathered during the time duration of the threat.

Check Content:Review the application server configuration to determine if the application server provides the capability for organization-identified individuals or roles to change the logging to be performed on all application components, based on all selectable event criteria within organization-defined time thresholds.

If the application server cannot meet this requirement, this is a finding.

Fix Text: Configure the application server to provide the capability for organization-identified individuals or roles to change the logging to be performed on all application components, based on all selectable event criteria within organization-defined time thresholds.

CCI: CCI-001914

Group ID (Vulid): V-57489Group Title: SRG-APP-000355-AS-000055Rule ID: SV-71765r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000355-AS-000055Rule Title: The application server must provide the capability for authorized users to remotely view/hear, in real time, all content related to an established user session.

Vulnerability Discussion: Without the capability to remotely view/hear all content related to a user session, investigations into suspicious user activity would be hampered. Real-time monitoring allows authorized personnel to take action before additional damage is done. The ability to observe user sessions as they are happening allows for interceding in ongoing events that after-the-fact review of captured content would not allow.

UNCLASSIFIED Page 56 of 80

Check Content:Review the application server documentation to determine if the application server can be configured by authorized users to remotely view/hear, in real time, all content related to an established user session.

If the application server does not have the capability to allow authorized users to remotely view/hear all content related to an established user session, this is a finding.

Fix Text: Configure the application server to provide the capability for authorized users to remotely view/hear, in real time, all content related to an established user session.

CCI: CCI-001920

Group ID (Vulid): V-57491Group Title: SRG-APP-000380-AS-000088Rule ID: SV-71767r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000380-AS-000088Rule Title: The application server must enforce access restrictions associated with changes to application server configuration.

Vulnerability Discussion: When dealing with access restrictions pertaining to change control, it should be noted that any changes to the software, and/or application server configuration can potentially have significant effects on the overall security of the system.

Access restrictions for changes also include application software libraries.

If the application server provides automatic code deployment capability, (where updates to applications hosted on the application server are automatically performed, usually by the developers' IDE tool), it must also provide a capability to restrict the use of automatic application deployment. Automatic code deployments are allowable in a development environment, but not in production.

Check Content:Review the application server documentation and configuration to determine if the system employs mechanisms to enforce restrictions on application server configuration changes.

Configuration changes include, but are not limited to, automatic code deployments, software library updates, and changes to configuration settings within the application server.

If the application server does not enforce access restrictions for configuration changes, this is a finding.

Fix Text: Configure the application server to enforce access restrictions associated with changes to the application server configuration to include code deployment, library updates, and changes to application server configuration settings.

CCI: CCI-001813

Group ID (Vulid): V-57493Group Title: SRG-APP-000381-AS-000089

UNCLASSIFIED Page 57 of 80

Rule ID: SV-71769r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000381-AS-000089Rule Title: The application server must log the enforcement actions used to restrict access associated with changes to the application server.

Vulnerability Discussion: Without logging the enforcement of access restrictions against changes to the application server configuration, it will be difficult to identify attempted attacks, and a log trail will not be available for forensic investigation for after-the-fact actions. Configuration changes may occur to any of the modules within the application server through the management interface, but logging of actions to the configuration of a module outside the application server is not logged.

Enforcement actions are the methods or mechanisms used to prevent unauthorized changes to configuration settings. Enforcement action methods may be as simple as denying access to a file based on the application of file permissions (access restriction). Log items may consist of lists of actions blocked by access restrictions or changes identified after the fact.

Check Content:Check the application server documentation and logs to determine if enforcement actions used to restrict access associated with changes to the application server are logged.

If these actions are not logged, this is a finding.

Fix Text: Configure the application server to log the enforcement actions used to restrict access associated with changes to the application server.

CCI: CCI-001814

Group ID (Vulid): V-57495Group Title: SRG-APP-000131-AS-000002Rule ID: SV-71771r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000131-AS-000002Rule Title: The application server must prevent the installation of patches, service packs, or application components without verification the software component has been digitally signed using a certificate that is recognized and approved by the organization.

Vulnerability Discussion: Changes to any software components can have significant effects on the overall security of the application. Verifying software components have been digitally signed using a certificate that is recognized and approved by the organization ensures the software has not been tampered with and that it has been provided by a trusted vendor.

Accordingly, patches, service packs, or application components must be signed with a certificate recognized and approved by the organization.

Verifying the authenticity of the software prior to installation validates the integrity of the patch or upgrade received from a vendor. This ensures the software has not been tampered with and that it has been provided by a trusted vendor. Self-signed certificates are disallowed by this requirement. The application should not have to verify the software again. This requirement does not mandate DoD certificates for this purpose; however, the certificate used to verify the software must be from an approved CA.

UNCLASSIFIED Page 58 of 80

Check Content:Review system documentation to determine if the application server prevents the installation of patches, service packs, or application components without verification the software component has been digitally signed using a certificate that is recognized and approved by the organization.

If the application server does not meet this requirement, this is a finding.

Fix Text: Configure the application server to prevent the installation of patches, service packs, or application components without verification the software component has been digitally signed using a certificate that is recognized and approved by the organization.

CCI: CCI-001749

Group ID (Vulid): V-57497Group Title: SRG-APP-000133-AS-000093Rule ID: SV-71773r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000133-AS-000093Rule Title: The application server must be capable of reverting to the last known good configuration in the event of failed installations and upgrades.

Vulnerability Discussion: Any changes to the components of the application server can have significant effects on the overall security of the system.

In order to ensure a prompt response to failed application installations and application server upgrades, the application server must provide an automated rollback capability that allows the system to be restored to a previous known good configuration state prior to the application installation or application server upgrade.

Check Content:Check the application server documentation and configuration to determine if the application server provides an automated rollback capability to a known good configuration in the event of a failed installation and upgrade.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to automatically rollback to a known good configuration in the event of failed application installations and application server upgrades.

CCI: CCI-001499

Group ID (Vulid): V-57499Group Title: SRG-APP-000516-AS-000237Rule ID: SV-71775r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000516-AS-000237Rule Title: The application server must be configured in accordance with the security configuration settings based on DoD security configuration or implementation guidance, including STIGs, NSA configuration guides, CTOs, and DTMs.

Vulnerability Discussion: Configuring the application to implement organization-wide security implementation

UNCLASSIFIED Page 59 of 80

guides and security checklists ensures compliance with federal standards and establishes a common security baseline across DoD that reflects the most restrictive security posture consistent with operational requirements.

Configuration settings are the set of parameters that can be changed that affect the security posture and/or functionality of the system. Security-related parameters are those parameters impacting the security state of the application, including the parameters required to satisfy other security control requirements.

Check Content:Review the application server documentation and configuration to determine if the application server is configured in accordance with the security configuration settings based on DoD security configuration or implementation guidance, including STIGs, NSA configuration guides, CTOs, and DTMs.

If the application server is not configured in accordance with security configuration settings, this is a finding.

Fix Text: Configure the application server to be in accordance with the security configuration settings based on DoD security configuration or implementation guidance, including STIGs, NSA configuration guides, CTOs, and DTMs.

CCI: CCI-000366

Group ID (Vulid): V-57501Group Title: SRG-APP-000142-AS-000014Rule ID: SV-71777r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000142-AS-000014Rule Title: The application server must prohibit or restrict the use of nonsecure ports, protocols, modules, and/or services as defined in the PPSM CAL and vulnerability assessments.

Vulnerability Discussion: Some networking protocols may not meet organizational security requirements to protect data and components.

Application servers natively host a number of various features, such as management interfaces, httpd servers and message queues. These features all run on TCPIP ports. This creates the potential that the vendor may choose to utilize port numbers or network services that have been deemed unusable by the organization. The application server must have the capability to both reconfigure and disable the assigned ports without adversely impacting application server operation capabilities. For a list of approved ports and protocols, reference the DoD ports and protocols web site at https://powhatan.iiie.disa.mil/ports/cal.html.

Check Content:Review the application server documentation and deployment configuration to determine which ports and protocols are enabled.

Verify that the ports and protocols being used are not prohibited and are necessary for the operation of the application server and the hosted applications.

If any of the ports or protocols is prohibited or not necessary for the application server operation, this is a finding.

Fix Text: Configure the application server to disable any ports or protocols that are prohibited by the PPSM CAL and vulnerability assessments.

CCI: CCI-000382

UNCLASSIFIED Page 60 of 80

Group ID (Vulid): V-57503Group Title: SRG-APP-000391-AS-000239Rule ID: SV-71779r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000391-AS-000239Rule Title: The application server must accept Personal Identity Verification (PIV) credentials to access the management interface.

Vulnerability Discussion: The use of PIV credentials facilitates standardization and reduces the risk of unauthorized access.

PIV credentials are only used in an unclassified environment.

DoD has mandated the use of the CAC to support identity management and personal authentication for systems covered under HSPD 12, as well as its use as a primary component of layered protection for national security systems.

The application server must support the use of PIV credentials to access the management interface and perform management functions.

Check Content:Review application server documentation and configuration to ensure the application server accepts PIV credentials to the management interface.

If PIV credentials are not accepted, this is a finding.

Fix Text: Configure the application server to accept PIV credentials to access the management interface.

CCI: CCI-001953

Group ID (Vulid): V-57505Group Title: SRG-APP-000392-AS-000240Rule ID: SV-71781r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000392-AS-000240Rule Title: The application server must electronically verify Personal Identity Verification (PIV) credentials for access to the management interface.

Vulnerability Discussion: The use of Personal Identity Verification (PIV) credentials facilitates standardization and reduces the risk of unauthorized access.

PIV credentials are only used in an unclassified environment.

DoD has mandated the use of the CAC to support identity management and personal authentication for systems covered under HSPD 12, as well as its use as a primary component of layered protection for national security systems.

UNCLASSIFIED Page 61 of 80

The application server must electronically verify the use of PIV credentials to access the management interface and perform management functions.

Check Content:Review application server documentation and configuration to ensure the application server electronically verifies PIV credentials to the management interface.

If PIV credentials are not electronically verified, this is a finding.

Fix Text: Configure the application server to electronically verify PIV credentials to access the management interface.

CCI: CCI-001954

Group ID (Vulid): V-57507Group Title: SRG-APP-000394-AS-000241Rule ID: SV-71783r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000394-AS-000241Rule Title: The application server must authenticate all network-connected endpoint devices before establishing any connection.

Vulnerability Discussion: Device authentication requires unique identification and authentication that may be defined by type, by specific device, or by a combination of type and device.

Device authentication is accomplished via the use of certificates and protocols such as SSL mutual authentication.

Device authentication is performed when the application server is providing web services capabilities and data protection requirements mandate the need to establish the identity of the connecting device before the connection is established.

Check Content:Review application server documentation, application data protection requirements, and configuration to ensure the application server provides an SSL mutual authentication capability and the authentication is completed before the connection is fully established.

If data protection requirements require mutual authentication and the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to perform mutual authentication of network-connected endpoint devices before the connection is established.

CCI: CCI-001958

Group ID (Vulid): V-57509Group Title: SRG-APP-000395-AS-000109Rule ID: SV-71785r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000395-AS-000109

UNCLASSIFIED Page 62 of 80

Rule Title: The application server must authenticate all endpoint devices before establishing a local, remote, and/or network connection using bidirectional authentication that is cryptographically based.

Vulnerability Discussion: Device authentication requires unique identification and authentication that may be defined by type, by specific device, or by a combination of type and device.

Bidirectional authentication provides stronger safeguards to validate the identity of other devices for connections that are of greater risk.

Device authentication is performed when the application server is providing web services capabilities and data protection requirements mandate the need to establish the identity of the connecting device before the connection is established.

Because of the challenges of applying this requirement on a large scale, organizations are encouraged to only apply the requirement to those limited number (and type) of devices that truly need to support this capability.

Check Content:If data protection requirements do not mandate the need to establish the identity of the connecting device before the connection is established, this requirement is NA.

Review application server documentation and configuration to determine if the application server authenticates all endpoint devices before establishing a local, remote, and/or network connection using bidirectional authentication that is cryptographically based.

If the application server does not meet this requirement, this is a finding.

Fix Text: If data protection requirements do not mandate the need to establish the identity of the connecting device before the connection is established, this requirement is NA.

Configure the application server to authenticate all endpoint devices before establishing a local, remote, and/or network connection using bidirectional authentication that is cryptographically based.

CCI: CCI-001967

Group ID (Vulid): V-57511Group Title: SRG-APP-000401-AS-000243Rule ID: SV-71787r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000401-AS-000243Rule Title: The application server, for PKI-based authentication, must implement a local cache of revocation data to support path discovery and validation in case of the inability to access revocation information via the network.

Vulnerability Discussion: The cornerstone of the PKI is the private key used to encrypt or digitally sign information. The key by itself is a cryptographic value that does not contain specific user information.

Application servers must provide the capability to utilize and meet requirements of the DoD Enterprise PKI infrastructure for application authentication, but without configuring a local cache of revocation data, there is the potential to allow access to users who are no longer authorized (users with revoked certificates) when access through the network to the CA is not available.

Check Content:

UNCLASSIFIED Page 63 of 80

Review application server documentation to ensure the application server provides a PKI integration capability that implements a local cache of revocation data to support path discovery and validation in case of the inability to access revocation information via the network.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to implement a local cache of revocation data to support path discovery and validation in case of the inability to access revocation information via the network.

CCI: CCI-001991

Group ID (Vulid): V-57513Group Title: SRG-APP-000400-AS-000246Rule ID: SV-71789r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000400-AS-000246Rule Title: The application server must prohibit the use of cached authenticators after an organization-defined time period.

Vulnerability Discussion: When the application server is using PKI authentication, a local revocation cache must be stored for instances when the revocation cannot be authenticated through the network, but if cached authentication information is out of date, the validity of the authentication information may be questionable.

Check Content:Review application server documentation to ensure the application server prohibits the use of cached authenticators after an organization-defined timeframe.

If the application server is not configured to meet this requirement, this is a finding.

Fix Text: Configure the application server to prohibit the use of cached authenticators after an organization- defined timeframe.

CCI: CCI-002007

Group ID (Vulid): V-57515Group Title: SRG-APP-000402-AS-000247Rule ID: SV-71791r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000402-AS-000247Rule Title: The application server must accept Personal Identity Verification (PIV) credentials from other federal agencies to access the management interface.

Vulnerability Discussion: Personal Identity Verification (PIV) credentials are those credentials issued by federal agencies that conform to FIPS Publication 201 and supporting guidance documents. OMB Memorandum 11-11 requires federal agencies to continue implementing the requirements specified in HSPD-12 to enable agency-wide use of PIV credentials. PIV credentials are only used in an unclassified environment.

Access may be denied to authorized users if federal agency PIV credentials are not accepted to access the management interface.

UNCLASSIFIED Page 64 of 80

Check Content:Review the application server documentation and configuration to determine if the application server accepts PIV credentials from other federal agencies to access the management interface.

If the application server does not accept other federal agency PIV credentials to access the management interface, this is a finding.

Fix Text: Configure the application server to accept PIV credentials from other federal agencies to access the management interface.

CCI: CCI-002009

Group ID (Vulid): V-57517Group Title: SRG-APP-000403-AS-000248Rule ID: SV-71793r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000403-AS-000248Rule Title: The application server must electronically verify Personal Identity Verification (PIV) credentials from other federal agencies to access the management interface.

Vulnerability Discussion: Personal Identity Verification (PIV) credentials are those credentials issued by federal agencies that conform to FIPS Publication 201 and supporting guidance documents. OMB Memorandum 11-11 requires federal agencies to continue implementing the requirements specified in HSPD-12 to enable agency-wide use of PIV credentials. PIV credentials are only used in an unclassified environment.

If PIV credentials are not electronically verified before accessing the management interface, unauthorized users may gain access to the system and data the user has not been granted access to.

Check Content:The CAC is the standard DoD authentication token; the PIV is the standard authentication token used by federal/civilian agencies.

If access to the application server is limited to DoD personnel accessing the system via CAC; and PIV access is not warranted or allowed as per the system security plan, the PIV requirement is NA.

Review the application server documentation and configuration to determine if the application server electronically verifies PIV credentials from other federal agencies to access the management interface.

If the application server does not electronically verify other federal agency PIV credentials to access the management interface, this is a finding.

Fix Text: Configure the unclassified application server to electronically verify PIV credentials from other federal agencies before granting access to the management interface.

CCI: CCI-002010

UNCLASSIFIED Page 65 of 80

Group ID (Vulid): V-57519Group Title: SRG-APP-000404-AS-000249Rule ID: SV-71795r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000404-AS-000249Rule Title: The application server must accept FICAM-approved third-party credentials.

Vulnerability Discussion: Access may be denied to legitimate users if FICAM-approved third-party credentials are not accepted.

This requirement typically applies to organizational information systems that are accessible to non-federal government agencies and other partners. This allows federal government relying parties to trust such credentials at their approved assurance levels.

Third-party credentials are those credentials issued by non-federal government entities approved by the Federal Identity, Credential, and Access Management (FICAM) Trust Framework Solutions initiative.

Check Content:Review the application server documentation and configuration to determine if the application server accepts FICAM-approved third-party credentials.

If the application server does not accept FICAM-approved third-party credentials, this is a finding.

Fix Text: Configure the application server to accept FICAM-approved third-party credentials.

CCI: CCI-002011

Group ID (Vulid): V-57521Group Title: SRG-APP-000405-AS-000250Rule ID: SV-71797r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000405-AS-000250Rule Title: The application server must conform to FICAM-issued profiles.

Vulnerability Discussion: Without conforming to FICAM-issued profiles, the information system may not be interoperable with FICAM-authentication protocols, such as SAML 2.0 and OpenID 2.0.

This requirement addresses open identity management standards.

Check Content:Review the application server documentation and configuration to determine if the application server conforms to FICAM-issued profiles.

If the application server does not conform to FICAM-issued profiles, this is a finding.

Fix Text: Configure the application server to conform to FICAM-issued profiles.

CCI: CCI-002014

Group ID (Vulid): V-57523Group Title: SRG-APP-000389-AS-000253

UNCLASSIFIED Page 66 of 80

Rule ID: SV-71799r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000389-AS-000253Rule Title: The application server must require users to re-authenticate when organization-defined circumstances or situations require re-authentication.

Vulnerability Discussion: Without re-authentication, users may access resources or perform tasks for which they do not have authorization.

When applications provide the capability to change security roles or escalate the functional capability of the application, it is critical the user re-authenticate.

In addition to the re-authentication requirements associated with session locks, the application server security model may require re-authentication of individuals in other situations, including (but not limited to) the following circumstances:

(i) When authenticators change;(ii) When roles change;(iii) When security categories of information systems change;(iv) When the execution of privileged functions occurs;(v) After a fixed period of time; or(vi) Periodically.

Within the DoD, the minimum circumstances requiring re-authentication are privilege escalation and role changes.

Check Content:Review the application server documentation and configuration to determine if the application server requires a user to re-authenticate when organization-defined circumstances or situations are met.

If the application server does not require a user to re-authenticate when organization-defined circumstances or situations are met, this is a finding.

Fix Text: Configure the application server to require a user to re-authenticate when organization-defined circumstances or situations are met.

CCI: CCI-002038

Group ID (Vulid): V-57525Group Title: SRG-APP-000390-AS-000254Rule ID: SV-71801r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000390-AS-000254Rule Title: The application server must require devices to re-authenticate when organization-defined circumstances or situations require re-authentication.

Vulnerability Discussion: Without re-authenticating devices, unidentified or unknown devices may be introduced, thereby facilitating malicious activity.

In addition to the re-authentication requirements associated with session locks, organizations may require re- authentication of devices, including (but not limited to), the following other situations.

UNCLASSIFIED Page 67 of 80

(i) When authenticators change;(ii) When roles change;(iii) When security categories of information systems change;(iv) After a fixed period of time; or(v) Periodically.

For distributed architectures (e.g., service-oriented architectures), the decisions regarding the validation of identification claims may be made by services separate from the services acting on those decisions. In such situations, it is necessary to provide the identification decisions (as opposed to the actual identifiers) to the services that need to act on those decisions.

Check Content:Review the application server documentation and configuration to determine if the application server requires devices to re-authenticate when organization-defined circumstances or situations require re-authentication.

If the application server does not require a device to re-authenticate, this is a finding.

Fix Text: Configure the application server to require devices to re-authenticate when organization-defined circumstances or situations require re-authentication.

CCI: CCI-002039

Group ID (Vulid): V-57527Group Title: SRG-APP-000181-AS-000255Rule ID: SV-71803r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000181-AS-000255Rule Title: The application server must provide a log reduction capability that supports on-demand reporting requirements.

Vulnerability Discussion: The ability to generate on-demand reports, including after the log data has been subjected to log reduction, greatly facilitates the organization's ability to generate incident reports as needed to better handle larger-scale or more complex security incidents.

Log reduction is a process that manipulates collected log information and organizes such information in a summary format that is more meaningful to analysts. The report generation capability provided by the application must support on-demand (i.e., customizable, ad-hoc, and as-needed) reports.

To fully understand and investigate an incident within the components of the application server, the application server, when providing a reduction capability, must provide an on-demand reporting capability.

Check Content:Review application server product documentation and server configuration to determine if the application server provides a log reduction capability with on-demand report.

If the application server does not provide log reduction with on-demand reporting, this is a finding.

Fix Text: Configure the application server to provide and utilize log reduction with on-demand reporting.

CCI: CCI-001876

UNCLASSIFIED Page 68 of 80

Group ID (Vulid): V-57529Group Title: SRG-APP-000435-AS-000163Rule ID: SV-71805r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000435-AS-000163Rule Title: The application server must protect against or limit the effects of all types of Denial of Service (DoS) attacks by employing organization-defined security safeguards.

Vulnerability Discussion: DoS is a condition when a resource is not available for legitimate users. When this occurs, the organization either cannot accomplish its mission or must operate at degraded capacity. To reduce the possibility or effect of a DoS, the application server must employ defined security safeguards. These safeguards will be determined by the placement of the application server and the type of applications being hosted within the application server framework.

There are many examples of technologies that exist to limit or, in some cases, eliminate the effects of DoS attacks (e.g., limiting processes or restricting the number of sessions the application opens at one time). Employing increased capacity and bandwidth, combined with service redundancy or clustering, may reduce the susceptibility to some DoS attacks.

Check Content:Review application server documentation and configuration to determine if the application server can protect against or limit the effects of all types of Denial of Service (DoS) attacks by employing defined security safeguards.

If the application server cannot be configured to protect against or limit the effects of all types of DoS, this is a finding.

Fix Text: Configure the application server to protect against or limit the effects of all types of Denial of Service (DoS) attacks by employing defined security safeguards.

CCI: CCI-002385

Group ID (Vulid): V-57531Group Title: SRG-APP-000435-AS-000069Rule ID: SV-71807r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000435-AS-000069Rule Title: The application server, when a MAC I system, must be in a high-availability (HA) cluster.

Vulnerability Discussion: A MAC I system is a system that handles data vital to the organization's operational readiness or effectiveness of deployed or contingency forces. A MAC I system must maintain the highest level of integrity and availability. By HA clustering the application server, the hosted application and data are given a platform that is load-balanced and provided high-availability.

Check Content:If the application server is not a MAC I system, this requirement is NA.

Review the application server documentation and configuration to determine if the application server is part of an HA cluster.

UNCLASSIFIED Page 69 of 80

If the application server is not part of an HA cluster, this is a finding.

Fix Text: If the application server is not a MAC I system, this requirement is NA.

Configure the application server to be part of an HA cluster.

CCI: CCI-002385

Group ID (Vulid): V-57533Group Title: SRG-APP-000439-AS-000155Rule ID: SV-71809r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-AS-000155Rule Title: The application server must protect the confidentiality and integrity of transmitted information through the use of an approved TLS version.

Vulnerability Discussion: Preventing the disclosure of transmitted information requires that the application server take measures to employ some form of cryptographic mechanism in order to protect the information during transmission. This is usually achieved through the use of Transport Layer Security (TLS).

Transmission of data can take place between the application server and a large number of devices/applications external to the application server. Examples are a web client used by a user, a backend database, a log server, or other application servers in an application server cluster.

If data is transmitted unencrypted, the data then becomes vulnerable to disclosure. The disclosure may reveal user identifier/password combinations, website code revealing business logic, or other user personal information.

FIPS 140-2 approved TLS versions include TLS V1.0 or greater.

TLS must be enabled and non-FIPS-approved SSL versions must be disabled. NIST SP 800-52 specifies the preferred configurations for government systems.

Check Content:Review the application server documentation and deployed configuration to determine which version of TLS is being used.

If the application server is not using TLS to maintain the confidentiality and integrity of transmitted information or non-FIPS-approved SSL versions are enabled, this is a finding.

Fix Text: Configure the application server to use a FIPS-2 approved TLS version to maintain the confidentiality and integrity of transmitted information and to disable all non-FIPS-approved SSL versions.

CCI: CCI-002418

Group ID (Vulid): V-57535Group Title: SRG-APP-000440-AS-000167Rule ID: SV-71811r2_ruleSeverity: CAT II

UNCLASSIFIED Page 70 of 80

Rule Version (STIG-ID): SRG-APP-000440-AS-000167Rule Title: The application server must employ approved cryptographic mechanisms to prevent unauthorized disclosure of information and/or detect changes to information during transmission.

Vulnerability Discussion: Preventing the disclosure or modification of transmitted information requires that application servers take measures to employ approved cryptography in order to protect the information during transmission over the network. This is usually achieved through the use of Transport Layer Security (TLS), SSL VPN, or IPSec tunnel.

If data in transit is unencrypted, it is vulnerable to disclosure and modification. If approved cryptographic algorithms are not used, encryption strength cannot be assured.

FIPS 140-2 approved TLS versions include TLS V1.0 or greater.

TLS must be enabled and non-FIPS-approved SSL versions must be disabled. NIST SP 800-52 specifies the preferred configurations for government systems.

Check Content:Review application server documentation and configuration to determine if the application server employs approved cryptographic mechanisms to prevent unauthorized disclosure of information and/or detect changes to information during transmission.

If the application server does not employ approved cryptographic mechanisms, this is a finding.

Fix Text: Configure the application server to use AES 128 or AES 256 encryption for data in transit.

CCI: CCI-002421

Group ID (Vulid): V-57537Group Title: SRG-APP-000441-AS-000258Rule ID: SV-71813r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000441-AS-000258Rule Title: The application server must maintain the confidentiality and integrity of information during preparation for transmission.

Vulnerability Discussion: Information can be either unintentionally or maliciously disclosed or modified during preparation for transmission including, for example, during aggregation, at protocol transformation points, and during packing/unpacking. These unauthorized disclosures or modifications compromise the confidentiality or integrity of the information.

An example of this would be an SMTP queue. This queue may be part of the application server so error messages from the server can be sent to system administrators, or SMTP functionality can be added to hosted applications by developers.

Any modules used by the application server that queue data before transmission must maintain the confidentiality and integrity of the information before the data is transmitted.

Check Content:Review the application server documentation and deployed configuration to determine if the application server maintains the confidentiality and integrity of information during preparation before transmission.

UNCLASSIFIED Page 71 of 80

If the confidentiality and integrity is not maintained, this is a finding.

Fix Text: Configure the application server to maintain the confidentiality and integrity of information during preparation for transmission.

CCI: CCI-002420

Group ID (Vulid): V-57539Group Title: SRG-APP-000442-AS-000259Rule ID: SV-71815r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000442-AS-000259Rule Title: The application server must maintain the confidentiality and integrity of information during reception.

Vulnerability Discussion: Information can be either unintentionally or maliciously disclosed or modified during reception, including, for example, during aggregation, at protocol transformation points, and during packing/unpacking. These unauthorized disclosures or modifications compromise the confidentiality or integrity of the information.

Protecting the confidentiality and integrity of received information requires that application servers take measures to employ approved cryptography in order to protect the information during transmission over the network. This is usually achieved through the use of Transport Layer Security (TLS), SSL VPN, or IPSEC tunnel.

The application server must utilize approved encryption when receiving transmitted data.

Check Content:Review application server configuration to determine if the server is using a transmission method that maintains the confidentiality and integrity of information during reception.

If a transmission method is not being used that maintains the confidentiality and integrity of the data during reception, this is a finding.

Fix Text: Configure the application server to utilize a transmission method that maintains the confidentiality and integrity of information during reception.

CCI: CCI-002422

Group ID (Vulid): V-57541Group Title: SRG-APP-000416-AS-000140Rule ID: SV-71817r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000416-AS-000140Rule Title: The application server must implement NSA-approved cryptography to protect classified information in accordance with applicable federal laws, Executive Orders, directives, policies, regulations, and standards.

Vulnerability Discussion: Cryptography is only as strong as the encryption modules/algorithms employed to encrypt the data. Use of weak or untested encryption algorithms undermines the purposes of utilizing encryption to protect data.

UNCLASSIFIED Page 72 of 80

NSA has developed Type 1 algorithms for protecting classified information. The Committee on National Security Systems (CNSS) National Information Assurance Glossary (CNSS Instruction No. 4009) defines Type 1 products as:

"Cryptographic equipment, assembly or component classified or certified by NSA for encrypting and decrypting classified and sensitive national security information when appropriately keyed. Developed using established NSA business processes and containing NSA-approved algorithmsare used to protect systems requiring the most stringent protection mechanisms."

NSA-approved cryptography is required to be used for classified information system processing.

The application server must utilize NSA-approved encryption modules when protecting classified data. This means using AES and other approved encryption modules.

Check Content:Review application server documentation to verify that the application server is using NSA-approved cryptography to protect classified data and applications resident on the device.

If the application server is not using NSA-approved cryptography for classified data and applications, this is a finding.

Fix Text: Configure the application server to utilize NSA-approved cryptography to protect classified information.

CCI: CCI-002450

Group ID (Vulid): V-57543Group Title: SRG-APP-000514-AS-000136Rule ID: SV-71819r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000514-AS-000136Rule Title: Application servers must use NIST-approved or NSA-approved key management technology and processes.

Vulnerability Discussion: An asymmetric encryption key must be protected during transmission. The public portion of an asymmetric key pair can be freely distributed without fear of compromise, and the private portion of the key must be protected. The application server will provide software libraries that applications can programmatically utilize to encrypt and decrypt information. These application server libraries must use NIST- approved or NSA-approved key management technology and processes when producing, controlling, or distributing symmetric and asymmetric keys.

Check Content:Review application server configuration and the NIST FIPS certificate to validate the application server uses NIST-approved or NSA-approved key management technology and processes when producing, controlling or distributing symmetric and asymmetric keys.

If the application server does not use this NIST-approved or NSA-approved key management technology and processes, this is a finding.

Fix Text: Configure the application server to utilize NIST-approved or NSA-approved key management technology when the application server produces, controls, and distributes symmetric and asymmetric

UNCLASSIFIED Page 73 of 80

cryptographic keys.

CCI: CCI-002450

Group ID (Vulid): V-57545Group Title: SRG-APP-000514-AS-000137Rule ID: SV-71821r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000514-AS-000137Rule Title: The application server must use DoD- or CNSS-approved PKI Class 3 or Class 4 certificates.

Vulnerability Discussion: Class 3 PKI certificates are used for servers and software signing rather than for identifying individuals. Class 4 certificates are used for business-to-business transactions. Utilizing unapproved certificates not issued or approved by DoD or CNS creates an integrity risk. The application server must utilize approved DoD or CNS Class 3 or Class 4 certificates for software signing and business-to-business transactions.

Check Content:Review the application server configuration to determine if the application server utilizes approved PKI Class 3 or Class 4 certificates.

If the application server is not configured to use approved DoD or CNS certificates, this is a finding.

Fix Text: Configure the application server to use DoD- or CNSS-approved Class 3 or Class 4 PKI certificates.

CCI: CCI-002450

Group ID (Vulid): V-57547Group Title: SRG-APP-000206-AS-000145Rule ID: SV-71823r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000206-AS-000145Rule Title: The application server must identify prohibited mobile code.

Vulnerability Discussion: Mobile code is defined as software modules obtained from remote systems, transferred across a network, and then downloaded and executed on a local system without explicit installation or execution by the recipient.

Mobile code technologies include: Java, JavaScript, ActiveX, PDF, Postscript, Shockwave movies, Flash animations, and VBScript. Usage restrictions and implementation guidance apply to both the selection and use of mobile code installed on organizational servers and mobile code downloaded and executed on individual workstations.

Application servers must meet policy requirements regarding the deployment and/or use of mobile code. This includes digitally signing applets in order to provide a means for the client to establish application authenticity and prohibit unauthorized code from being used.

Check Content:Review the application server configuration to determine if the application server is configured to identify

UNCLASSIFIED Page 74 of 80

prohibited mobile code.

If the application server is not configured to identify prohibited mobile code, this is a finding.

Fix Text: Configure the application server to identify prohibited mobile code.

CCI: CCI-001166

Group ID (Vulid): V-57549Group Title: SRG-APP-000223-AS-000150Rule ID: SV-71825r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000223-AS-000150Rule Title: The application server must generate a unique session identifier for each session.

Vulnerability Discussion: Unique session IDs are the opposite of sequentially generated session IDs, which can be easily guessed by an attacker. Unique session identifiers help to reduce predictability of session identifiers.Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending application traffic, they will have more difficulty in hijacking the session or otherwise manipulating valid sessions.

Application servers must generate a unique session identifier for each application session so as to prevent session hijacking.

Check Content:Review the application server configuration to determine if the application server generates a unique session identifier for each session.

Request an administrator log onto the server and view the logs to verify a unique session identifier was assigned to the session.

If the application server does not generate a unique session identifier for each session, this is a finding.

Fix Text: Configure the application server to generate a unique session identifier for each session.

CCI: CCI-001664

Group ID (Vulid): V-57551Group Title: SRG-APP-000427-AS-000264Rule ID: SV-71827r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000427-AS-000264Rule Title: The application server must only allow the use of DoD PKI-established certificate authorities for verification of the establishment of protected sessions.

Vulnerability Discussion: Untrusted Certificate Authorities (CA) can issue certificates, but they may be issued by organizations or individuals that seek to compromise DoD systems or by organizations with insufficient security controls. If the CA used for verifying the certificate is not a DoD-approved CA, trust of this CA has not been established.

UNCLASSIFIED Page 75 of 80

The DoD will only accept PKI certificates obtained from a DoD-approved internal or external certificate authority. Reliance on CAs for the establishment of secure sessions includes, for example, the use of SSL/TLS certificates. The application server must only allow the use of DoD PKI-established certificate authorities for verification.

Check Content:Review the application server documentation and configuration to determine if the application server only allows the use of DoD PKI-established certificate authorities.

If the application server allows other certificate authorities for verification, this is a finding.

Fix Text: Configure the application server to allow the use of DoD PKI-established certificate authorities for verification of the establishment of protected sessions.

CCI: CCI-002470

Group ID (Vulid): V-57553Group Title: SRG-APP-000225-AS-000166Rule ID: SV-71829r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-AS-000166Rule Title: The application server must fail to a secure state if system initialization fails, shutdown fails, or aborts fail.

Vulnerability Discussion: Fail-secure is a condition achieved by the application server in order to ensure that in the event of an operational failure, the system does not enter into an unsecure state where intended security properties no longer hold. Preserving information system state information also facilitates system restart and return to the operational mode of the organization with less disruption of mission-essential processes.

Check Content:Review application server documentation and configuration to determine if the application server fails to a secure state if system initialization fails, shutdown fails, or aborts fail.

If the application server cannot be configured to fail securely, this is a finding.

Fix Text: Configure the application server to fail to a secure state if system initialization fails, shutdown fails, or aborts fail.

CCI: CCI-001190

Group ID (Vulid): V-57555Group Title: SRG-APP-000231-AS-000133Rule ID: SV-71831r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000231-AS-000133Rule Title: The application server must protect the confidentiality and integrity of all information at rest.

Vulnerability Discussion: When data is written to digital media such as hard drives, mobile computers, external/removable hard drives, personal digital assistants, flash/thumb drives, etc., there is risk of data loss and

UNCLASSIFIED Page 76 of 80

data compromise.

Fewer protection measures are needed for media containing information determined by the organization to be in the public domain, to be publicly releasable, or to have limited or no adverse impact if accessed by other than authorized personnel. In these situations, it is assumed the physical access controls where the media resides provide adequate protection.

As part of a defense-in-depth strategy, data owners and DoD consider routinely encrypting information at rest on selected secondary storage devices. The employment of cryptography is at the discretion of the information owner/steward. The selection of the cryptographic mechanisms used is based upon maintaining the confidentiality and integrity of the information.

The strength of mechanisms is commensurate with the classification and sensitivity of the information.

The application server must directly provide, or provide access to, cryptographic libraries and functionality that allow applications to encrypt data when it is stored.

Check Content:Review the application server documentation and configuration to ensure the application server is protecting the confidentiality and integrity of all information at rest.

If the confidentiality and integrity of all information at rest is not protected, this is a finding.

Fix Text: Configure the application server to protect the confidentiality and integrity of all information at rest.

CCI: CCI-001199

Group ID (Vulid): V-57557Group Title: SRG-APP-000428-AS-000265Rule ID: SV-71833r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000428-AS-000265Rule Title: The application server must implement cryptographic mechanisms to prevent unauthorized modification of organization-defined information at rest on organization-defined information system components.

Vulnerability Discussion: Information at rest refers to the state of information when it is located on a secondary storage device (e.g., disk drive, tape drive) within an application server. Alternative physical protection measures include protected distribution systems.

In order to prevent unauthorized disclosure or modification of the information, application servers must protect data at rest by using cryptographic mechanisms.

Selection of a cryptographic mechanism is based on the need to protect the integrity of organizational information. The strength of the mechanism is commensurate with the security category and/or classification of the information. Organizations have the flexibility to either encrypt all information on storage devices (i.e., full disk encryption) or encrypt specific data structures (e.g., files, records, or fields).

Check Content:Review application server documentation and configuration to determine if the application server implements cryptographic mechanisms to prevent unauthorized modification of organization-defined information at rest on organization-defined information system components.

UNCLASSIFIED Page 77 of 80

If the application server does not implement cryptographic mechanisms to prevent unauthorized modification, this is a finding.

Fix Text: Configure the application server to implement cryptographic mechanisms to prevent unauthorized modification of organization-defined information at rest on organization-defined information system components.

CCI: CCI-002475

Group ID (Vulid): V-57559Group Title: SRG-APP-000429-AS-000157Rule ID: SV-71835r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000429-AS-000157Rule Title: The application must implement cryptographic mechanisms to prevent unauthorized disclosure of organization-defined information at rest on organization-defined information system components.

Vulnerability Discussion: Information at rest refers to the state of information when it is located on a secondary storage device (e.g., disk drive, tape drive) within an application server. Alternative physical protection measures include protected distribution systems.

In order to prevent unauthorized disclosure or modification of the information, application servers must protect data at rest by using cryptographic mechanisms.

Check Content:Review application server documentation and configuration to determine if the application server implements cryptographic mechanisms to prevent unauthorized disclosure of organization-defined information at rest on organization-defined information system components.

If the application server does not implement cryptographic mechanisms to prevent unauthorized disclosure, this is a finding.

Fix Text: Configure the application server to implement cryptographic mechanisms to prevent unauthorized disclosure of organization-defined information at rest on organization-defined information system components.

CCI: CCI-002476

Group ID (Vulid): V-57561Group Title: SRG-APP-000456-AS-000266Rule ID: SV-71837r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000456-AS-000266Rule Title: The application server must install security-relevant software updates within the time period directed by an authoritative source (e.g. IAVM, CTOs, DTMs, and STIGs).

Vulnerability Discussion: Security flaws with software applications are discovered daily. Vendors are constantly updating and patching their products to address newly discovered security vulnerabilities. Organizations (including any contractor to the organization) are required to promptly install security-relevant software updates (e.g., patches, service packs, and hot fixes) to production systems after thorough testing of the patches within a lab

UNCLASSIFIED Page 78 of 80

environment. Flaws discovered during security assessments, continuous monitoring, incident response activities, or information system error handling must also be addressed expeditiously.

Check Content:Review the application server documentation and configuration to determine if the application server checks with a patch management system to install security-relevant software updates within a timeframe directed by an authoritative source.

If the application server does not install security-relevant patches within the time period directed by the authoritative source, this is a finding.

Fix Text: Configure the application server to use a patch management system to ensure security-relevant updates are installed within the time period directed by the authoritative source.

CCI: CCI-002605

Group ID (Vulid): V-57563Group Title: SRG-APP-000454-AS-000268Rule ID: SV-71839r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000454-AS-000268Rule Title: The application server must remove organization-defined software components after updated versions have been installed.

Vulnerability Discussion: Installation of patches and updates is performed when there are errors or security vulnerabilities in the current release of the software. When previous versions of software components are not removed from the application server after updates have been installed, an attacker may use the older components to exploit the system.

Check Content:Review the application server documentation and configuration to determine if organization-defined software components are removed after updated versions have been installed.

If organization-defined software components are not removed after updated versions have been installed, this is a finding.

Fix Text: Configure the application server to remove organization-defined software components after updated versions have been installed.

CCI: CCI-002617

Group ID (Vulid): V-57565Group Title: SRG-APP-000447-AS-000273Rule ID: SV-71841r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000447-AS-000273Rule Title: The application server must behave in a predictable and documented manner that reflects organizational and system objectives when invalid inputs are received.

UNCLASSIFIED Page 79 of 80

Vulnerability Discussion: Invalid user input occurs when a user inserts data or characters into an applications data entry field and the application is unprepared to process that data. This results in unanticipated application behavior potentially leading to an application or information system compromise. Invalid user input is one of the primary methods employed when attempting to compromise an application.

Application servers must ensure their management interfaces perform data input validation checks. When invalid data is entered, the application server must behave in a predictable and documented manner that reflects organizational and system objectives when invalid inputs are received. An example of a predictable behavior is trapping the data, logging the invalid data for forensic analysis if necessary, and continuing operation in a safe and secure manner.

Check Content:Review the application server configuration to determine if the management interface behaves in a predictable and documented manner that reflects organizational and system objectives when invalid inputs are received.

If the application server does not meet this requirement, this is a finding.

Fix Text: Configure the application server management interface to behave in a predictable and documented manner that reflects organizational and system objectives when invalid inputs are received.

CCI: CCI-002754

Group ID (Vulid): V-57567Group Title: SRG-APP-000266-AS-000168Rule ID: SV-71843r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000266-AS-000168Rule Title: The application server must identify potentially security-relevant error conditions.

Vulnerability Discussion: The structure and content of error messages need to be carefully considered by the organization and development team. Any application providing too much information in error logs and in administrative messages to the screen risks compromising the data and security of the application and system. The extent to which the application server is able to identify and handle error conditions is guided by organizational policy and operational requirements. Adequate logging levels and system performance capabilities need to be balanced with data protection requirements.

The structure and content of error messages needs to be carefully considered by the organization and development team.

Application servers must have the capability to log at various levels which can provide log entries for potential security-related error events.

An example is the capability for the application server to assign a criticality level to a failed logon attempt error message, a security-related error message being of a higher criticality.

Check Content:Review the application server configuration to determine if the system identifies potentially security-relevant error conditions on the server.

If this function is not performed, this is a finding.

Fix Text: Configure the application server to identify potentially security-relevant error conditions on the server.

UNCLASSIFIED Page 80 of 80

CCI: CCI-001312

Group ID (Vulid): V-61351Group Title: SRG-APP-000439-AS-000274Rule ID: SV-75833r1_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-AS-000274Rule Title: The application server must remove all export ciphers to protect the confidentiality and integrity of transmitted information.

Vulnerability Discussion: During the initial setup of a Transport Layer Security (TLS) connection to the application server, the client sends a list of supported cipher suites in order of preference. The application server will reply with the cipher suite it will use for communication from the client list. If an attacker can intercept the submission of cipher suites to the application server and place, as the preferred cipher suite, a weak export suite, the encryption used for the session becomes easy for the attacker to break, often within minutes to hours.

Check Content:Review the application server documentation and deployed configuration to determine if export ciphers are removed.

If the application server does not have the export ciphers removed, this is a finding.

Fix Text: Configure the application server to have export ciphers removed.

CCI: CCI-002418

UNCLASSIFIED

UNCLASSIFIED Page 1 of 57

UNCLASSIFIED

Web Server Security Requirements Guide Version: 2Release: 2

23 Oct 2015XSL Release 1/29/2015 Sort by: VulidDescription: The Web Server SRG is published as a tool to improve the security of Department of Defense (DoD) information systems. The requirements are derived from the NIST 800-53 and related documents. Comments or proposed revisions to this document should be sent via e-mail to the following address: [email protected].

Group ID (Vulid): V-40791Group Title: SRG-APP-000001-WSR-000001Rule ID: SV-53018r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000001-WSR-000001Rule Title: The web server must limit the number of allowed simultaneous session requests.

Vulnerability Discussion: Web server management includes the ability to control the number of users and user sessions that utilize a web server. Limiting the number of allowed users and sessions per user is helpful in limiting risks related to several types of Denial of Service attacks.

UNCLASSIFIED Page 2 of 57

Although there is some latitude concerning the settings themselves, the settings should follow DoD-recommended values, but the settings should be configurable to allow for future DoD direction. While the DoD will specify recommended values, the values can be adjusted to accommodate the operational requirement of a given system.

Check Content:Review the web server documentation and configuration to determine if the number of simultaneous sessions is limited.

If the parameter is not configured or is unlimited, this is a finding.

Fix Text: Configure the web server to limit the number of concurrent sessions.

CCI: CCI-000054

Group ID (Vulid): V-40792Group Title: SRG-APP-000001-WSR-000002Rule ID: SV-53023r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000001-WSR-000002Rule Title: The web server must perform server-side session management.

Vulnerability Discussion: Session management is the practice of protecting the bulk of the user authorization and identity information. Storing of this data can occur on the client system or on the server.

When the session information is stored on the client, the session ID, along with the user authorization and identity information, is sent along with each client request and is stored in either a cookie, embedded in the uniform resource locator (URL), or placed in a hidden field on the displayed form. Each of these offers advantages and disadvantages. The biggest disadvantage to all three is the hijacking of a session along with all of the user's credentials.

When the user authorization and identity information is stored on the server in a protected and encrypted database, the communication between the client and web server will only send the session identifier, and the server can then retrieve user credentials for the session when needed. If, during transmission, the session were to be hijacked, the user's credentials would not be compromised.

Check Content:Review the web server documentation and configuration to determine if server-side session management is configured.

If it is not configured, this is a finding.

Fix Text: Configure the web server to perform server-side session management.

CCI: CCI-000054

Group ID (Vulid): V-40799Group Title: SRG-APP-000016-WSR-000005Rule ID: SV-53035r3_rule

UNCLASSIFIED Page 3 of 57

Severity: CAT IIRule Version (STIG-ID): SRG-APP-000016-WSR-000005Rule Title: The web server must generate information to be used by external applications or entities to monitor and control remote access.

Vulnerability Discussion: Remote access to the web server is any access that communicates through an external, non-organization-controlled network. Remote access can be used to access hosted applications or to perform management functions.

By providing remote access information to an external monitoring system, the organization can monitor for cyber attacks and monitor compliance with remote access policies. The organization can also look at data organization wide and determine an attack or anomaly is occurring on the organization which might not be noticed if the data were kept local to the web server.

Examples of external applications used to monitor or control access would be audit log monitoring systems, dynamic firewalls, or infrastructure monitoring systems.

Check Content:Review the web server documentation and configuration to determine if the web server is configured to generate information for external applications monitoring remote access.

If a mechanism is not in place providing information to an external application used to monitor and control access, this is a finding.

Fix Text: Configure the web server to provide remote connection information to external monitoring and access control applications.

CCI: CCI-000067

Group ID (Vulid): V-40800Group Title: SRG-APP-000014-WSR-000006Rule ID: SV-53037r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000014-WSR-000006Rule Title: The web server must use encryption strength in accordance with the categorization of data hosted by the web server when remote connections are provided.

Vulnerability Discussion: The web server has several remote communications channels. Examples are user requests via http/https, communication to a backend database, or communication to authenticate users. The encryption used to communicate must match the data that is being retrieved or presented.

Methods of communication are http for publicly displayed information, https to encrypt when user data is being transmitted, VPN tunneling, or other encryption methods to a database.

Check Content:Review the web server documentation and configuration to determine the communication methods that are being used.

Verify the encryption being used is in accordance with the categorization of data being hosted when remote connections are provided.

UNCLASSIFIED Page 4 of 57

If it is not, then this is a finding.

Fix Text: Configure the web server to use encryption strength equal to the categorization of data hosted when remote connections are provided.

CCI: CCI-000068

Group ID (Vulid): V-40819Group Title: SRG-APP-000015-WSR-000014Rule ID: SV-53068r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000015-WSR-000014Rule Title: The web server must use cryptography to protect the integrity of remote sessions.

Vulnerability Discussion: Data exchanged between the user and the web server can range from static display data to credentials used to log into the hosted application. Even when data appears to be static, the non-displayed logic in a web page may expose business logic or trusted system relationships. The integrity of all the data being exchanged between the user and web server must always be trusted. To protect the integrity and trust, encryption methods should be used to protect the complete communication session.

Check Content:Review the web server documentation and configuration to make certain that the web server is configured to use cryptography to protect the integrity of remote access sessions.

If the web server is not configured to use cryptography to protect the integrity of remote access sessions, this is a finding.

Fix Text: Configure the web server to utilize encryption during remote access sessions.

CCI: CCI-001453

Group ID (Vulid): V-41600Group Title: SRG-APP-000089-WSR-000047Rule ID: SV-54177r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000089-WSR-000047Rule Title: The web server must generate, at a minimum, log records for system startup and shutdown, system access, and system authentication events.

Vulnerability Discussion: Log records can be generated from various components within the web server (e.g., httpd, plug-ins to external backends, etc.). From a web server perspective, certain specific web server functionalities may be logged as well. The web server must allow the definition of what events are to be logged. As conditions change, the number and types of events to be logged may change, and the web server must be able to facilitate these changes.

The minimum list of logged events should be those pertaining to system startup and shutdown, system access, and system authentication events. If these events are not logged at a minimum, any type of forensic investigation would be missing pertinent information needed to replay what occurred.

UNCLASSIFIED Page 5 of 57

Check Content:Review the web server documentation and the deployed system configuration to determine if, at a minimum, system startup and shutdown, system access, and system authentication events are logged.

If the logs do not include the minimum logable events, this is a finding.

Fix Text: Configure the web server to generate log records for system startup and shutdown, system access, and system authentication events.

CCI: CCI-000169

Group ID (Vulid): V-41609Group Title: SRG-APP-000093-WSR-000053Rule ID: SV-54186r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000093-WSR-000053Rule Title: The web server must capture, record, and log all content related to a user session.

Vulnerability Discussion: A user session to a web server is in the context of a user accessing a hosted application that extends to any plug-ins/modules and services that may execute on behalf of the user.

The web server must be capable of enabling a setting for troubleshooting, debugging, or forensic gathering purposes which will log all user session information related to the hosted application session. Without the capability to capture, record, and log all content related to a user session, investigations into suspicious user activity would be hampered.

Check Content:Review the web server documentation and deployed configuration to determine if the web server captures and logs all content related to a user session.

Request a user access the hosted applications and verify the complete session is

logged. If any of the session is excluded from the log, this is a finding.

Fix Text: Configure the web server to capture and log all content related to a user session.

CCI: CCI-001462

Group ID (Vulid): V-41611Group Title: SRG-APP-000092-WSR-000055Rule ID: SV-54188r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000092-WSR-000055Rule Title: The web server must initiate session logging upon start up.

Vulnerability Discussion: An attacker can compromise a web server during the startup process. If logging is not initiated until all the web server processes are started, key information may be missed and not available during a forensic investigation. To assure all logable events are captured, the web server must begin logging once the first web server process is initiated.

UNCLASSIFIED Page 6 of 57

Check Content:Review the web server documentation and deployed configuration to determine if the web server captures log data as soon as the web server is started.

If the web server does not capture logable events upon startup, this is a finding.

Fix Text: Configure the web server to capture logable events upon startup.

CCI: CCI-001464

Group ID (Vulid): V-41612Group Title: SRG-APP-000095-WSR-000056Rule ID: SV-54189r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000095-WSR-000056Rule Title: The web server must produce log records containing sufficient information to establish what type of events occurred.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct type of event that occurred is important during forensic analysis. The correct determination of the event and when it occurred is important in relation to other events that happened at that same time.

Without sufficient information establishing what type of log event occurred, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

Check Content:Review the web server documentation and deployed configuration to determine if the web server contains sufficient information to establish what type of event occurred.

Request a user access the hosted applications, and verify sufficient information is

recorded. If sufficient information is not logged, this is a finding.

Fix Text: Configure the web server to record sufficient information to establish what type of events occurred.

CCI: CCI-000130

Group ID (Vulid): V-41613Group Title: SRG-APP-000096-WSR-000057Rule ID: SV-54190r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000096-WSR-000057

UNCLASSIFIED Page 7 of 57

Rule Title: The web server must produce log records containing sufficient information to establish when (date and time) events occurred.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct order of the events that occurred is important during forensic analysis. Events that appear harmless by themselves might be flagged as a potential threat when properly viewed in sequence. By also establishing the event date and time, an event can be properly viewed with an enterprise tool to fully see a possible threat in its entirety.

Without sufficient information establishing when the log event occurred, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

Check Content:Review the web server documentation and deployment configuration to determine if the web server is configured to generate a date and time for each logged event.

Request a user access the hosted application and generate logable events, and then review the logs to determine if the date and time are included in the log event data.

If the date and time are not included, this is a finding.

Fix Text: Configure the web server to log date and time with the event.

CCI: CCI-000131

Group ID (Vulid): V-41614Group Title: SRG-APP-000097-WSR-000058Rule ID: SV-54191r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000097-WSR-000058Rule Title: The web server must produce log records containing sufficient information to establish where within the web server the events occurred.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct location or process within the web server where the events occurred is important during forensic analysis. Correctly determining the web service, plug-in, or module will add information to the overall reconstruction of the logged event. For example, an event that occurred during communication to a cgi module might be handled differently than an event that occurred during a communication session to a user.

Without sufficient information establishing where the log event occurred within the web server, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

UNCLASSIFIED Page 8 of 57

Check Content:Review the web server documentation and deployment configuration to determine if the web server is configured to generate sufficient information to resolve in which process within the web server the log event occurred.

Request a user access the hosted application and generate logable events, and then review the logs to determine if the process of the event within the web server can be established.

If it cannot be determined where the event occurred, this is a finding.

Fix Text: Configure the web server to generate enough information to determine in what process within the web server the log event occurred.

CCI: CCI-000132

Group ID (Vulid): V-41615Group Title: SRG-APP-000098-WSR-000059Rule ID: SV-54192r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000098-WSR-000059Rule Title: The web server must produce log records containing sufficient information to establish the source of events.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct source, e.g. source IP, of the events is important during forensic analysis. Correctly determining the source will add information to the overall reconstruction of the logable event. By determining the source of the event correctly, analysis of the enterprise can be undertaken to determine if the event compromised other assets within the enterprise.

Without sufficient information establishing the source of the logged event, investigation into the cause of event is severely hindered. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

Check Content:Review the web server documentation and deployment configuration to determine if the web server is configured to generate sufficient information to resolve the source, e.g. source IP, of the log event.

Request a user access the hosted application and generate logable events, and then review the logs to determine if the source of the event can be established.

If the source of the event cannot be determined, this is a finding.

Fix Text: Configure the web server to generate the source of each logable event.

CCI: CCI-000133

UNCLASSIFIED Page 9 of 57

Group ID (Vulid): V-41616Group Title: SRG-APP-000098-WSR-000060Rule ID: SV-54193r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000098-WSR-000060Rule Title: A web server, behind a load balancer or proxy server, must produce log records containing the client IP information as the source and destination and not the load balancer or proxy IP information with each event.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the correct source, e.g. source IP, of the events is important during forensic analysis. Correctly determining the source of events will add information to the overall reconstruction of the logable event. By determining the source of the event correctly, analysis of the enterprise can be undertaken to determine if events tied to the source occurred in other areas within the enterprise.

A web server behind a load balancer or proxy server, when not configured correctly, will record the load balancer or proxy server as the source of every logable event. When looking at the information forensically, this information is not helpful in the investigation of events. The web server must record with each event the client source of the event.

Check Content:Review the deployment configuration to determine if the web server is sitting behind a proxy server. If the web server is not sitting behind a proxy server, this finding is NA.

If the web server is behind a proxy server, review the documentation and deployment configuration to determine if the web server is configured to generate sufficient information to resolve the source, e.g. source IP, of the logged event and not the proxy server.

Request a user access the hosted application through the proxy server and generate logable events, and then review the logs to determine if the source of the event can be established.

If the source of the event cannot be determined, this is a finding.

Fix Text: Configure the web server to generate the client source, not the load balancer or proxy server, of each logable event.

CCI: CCI-000133

Group ID (Vulid): V-41617Group Title: SRG-APP-000099-WSR-000061Rule ID: SV-54194r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000099-WSR-000061Rule Title: The web server must produce log records that contain sufficient information to establish the outcome (success or failure) of events.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Ascertaining the success or failure of an event is important during forensic analysis. Correctly determining the

UNCLASSIFIED Page 10 of 57

outcome will add information to the overall reconstruction of the logable event. By determining the success or failure of the event correctly, analysis of the enterprise can be undertaken to determine if events tied to the event occurred in other areas within the enterprise.

Without sufficient information establishing the success or failure of the logged event, investigation into the cause of event is severely hindered. The success or failure also provides a means to measure the impact of an event and help authorized personnel to determine the appropriate response. Log record content that may be necessary to satisfy the requirement of this control includes, but is not limited to, time stamps, source and destination IP addresses, user/process identifiers, event descriptions, application-specific events, success/fail indications, file names involved, access control, or flow control rules invoked.

Check Content:Review the web server documentation and deployment configuration to determine if the web server is configured to generate the outcome (success or failure) of the event.

Request a user access the hosted application and generate logable events, and then review the logs to determine if the outcome of the event can be established.

If the outcome of the event cannot be determined, this is a finding.

Fix Text: Configure the web server to generate the outcome, success or failure, as part of each logable event.

CCI: CCI-000134

Group ID (Vulid): V-41620Group Title: SRG-APP-000100-WSR-000064Rule ID: SV-54197r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000100-WSR-000064Rule Title: The web server must produce log records containing sufficient information to establish the identity of any user/subject or process associated with an event.

Vulnerability Discussion: Web server logging capability is critical for accurate forensic analysis. Without sufficient and accurate information, a correct replay of the events cannot be determined.

Determining user accounts, processes running on behalf of the user, and running process identifiers also enable a better understanding of the overall event. User tool identification is also helpful to determine if events are related to overall user access or specific client tools.

Log record content that may be necessary to satisfy the requirement of this control includes: time stamps, source and destination addresses, user/process identifiers, event descriptions, success/fail indications, file names involved, and access control or flow control rules invoked.

Check Content:Review the web server documentation and deployment configuration to determine if the web server can generate log data containing the user/subject identity.

Request a user access the hosted application and generate logable events, and verify the events contain the user/subject or process identity.

If the identity is not part of the log record, this is a finding.

UNCLASSIFIED Page 11 of 57

Fix Text: Configure the web server to include the user/subject identity or process as part of each log record.

CCI: CCI-001487

Group ID (Vulid): V-41668Group Title: SRG-APP-000116-WSR-000066Rule ID: SV-54245r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000116-WSR-000066Rule Title: The web server must use the internal system clock to generate time stamps for log records.

Vulnerability Discussion: Without an internal clock used as the reference for the time stored on each event to provide a trusted common reference for the time, forensic analysis would be impeded. Determining the correct time a particular event occurred on the web server is critical when conducting forensic analysis and investigating system events.

If the internal clock is not used, the web server may not be able to provide time stamps for log messages. The web server can use the capability of an operating system or purpose-built module for this purpose.

Time stamps generated by the web server shall include both date and time. The time may be expressed in Coordinated Universal Time (UTC), a modern continuation of Greenwich Mean Time (GMT), or local time with an offset from UTC.

Check Content:Review the web server documentation and deployment configuration to determine if the internal system clock is used for date and time stamps. If this is not feasible, an alternative workaround is to take an action that generates an entry in the log and then immediately query the operating system for the current time. A reasonable match between the two times will suffice as evidence that the system is using the internal clock for date and time stamps.

If the web server does not use the internal system clock to generate time stamps, this is a finding.

Fix Text: Configure the web server to use internal system clocks to generate date and time stamps for log records.

CCI: CCI-000159

Group ID (Vulid): V-41670Group Title: SRG-APP-000118-WSR-000068Rule ID: SV-54247r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000118-WSR-000068Rule Title: Web server log files must only be accessible by privileged users.

Vulnerability Discussion: Log data is essential in the investigation of events. If log data were to become compromised, then competent forensic analysis and discovery of the true source of potentially malicious system activity would be difficult, if not impossible, to achieve. In addition, access to log records provides information an attacker could potentially use to their advantage since each event record might contain communication ports, protocols, services, trust relationships, user names, etc.

UNCLASSIFIED Page 12 of 57

The web server must protect the log data from unauthorized read, write, copy, etc. This can be done by the web server if the web server is also doing the logging function. The web server may also use an external log system. In either case, the logs must be protected from access by non-privileged users.

Check Content:Review the web server documentation and deployed configuration settings to determine if the web server logging features protect log information from unauthorized access.

Review file system settings to verify the log files have secure file permissions.

If the web server log files are not protected from unauthorized access, this is a finding.

Fix Text: Configure the web server log files so unauthorized access of log information is not possible.

CCI: CCI-000162

Group ID (Vulid): V-41671Group Title: SRG-APP-000119-WSR-000069Rule ID: SV-54248r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000119-WSR-000069Rule Title: The log information from the web server must be protected from unauthorized modification.

Vulnerability Discussion: Log data is essential in the investigation of events. The accuracy of the information is always pertinent. Information that is not accurate does not help in the revealing of potential security risks and may hinder the early discovery of a system compromise. One of the first steps an attacker will undertake is the modification or deletion of log records to cover his tracks and prolong discovery.

The web server must protect the log data from unauthorized modification. This can be done by the web server if the web server is also doing the logging function. The web server may also use an external log system. In either case, the logs must be protected from modification by non-privileged users.

Check Content:Review the web server documentation and deployed configuration settings to determine if the web server logging features protect log information from unauthorized modification.

Review file system settings to verify the log files have secure file permissions.

If the web server log files are not protected from unauthorized modification, this is a finding.

Fix Text: Configure the web server log files so unauthorized modification of log information is not possible.

CCI: CCI-000163

Group ID (Vulid): V-41672Group Title: SRG-APP-000120-WSR-000070Rule ID: SV-54249r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000120-WSR-000070

UNCLASSIFIED Page 13 of 57

Rule Title: The log information from the web server must be protected from unauthorized deletion.

Vulnerability Discussion: Log data is essential in the investigation of events. The accuracy of the information is always pertinent. Information that is not accurate does not help in the revealing of potential security risks and may hinder the early discovery of a system compromise. One of the first steps an attacker will undertake is the modification or deletion of audit records to cover his tracks and prolong discovery.

The web server must protect the log data from unauthorized deletion. This can be done by the web server if the web server is also doing the logging function. The web server may also use an external log system. In either case, the logs must be protected from deletion by non-privileged users.

Check Content:Review the web server documentation and deployed configuration settings to determine if the web server logging features protect log information from unauthorized deletion.

Review file system settings to verify the log files have secure file permissions.

If the web server log files are not protected from unauthorized deletion, this is a finding.

Fix Text: Configure the web server log files so unauthorized deletion of log information is not possible.

CCI: CCI-000164

Group ID (Vulid): V-41674Group Title: SRG-APP-000125-WSR-000071Rule ID: SV-54251r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000125-WSR-000071Rule Title: The log data and records from the web server must be backed up onto a different system or media.

Vulnerability Discussion: Protection of log data includes assuring log data is not accidentally lost or deleted. Backing up log records to an unrelated system or onto separate media than the system the web server is actually running on helps to assure that, in the event of a catastrophic system failure, the log records will be retained.

Check Content:Review the web server documentation and deployed configuration to determine if the web server log records are backed up onto an unrelated system or media than the system being logged.

If the web server logs are not backed up onto a different system or media than the system being logged, this is a finding.

Fix Text: Configure the web server logs to be backed up onto a different system or media other than the system being logged.

CCI: CCI-001348

Group ID (Vulid): V-41684Group Title: SRG-APP-000131-WSR-000073Rule ID: SV-54261r3_rule

UNCLASSIFIED Page 14 of 57

Severity: CAT IIRule Version (STIG-ID): SRG-APP-000131-WSR-000073Rule Title: Expansion modules must be fully reviewed, tested, and signed before they can exist on a production web server.

Vulnerability Discussion: In the case of a production web server, areas for content development and testing will not exist, as this type of content is only permissible on a development website. The process of developing on a functional production website entails a degree of trial and error and repeated testing. This process is often accomplished in an environment where debugging, sequencing, and formatting of content are the main goals. The opportunity for a malicious user to obtain files that reveal business logic and login schemes is high in this situation. The existence of such immature content on a web server represents a significant security risk that is totally avoidable.

The web server must enforce, internally or through an external utility, the signing of modules before they are implemented into a production environment. By signing modules, the author guarantees that the module has been reviewed and tested before production implementation.

Check Content:Review the web server documentation and configuration to determine if web server modules are fully tested before implementation in the production environment.

Review the web server for modules identified as test, debug, or backup and that cannot be reached through the hosted application.

Review the web server to see if the web server or an external utility is in use to enforce the signing of modules before they are put into a production environment.

If development and testing is taking place on the production web server or modules are put into production without being signed, this is a finding.

Fix Text: Configure the web server to enforce, internally or through an external utility, the review, testing and signing of modules before implementation into the production environment.

CCI: CCI-001749

Group ID (Vulid): V-41693Group Title: SRG-APP-000141-WSR-000075Rule ID: SV-54270r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000075Rule Title: The web server must only contain services and functions necessary for operation.

Vulnerability Discussion: A web server can provide many features, services, and processes. Some of these may be deemed unnecessary or too unsecure to run on a production DoD system.

The web server must provide the capability to disable, uninstall, or deactivate functionality and services that are deemed to be non-essential to the web server mission or can adversely impact server performance.

Check Content:Review the web server documentation and deployed configuration to determine if web server features, services, and processes are installed that are not needed for hosted application deployment.

UNCLASSIFIED Page 15 of 57

If excessive features, services, and processes are installed, this is a finding.

Fix Text: Uninstall or deactivate features, services, and processes not needed by the web server for operation.

CCI: CCI-000381

Group ID (Vulid): V-41694Group Title: SRG-APP-000141-WSR-000076Rule ID: SV-54271r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000076Rule Title: The web server must not be a proxy server.

Vulnerability Discussion: A web server should be primarily a web server or a proxy server but not both, for the same reasons that other multi-use servers are not recommended. Scanning for web servers that will also proxy requests into an otherwise protected network is a very common attack making the attack anonymous.

Check Content:Review the web server documentation and deployed configuration to determine if the web server is also a proxy server.

If the web server is also acting as a proxy server, this is a finding.

Fix Text: Uninstall any proxy services, modules, and libraries that are used by the web server to act as a proxy server.

Verify all configuration changes are made to assure the web server is no longer acting as a proxy server in any manner.

CCI: CCI-000381

Group ID (Vulid): V-41695Group Title: SRG-APP-000141-WSR-000077Rule ID: SV-54272r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000077Rule Title: The web server must provide install options to exclude the installation of documentation, sample code, example applications, and tutorials.

Vulnerability Discussion: Web server documentation, sample code, example applications, and tutorials may be an exploitable threat to a web server because this type of code has not been evaluated and approved. A production web server must only contain components that are operationally necessary (e.g., compiled code, scripts, web- content, etc.).

Any documentation, sample code, example applications, and tutorials must be removed from a production web server. To make certain that the documentation and code are not installed or uninstalled completely; the web server must offer an option as part of the installation process to exclude these packages or to uninstall the packages if necessary.

UNCLASSIFIED Page 16 of 57

Check Content:Review the web server documentation and deployment configuration to determine if the web server contains documentation, sample code, example applications, or tutorials.

Verify the web server install process also offers an option to exclude these elements from installation and provides an uninstall option for their removal.

If web server documentation, sample code, example applications, or tutorials are installed or the web server install process does not offer an option to exclude these elements from installation, this is a finding.

Fix Text: Use the web server uninstall facility or manually remove any documentation, sample code, example applications, and tutorials.

CCI: CCI-000381

Group ID (Vulid): V-41696Group Title: SRG-APP-000141-WSR-000078Rule ID: SV-54273r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000078Rule Title: Web server accounts not utilized by installed features (i.e., tools, utilities, specific services, etc.) must not be created and must be deleted when the web server feature is uninstalled.

Vulnerability Discussion: When accounts used for web server features such as documentation, sample code, example applications, tutorials, utilities, and services are created even though the feature is not installed, they become an exploitable threat to a web server.

These accounts become inactive, are not monitored through regular use, and passwords for the accounts are not created or updated. An attacker, through very little effort, can use these accounts to gain access to the web server and begin investigating ways to elevate the account privileges.

The accounts used for web server features not installed must not be created and must be deleted when these features are uninstalled.

Check Content:Review the web server documentation to determine the user accounts created when particular features are installed.

Verify the deployed configuration to determine which features are installed with the web server.

If any accounts exist that are not used by the installed features, this is a finding.

Fix Text: Use the web server uninstall facility or manually remove the user accounts not used by the installed web server features.

CCI: CCI-000381

Group ID (Vulid): V-41698

UNCLASSIFIED Page 17 of 57

Group Title: SRG-APP-000141-WSR-000080Rule ID: SV-54275r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000080Rule Title: The web server must provide install options to exclude installation of utility programs, services, plug- ins, and modules not necessary for operation.

Vulnerability Discussion: Just as running unneeded services and protocols is a danger to the web server at the lower levels of the OSI model, running unneeded utilities and programs is also a danger at the application layer of the OSI model. Office suites, development tools, and graphical editors are examples of such programs that are troublesome.

Individual productivity tools have no legitimate place or use on an enterprise, production web server and they are also prone to their own security risks. The web server installation process must provide options allowing the installer to choose which utility programs, services, and modules are to be installed or removed. By having a process for installation and removal, the web server is guaranteed to be in a more stable and secure state than if these services and programs were installed and removed manually.

Check Content:Review the web server documentation and deployment configuration to determine which web server utilities, services, and modules are installed. Verify these options are essential to the operation of the web server. Also, confirm the web server install process offers an option to exclude these utilities, services, and modules from installation that are not needed for operation and that there is an uninstall option for their removal.

If there are more utilities, services, or modules installed than are needed for the operation of the web server or the web server does not provide an install facility to customize installation, this is a finding.

Fix Text: Use the web server uninstall facility or manually remove any utility programs, services, or modules not needed by the web server for operation.

CCI: CCI-000381

Group ID (Vulid): V-41699Group Title: SRG-APP-000141-WSR-000081Rule ID: SV-54276r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000081Rule Title: The web server must have Multipurpose Internet Mail Extensions (MIME) that invoke OS shell programs disabled.

Vulnerability Discussion: Controlling what a user of a hosted application can access is part of the security posture of the web server. Any time a user can access more functionality than is needed for the operation of the hosted application poses a security issue. A user with too much access can view information that is not needed for the user's job role, or the user could use the function in an unintentional manner.

A MIME tells the web server what type of program various file types and extensions are and what external utilities or programs are needed to execute the file type.

A shell is a program that serves as the basic interface between the user and the operating system, so hosted application users must not have access to these programs. Shell programs may execute shell escapes and can then perform unauthorized activities that could damage the security posture of the web server.

UNCLASSIFIED Page 18 of 57

Check Content:Review the web server documentation and deployment configuration to determine if the OS shell is accessible by any MIME types that are enabled.

If a user of the web server can invoke OS shell programs, this is a finding.

Fix Text: Configure the web server to disable all MIME types that invoke OS shell programs.

CCI: CCI-000381

Group ID (Vulid): V-41700Group Title: SRG-APP-000141-WSR-000082Rule ID: SV-54277r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000082Rule Title: The web server must allow the mappings to unused and vulnerable scripts to be removed.

Vulnerability Discussion: Scripts allow server side processing on behalf of the hosted application user or as processes needed in the implementation of hosted applications. Removing scripts not needed for application operation or deemed vulnerable helps to secure the web server.

To assure scripts are not added to the web server and run maliciously, those script mappings that are not needed or used by the web server for hosted application operation must be removed.

Check Content:Review the web server documentation and deployment configuration to determine what script mappings are available.

Review the scripts used by the web server and the hosted applications.

If there are script mappings in use that are not used by the web server or hosted applications for operation, this is a finding.

Fix Text: Remove script mappings that are not needed for web server and hosted application operation.

CCI: CCI-000381

Group ID (Vulid): V-41701Group Title: SRG-APP-000141-WSR-000083Rule ID: SV-54278r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000083Rule Title: The web server must have resource mappings set to disable the serving of certain file types.

Vulnerability Discussion: Resource mapping is the process of tying a particular file type to a process in the web server that can serve that type of file to a requesting client and to identify which file types are not to be delivered to a client.

UNCLASSIFIED Page 19 of 57

By not specifying which files can and which files cannot be served to a user, the web server could deliver to a user web server configuration files, log files, password files, etc.

The web server must only allow hosted application file types to be served to a user and all other types must be disabled.

Check Content:Review the web server documentation and deployment configuration to determine what types of files are being used for the hosted applications.

If the web server is configured to allow other file types not associated with the hosted application, especially those associated with logs, configuration files, passwords, etc., this is a finding.

Fix Text: Configure the web server to only serve file types to the user that are needed by the hosted applications. All other file types must be disabled.

CCI: CCI-000381

Group ID (Vulid): V-41702Group Title: SRG-APP-000141-WSR-000085Rule ID: SV-54279r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000085Rule Title: The web server must have Web Distributed Authoring (WebDAV) disabled.

Vulnerability Discussion: A web server can be installed with functionality that, just by its nature, is not secure. Web Distributed Authoring (WebDAV) is an extension to the HTTP protocol that, when developed, was meant to allow users to create, change, and move documents on a server, typically a web server or web share. Allowing this functionality, development, and deployment is much easier for web authors.

WebDAV is not widely used and has serious security concerns because it may allow clients to modify unauthorized files on the web server.

Check Content:Review the web server documentation and deployment configuration to determine if Web Distributed Authoring (WebDAV) is enabled.

If WebDAV is enabled, this is a finding.

Fix Text: Configure the web server to disable Web Distributed Authoring.

CCI: CCI-000381

Group ID (Vulid): V-41703Group Title: SRG-APP-000141-WSR-000086Rule ID: SV-54280r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000086Rule Title: The web server must protect system resources and privileged operations from hosted applications.

UNCLASSIFIED Page 20 of 57

Vulnerability Discussion: A web server may host one too many applications. Each application will need certain system resources and privileged operations to operate correctly. The web server must be configured to contain and control the applications and protect the system resources and privileged operations from those not needed by the application for operation.

Limiting the application will confine the potential harm a compromised application could cause to a system.

Check Content:Review the web server documentation and configuration to determine the access to server resources given to hosted applications.

If hosted applications have access to more system resources than needed for operation, this is a finding.

Fix Text: Configure the privileges given to hosted applications to the minimum required for application operation.

CCI: CCI-000381

Group ID (Vulid): V-41704Group Title: SRG-APP-000141-WSR-000087Rule ID: SV-54281r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000087Rule Title: Users and scripts running on behalf of users must be contained to the document root or home directory tree of the web server.

Vulnerability Discussion: A web server is designed to deliver content and execute scripts or applications on the request of a client or user. Containing user requests to files in the directory tree of the hosted web application and limiting the execution of scripts and applications guarantees that the user is not accessing information protected outside the application's realm.

The web server must also prohibit users from jumping outside the hosted application directory tree through access to the user's home directory, symbolic links or shortcuts, or through search paths for missing files.

Check Content:Review the web server documentation and configuration to determine where the document root or home directory for each application hosted by the web server is located.

Verify that users of the web server applications, and any scripts running on the user's behalf, are contained to each application's domain.

If users of the web server applications, and any scripts running on the user's behalf, are not contained, this is a finding.

Fix Text: Configure the web server to contain users and scripts to each hosted application's domain.

CCI: CCI-000381

UNCLASSIFIED Page 21 of 57

Group ID (Vulid): V-41706Group Title: SRG-APP-000142-WSR-000089Rule ID: SV-54283r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000142-WSR-000089Rule Title: The web server must be configured to use a specified IP address and port.

Vulnerability Discussion: The web server must be configured to listen on a specified IP address and port. Without specifying an IP address and port for the web server to utilize, the web server will listen on all IP addresses available to the hosting server. If the web server has multiple IP addresses, i.e., a management IP address, the web server will also accept connections on the management IP address.

Accessing the hosted application through an IP address normally used for non-application functions opens the possibility of user access to resources, utilities, files, ports, and protocols that are protected on the desired application IP address.

Check Content:Review the web server documentation and deployment configuration to determine whether the web server is configured to listen on a specified IP address and port.

Request a client user try to access the web server on any other available IP addresses on the hosting hardware.

If an IP address is not configured on the web server or a client can reach the web server on other IP addresses assigned to the hosting hardware, this is a finding.

Fix Text: Configure the web server to only listen on a specified IP address and port.

CCI: CCI-000382

Group ID (Vulid): V-41730Group Title: SRG-APP-000175-WSR-000095Rule ID: SV-54307r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000175-WSR-000095Rule Title: The web server must perform RFC 5280-compliant certification path validation.

Vulnerability Discussion: A certificate's certification path is the path from the end entity certificate to a trusted root certification authority (CA). Certification path validation is necessary for a relying party to make an informed decision regarding acceptance of an end entity certificate. Certification path validation includes checks such as certificate issuer trust, time validity and revocation status for each certificate in the certification path. Revocation status information for CA and subject certificates in a certification path is commonly provided via certificate revocation lists (CRLs) or online certificate status protocol (OCSP) responses.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server provides PKI functionality that validates certification paths in accordance with RFC 5280. If PKI is not being used, this is NA.

If the web server is using PKI, but it does not perform this requirement, this is a finding.

Fix Text: Configure the web server to validate certificates in accordance with RFC 5280.

UNCLASSIFIED Page 22 of 57

CCI: CCI-000185

Group ID (Vulid): V-41731Group Title: SRG-APP-000176-WSR-000096Rule ID: SV-54308r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000176-WSR-000096Rule Title: Only authenticated system administrators or the designated PKI Sponsor for the web server must have access to the web servers private key.

Vulnerability Discussion: The web server's private key is used to prove the identity of the server to clients and securely exchange the shared secret key used to encrypt communications between the web server and clients.

By gaining access to the private key, an attacker can pretend to be an authorized server and decrypt the SSL traffic between a client and the web server.

Check Content:If the web server does not have a private key, this is N/A.

Review the web server documentation and deployed configuration to determine whether only authenticated system administrators and the designated PKI Sponsor for the web server can access the web server private key.

If the private key is accessible by unauthenticated or unauthorized users, this is a finding.

Fix Text: Configure the web server to ensure only authenticated and authorized users can access the web server's private key.

CCI: CCI-000186

Group ID (Vulid): V-41738Group Title: SRG-APP-000172-WSR-000104Rule ID: SV-54315r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000172-WSR-000104Rule Title: The web server must encrypt passwords during transmission.

Vulnerability Discussion: Data used to authenticate, especially passwords, needs to be protected at all times, and encryption is the standard method for protecting authentication data during transmission. Data used to authenticate can be passed to and from the web server for many reasons.

Examples include data passed from a user to the web server through an HTTPS connection for authentication, the web server authenticating to a backend database for data retrieval and posting, and the web server authenticating to a clustered web server manager for an update.

Check Content:Review the web server documentation and deployed configuration to determine whether passwords are being passed to or from the web server.

UNCLASSIFIED Page 23 of 57

If the transmission of passwords is not encrypted, this is a finding.

Fix Text: Configure the web server to encrypt the transmission passwords.

CCI: CCI-000197

Group ID (Vulid): V-41745Group Title: SRG-APP-000179-WSR-000110Rule ID: SV-54322r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000179-WSR-000110Rule Title: The web server must use cryptographic modules that meet the requirements of applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance when encrypting stored data.

Vulnerability Discussion: Encryption is only as good as the encryption modules utilized. Unapproved cryptographic module algorithms cannot be verified, and cannot be relied upon to provide confidentiality or integrity, and DoD data may be compromised due to weak algorithms.

FIPS 140-2 is the current standard for validating cryptographic modules and NSA Type-X (where X=1, 2, 3, 4) products are NSA-certified, hardware-based encryption modules.

The web server must provide FIPS-compliant encryption modules when storing encrypted data and configuration settings.

Check Content:Review web server documentation and deployed configuration to determine whether the encryption modules utilized for storage of data are FIPS 140-2 compliant.

Reference the following NIST site to identify validated encryption

modules: http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140val-

all.htm

If the encryption modules used for storage of data are not FIPS 140-2 validated, this is a finding.

Fix Text: Configure the web server to utilize FIPS 140-2 approved encryption modules when the web server is storing data.

CCI: CCI-000803

Group ID (Vulid): V-41746Group Title: SRG-APP-000179-WSR-000111Rule ID: SV-54323r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000179-WSR-000111Rule Title: The web server must use cryptographic modules that meet the requirements of applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance for such authentication.

Vulnerability Discussion: Encryption is only as good as the encryption modules utilized. Unapproved cryptographic module algorithms cannot be verified and cannot be relied upon to provide confidentiality or

UNCLASSIFIED Page 24 of 57

integrity, and DoD data may be compromised due to weak algorithms.

FIPS 140-2 is the current standard for validating cryptographic modules and NSA Type-X (where X=1, 2, 3, 4) products are NSA-certified, hardware-based encryption modules.

The web server must provide FIPS-compliant encryption modules when authenticating users and processes.

Check Content:Review web server documentation and deployed configuration to determine whether the encryption modules utilized for authentication are FIPS 140-2 compliant. Reference the following NIST site to identify validated encryption modules: http://csrc.nist.gov/groups/STM/cmvp/documents/140-1/140val-all.htm

If the encryption modules used for authentication are not FIPS 140-2 validated, this is a finding.

Fix Text: Configure the web server to utilize FIPS 140-2 approved encryption modules when authenticating users and processes.

CCI: CCI-000803

Group ID (Vulid): V-41794Group Title: SRG-APP-000211-WSR-000129Rule ID: SV-54371r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000211-WSR-000129Rule Title: The web server must separate the hosted applications from hosted web server management functionality.

Vulnerability Discussion: The separation of user functionality from web server management can be accomplished by moving management functions to a separate IP address or port. To further separate the management functions, separate authentication methods and certificates should be used.

By moving the management functionality, the possibility of accidental discovery of the management functions by non-privileged users during hosted application use is minimized.

Check Content:Review the web server documentation and deployed configuration to determine whether hosted application functionality is separated from web server management functions.

If the functions are not separated, this is a finding.

Fix Text: Configure the web server to separate the hosted applications from web server management functionality.

CCI: CCI-001082

Group ID (Vulid): V-41807Group Title: SRG-APP-000224-WSR-000136Rule ID: SV-54384r3_ruleSeverity: CAT II

UNCLASSIFIED Page 25 of 57

Rule Version (STIG-ID): SRG-APP-000224-WSR-000136Rule Title: The web server must generate unique session identifiers that cannot be reliably reproduced.

Vulnerability Discussion: Communication between a client and the web server is done using the HTTP protocol, but HTTP is a stateless protocol. In order to maintain a connection or session, a web server will generate a session identifier (ID) for each client session when the session is initiated. The session ID allows the web server to track a user session and, in many cases, the user, if the user previously logged into a hosted application.

By being able to guess session IDs, an attacker can easily perform a man-in-the-middle attack. To truly generate random session identifiers that cannot be reproduced, the web server session ID generator, when used twice with the same input criteria, must generate an unrelated random ID.

The session ID generator also needs to be a FIPS 140-2 approved generator.

Check Content:Review the web server documentation and deployed configuration to verify that random and unique session identifiers are generated.

Access the web server ID generator function and generate two IDs using the same input.

If the web server is not configured to generate random and unique session identifiers, or the ID generator generates the same ID for the same input, this is a finding.

Fix Text: Configure the web server to generate random and unique session identifiers that cannot be reliably reproduced.

CCI: CCI-001188

Group ID (Vulid): V-41808Group Title: SRG-APP-000224-WSR-000137Rule ID: SV-54385r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000224-WSR-000137Rule Title: The web server must generate a session ID long enough that it cannot be guessed through brute force.

Vulnerability Discussion: Generating a session identifier (ID) that is not easily guessed through brute force is essential to deter several types of session attacks. By knowing the session ID, an attacker can hijack a user session that has already been user authenticated by the hosted application. The attacker does not need to guess user identifiers and passwords or have a secure token since the user session has already been authenticated.

Generating session IDs that are at least 128 bits (16 bytes) in length will cause an attacker to take a large amount of time and resources to guess, reducing the likelihood of an attacker guessing a session ID.

Check Content:Review the web server documentation and deployed configuration to see how long the generated session identifiers are.

If the web server is not configured to generate session identifiers that are at least 128 bits (16 bytes) in length, this is a finding.

Fix Text: Configure the web server to generate session identifiers that are at least 128 bits in length.

UNCLASSIFIED Page 26 of 57

CCI: CCI-001188

Group ID (Vulid): V-41809Group Title: SRG-APP-000224-WSR-000138Rule ID: SV-54386r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000224-WSR-000138Rule Title: The web server must generate a session ID using as much of the character set as possible to reduce the risk of brute force.

Vulnerability Discussion: Generating a session identifier (ID) that is not easily guessed through brute force is essential to deter several types of session attacks. By knowing the session ID, an attacker can hijack a user session that has already been user-authenticated by the hosted application. The attacker does not need to guess user identifiers and passwords or have a secure token since the user session has already been authenticated.

By generating session IDs that contain as much of the character set as possible, i.e., A-Z, a-z, and 0-9, the session ID becomes exponentially harder to guess.

Check Content:Review the web server documentation and deployed configuration to determine what characters are used in generating session IDs.

If the web server is not configured to use at least A-Z, a-z, and 0-9 to generate session identifiers, this is a finding.

Fix Text: Configure the web server to use at least A-Z, a-z, and 0-9 to generate session IDs.

CCI: CCI-001188

Group ID (Vulid): V-41810Group Title: SRG-APP-000224-WSR-000139Rule ID: SV-54387r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000224-WSR-000139Rule Title: The web server must generate unique session identifiers with definable entropy.

Vulnerability Discussion: Generating a session identifier (ID) that is not easily guessed through brute force is essential to deter several types of session attacks. By knowing the session ID, an attacker can hijack a user session that has already been user authenticated by the hosted application. The attacker does not need to guess user identifiers and passwords or have a secure token since the user session has already been authenticated.

Random and unique session IDs are the opposite of sequentially generated session IDs, which can be easily guessed by an attacker. Random session identifiers help to reduce predictability of said identifiers. The session ID must be unpredictable (random enough) to prevent guessing attacks, where an attacker is able to guess or predict the ID of a valid session through statistical analysis techniques. For this purpose, a good PRNG (Pseudo Random Number Generator) must be used.

Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending

UNCLASSIFIED Page 27 of 57

application traffic, they will have more difficulty in hijacking the session or otherwise manipulating valid sessions.

At least half of a session ID must be created using a definable source of entropy (PRNG).

Check Content:Review the web server documentation and deployed configuration to verify that the web server is generating random session IDs with entropy equal to at least half the session ID length.

If the web server is not configured to generate random session IDs with the proper amount of entropy, this is a finding.

Fix Text: Configure the web server to generate random session IDs with minimum entropy equal to half the session ID length.

CCI: CCI-001188

Group ID (Vulid): V-41811Group Title: SRG-APP-000225-WSR-000140Rule ID: SV-54388r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-WSR-000140Rule Title: The web server must be built to fail to a known safe state if system initialization fails, shutdown fails, or aborts fail.

Vulnerability Discussion: Determining a safe state for failure and weighing that against a potential DoS for users depends on what type of application the web server is hosting. For an application presenting publicly available information that is not critical, a safe state for failure might be to shut down for any type of failure; but for an application that presents critical and timely information, a shutdown might not be the best state for all failures.

Performing a proper risk analysis of the hosted applications and configuring the web server according to what actions to take for each failure condition will provide a known fail safe state for the web server.

Check Content:Review the web server documentation, deployed configuration, and risk analysis documentation to determine whether the web server will fail to known states for system initialization, shutdown, or abort failures.

If the web server will not fail to known state, this is a finding.

Fix Text: Configure the web server to fail to the states of operation during system initialization, shutdown, or abort failures found in the risk analysis.

CCI: CCI-001190

Group ID (Vulid): V-41812Group Title: SRG-APP-000225-WSR-000141Rule ID: SV-54389r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-WSR-000141Rule Title: The web server must provide a clustering capability.

UNCLASSIFIED Page 28 of 57

Vulnerability Discussion: The web server may host applications that display information that cannot be disrupted, such as information that is time-critical or life-threatening. In these cases, a web server that shuts down or ceases to be accessible when there is a failure is not acceptable. In these types of cases, clustering of web servers is used.

Clustering of multiple web servers is a common approach to providing fail-safe application availability. To assure application availability, the web server must provide clustering or some form of failover functionality.

Check Content:Review the web server documentation, deployed configuration, and risk analysis documentation to verify that the web server is configured to provide clustering functionality, if the web server is a high-availability web server.

If the web server is not a high-availability web server, this finding is NA.

If the web server is not configured to provide clustering or some form of failover functionality and the web server is a high-availability server, this is a finding.

Fix Text: Configure the web server to provide application failover, or participate in a web cluster that provides failover for high-availability web servers.

CCI: CCI-001190

Group ID (Vulid): V-41815Group Title: SRG-APP-000231-WSR-000144Rule ID: SV-54392r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000231-WSR-000144Rule Title: Information at rest must be encrypted using a DoD-accepted algorithm to protect the confidentiality and integrity of the information.

Vulnerability Discussion: Data at rest is inactive data which is stored physically in any digital form (e.g., databases, data warehouses, spreadsheets, archives, tapes, off-site backups, mobile devices, etc.). Data at rest includes, but is not limited to, archived data, data which is not accessed or changed frequently, files stored on hard drives, USB thumb drives, files stored on backup tape and disks, and files stored off-site or on a storage area network.

While data at rest can reside in many places, data at rest for a web server is data on the hosting system storage devices. Data stored as a backup on tape or stored off-site is no longer under the protection measures covered by the web server.

There are several pieces of data that the web server uses during operation. The web server must use an accepted encryption method, such as SHA1, to protect the confidentiality and integrity of the information.

Check Content:Review the web server documentation and deployed configuration to locate where potential data at rest is stored.

Verify that the data is encrypted using a DoD-accepted algorithm to protect the confidentiality and integrity of the information.

If the data is not encrypted using a DoD-accepted algorithm, this is a finding.

UNCLASSIFIED Page 29 of 57

Fix Text: Use a DoD-accepted algorithm to encrypt data at rest to protect the information's confidentiality and integrity.

CCI: CCI-001199

Group ID (Vulid): V-41818Group Title: SRG-APP-000223-WSR-000145Rule ID: SV-54395r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000223-WSR-000145Rule Title: The web server must accept only system-generated session identifiers.

Vulnerability Discussion: Communication between a client and the web server is done using the HTTP protocol, but HTTP is a stateless protocol. In order to maintain a connection or session, a web server will generate a session identifier (ID) for each client session when the session is initiated. The session ID allows the web server to track a user session and, in many cases, the user, if the user previously logged into a hosted application.

When a web server accepts session identifiers that are not generated by the web server, the web server creates an environment where session hijacking, such as session fixation, could be used to access hosted applications through session IDs that have already been authenticated. Forcing the web server to only accept web server-generated session IDs and to create new session IDs once a user is authenticated will limit session hijacking.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server accepts session IDs that are not system-generated.

If the web server does accept non-system-generated session IDs, this is a finding.

Fix Text: Configure the web server to only accept session IDs that are created by the web server.

CCI: CCI-001664

Group ID (Vulid): V-41821Group Title: SRG-APP-000233-WSR-000146Rule ID: SV-54398r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000233-WSR-000146Rule Title: The web server document directory must be in a separate partition from the web servers system files.

Vulnerability Discussion: A web server is used to deliver content on the request of a client. The content delivered to a client must be controlled, allowing only hosted application files to be accessed and delivered. To allow a client access to system files of any type is a major security risk that is entirely avoidable. Obtaining such access is the goal of directory traversal and URL manipulation vulnerabilities. To facilitate such access by misconfiguring the web document (home) directory is a serious error. In addition, having the path on the same drive as the system folder compounds potential attacks such as drive space exhaustion.

Check Content:Review the web server documentation and deployed configuration to determine where the document directory is

UNCLASSIFIED Page 30 of 57

located for each hosted application.

If the document directory is not in a separate partition from the web server's system files, this is a finding.

Fix Text: Configure the web server to place the document directories in a separate partition from the web server system files.

CCI: CCI-001084

Group ID (Vulid): V-41833Group Title: SRG-APP-000246-WSR-000149Rule ID: SV-54410r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000246-WSR-000149Rule Title: The web server must restrict the ability of users to launch Denial of Service (DoS) attacks against other information systems or networks.

Vulnerability Discussion: A web server can limit the ability of the web server being used in a DoS attack through several methods. The methods employed will depend upon the hosted applications and their resource needs for proper operation.

An example setting that could be used to limit the ability of the web server being used in a DoS attack is bandwidth throttling.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server has been configured to limit the ability of the web server to be used in a DoS attack.

If not, this is a finding.

Fix Text: Configure the web server to limit the ability of users to use the web server in a DoS attack.

CCI: CCI-001094

Group ID (Vulid): V-41852Group Title: SRG-APP-000251-WSR-000157Rule ID: SV-54429r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000251-WSR-000157Rule Title: The web server must limit the character set used for data entry.

Vulnerability Discussion: Invalid user input occurs when a user inserts data or characters into a hosted application's data entry field and the hosted application is unprepared to process that data. This results in unanticipated application behavior, potentially leading to an application compromise. Invalid user input is one of the primary methods employed when attempting to compromise an application.

An attacker can also enter Unicode into hosted applications in an effort to break out of the document home or root home directory or to bypass security checks.

UNCLASSIFIED Page 31 of 57

The web server, by defining the character set available for data entry, can trap efforts to bypass security checks or to compromise an application.

Check Content:Review the web server documentation and deployed configuration to determine what the data set is for data entry.

If the web server does not limit the data set used for data entry, this is a finding.

Fix Text: Configure the web server to only accept the character sets expected by the hosted applications.

CCI: CCI-001310

Group ID (Vulid): V-41854Group Title: SRG-APP-000266-WSR-000159Rule ID: SV-54431r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000266-WSR-000159Rule Title: Warning and error messages displayed to clients must be modified to minimize the identity of the web server, patches, loaded modules, and directory paths.

Vulnerability Discussion: Information needed by an attacker to begin looking for possible vulnerabilities in a web server includes any information about the web server, backend systems being accessed, and plug-ins or modules being used.

Web servers will often display error messages to client users displaying enough information to aid in the debugging of the error. The information given back in error messages may display the web server type, version, patches installed, plug-ins and modules installed, type of code being used by the hosted application, and any backends being used for data storage.

This information could be used by an attacker to blueprint what type of attacks might be successful. The information given to users must be minimized to not aid in the blueprinting of the web server.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server offers different modes of operation that will minimize the identity of the web server, patches, loaded modules, and directory paths given to clients on error conditions.

If the web server is not configured to minimize the information given to clients, this is a finding.

Fix Text: Configure the web server to minimize the information provided to the client in warning and error messages.

CCI: CCI-001312

Group ID (Vulid): V-41855Group Title: SRG-APP-000266-WSR-000160Rule ID: SV-54432r3_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000266-WSR-000160

UNCLASSIFIED Page 32 of 57

Rule Title: Debugging and trace information used to diagnose the web server must be disabled.

Vulnerability Discussion: Information needed by an attacker to begin looking for possible vulnerabilities in a web server includes any information about the web server and plug-ins or modules being used. When debugging or trace information is enabled in a production web server, information about the web server, such as web server type, version, patches installed, plug-ins and modules installed, type of code being used by the hosted application, and any backends being used for data storage may be displayed. Since this information may be placed in logs and general messages during normal operation of the web server, an attacker does not need to cause an error condition to gain this information.

Check Content:Review the web server documentation and deployed configuration to determine if debugging and trace information are enabled.

If the web server is configured with debugging and trace information enabled, this is a finding.

Fix Text: Configure the web server to minimize the information given to clients on error conditions by disabling debugging and trace information.

CCI: CCI-001312

Group ID (Vulid): V-55945Group Title: SRG-APP-000033-WSR-000169Rule ID: SV-70199r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000033-WSR-000169Rule Title: The web server must enforce approved authorizations for logical access to hosted applications and resources in accordance with applicable access control policies.

Vulnerability Discussion: To control access to sensitive information and hosted applications by entities that have been issued certificates by DoD-approved PKIs, the web server must be properly configured to incorporate a means of authorization that does not simply rely on the possession of a valid certificate for access. Access decisions must include a verification that the authenticated entity is permitted to access the information or application. Authorization decisions must leverage a variety of methods, such as mapping the validated PKI certificate to an account with an associated set of permissions on the system. If the web server relied only on the possession of the certificate and did not map to system roles and privileges, each user would have the same abilities and roles to make changes to the production system.

Check Content:The web server must be configured to perform an authorization check to verify that the authenticated entity should be granted access to the requested content.

If the web server does not verify that the authenticated entity is authorized to access the requested content prior to granting access, this is a finding.

Fix Text: Configure the web server to validate the authenticated entity's authorization to access requested content prior to granting access.

CCI: CCI-000213

UNCLASSIFIED Page 33 of 57

Group ID (Vulid): V-55947Group Title: SRG-APP-000340-WSR-000029Rule ID: SV-70201r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000340-WSR-000029Rule Title: Non-privileged accounts on the hosting system must only access web server security-relevant information and functions through a distinct administrative account.

Vulnerability Discussion: By separating web server security functions from non-privileged users, roles can be developed that can then be used to administer the web server. Forcing users to change from a non-privileged account to a privileged account when operating on the web server or on security-relevant information forces users to only operate as a web server administrator when necessary. Operating in this manner allows for better logging of changes and better forensic information and limits accidental changes to the web server.

Check Content:Review the web server documentation and configuration to determine if accounts used for administrative duties of the web server are separated from non-privileged accounts.

If non-privileged accounts can access web server security-relevant information, this is a finding.

Fix Text: Set up accounts and roles that can be used to perform web server security-relevant tasks and remove or modify non-privileged account access to security-relevant tasks.

CCI: CCI-002235

Group ID (Vulid): V-55949Group Title: SRG-APP-000295-WSR-000134Rule ID: SV-70203r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000295-WSR-000134Rule Title: The web server must set an inactive timeout for sessions.

Vulnerability Discussion: Leaving sessions open indefinitely is a major security risk. An attacker can easily use an already authenticated session to access the hosted application as the previously authenticated user. By closing sessions after a set period of inactivity, the web server can make certain that those sessions that are not closed through the user logging out of an application are eventually closed.

Acceptable values are 5 minutes for high-value applications, 10 minutes for medium-value applications, and 20 minutes for low-value applications.

Check Content:Review the hosted applications, web server documentation and deployed configuration to verify that the web server will close an open session after a configurable time of inactivity.

If the web server does not close sessions after a configurable time of inactivity or the amount of time is configured higher than 5 minutes for high-risk applications, 10 minutes for medium-risk applications, or 20 minutes for low- risk applications, this is a finding.

Fix Text: Configure the web server to close inactive sessions after 5 minutes for high-risk applications, 10

UNCLASSIFIED Page 34 of 57

minutes for medium-risk applications, or 20 minutes for low-risk applications.

CCI: CCI-002361

Group ID (Vulid): V-55951Group Title: SRG-APP-000295-WSR-000012Rule ID: SV-70205r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000295-WSR-000012Rule Title: The web server must set an absolute timeout for sessions.

Vulnerability Discussion: Leaving sessions open indefinitely is a major security risk. An attacker can easily use an already authenticated session to access the hosted application as the previously authenticated user. By closing sessions after an absolute period of time, the user is forced to re-authenticate guaranteeing the session is still in use. Enabling an absolute timeout for sessions closes sessions that are still active. Examples would be a runaway process accessing the web server or an attacker using a hijacked session to slowly probe the web server.

Check Content:Review the web server documentation and deployed configuration to verify that the web server is configured to close sessions after an absolute period of time.

If the web server is not configured to close sessions after an absolute period of time, this is a finding.

Fix Text: Configure the web server to close sessions after an absolute period of time.

CCI: CCI-002361

Group ID (Vulid): V-55953Group Title: SRG-APP-000315-WSR-000003Rule ID: SV-70207r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000315-WSR-000003Rule Title: Remote access to the web server must follow access policy or work in conjunction with enterprise tools designed to enforce policy requirements.

Vulnerability Discussion: Remote access to the web server is any access that communicates through an external, non-organization-controlled network. Remote access can be used to access hosted applications or to perform management functions.

A web server can be accessed remotely and must be able to enforce remote access policy requirements or work in conjunction with enterprise tools designed to enforce policy requirements.

Examples of the web server enforcing a remote access policy are implementing IP filtering rules, using https instead of http for communication, implementing secure tokens, and validating users.

Check Content:Review the web server product documentation and deployed configuration to determine if the server or an enterprise tool is enforcing the organization's requirements for remote connections.

UNCLASSIFIED Page 35 of 57

If the web server is not configured to enforce these requirements and an enterprise tool is not in place, this is a finding.

Fix Text: Configure the web server to enforce the remote access policy or to work with an enterprise tool designed to enforce the policy.

CCI: CCI-002314

Group ID (Vulid): V-55955Group Title: SRG-APP-000316-WSR-000170Rule ID: SV-70209r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000316-WSR-000170Rule Title: The web server must provide the capability to immediately disconnect or disable remote access to the hosted applications.

Vulnerability Discussion: During an attack on the web server or any of the hosted applications, the system administrator may need to disconnect or disable access by users to stop the attack.

The web server must provide a capability to disconnect users to a hosted application without compromising other hosted applications unless deemed necessary to stop the attack. Methods to disconnect or disable connections are to stop the application service for a specified hosted application, stop the web server, or block all connections through web server access list.

The web server capabilities used to disconnect or disable users from connecting to hosted applications and the web server must be documented to make certain that, during an attack, the proper action is taken to conserve connectivity to any other hosted application if possible and to make certain log data is conserved for later forensic analysis.

Check Content:Review the web server documentation and configuration to make certain that the web server is configured to allow for the immediate disconnection or disabling of remote access to hosted applications when necessary.

If the web server is not capable of or cannot be configured to disconnect or disable remote access to the hosted applications when necessary, this is a finding.

Fix Text: Configure the web server to provide the capability to immediately disconnect or disable remote access to the hosted applications.

CCI: CCI-002322

Group ID (Vulid): V-55957Group Title: SRG-APP-000356-WSR-000007Rule ID: SV-70211r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000356-WSR-000007Rule Title: A web server that is part of a web server cluster must route all remote management through a centrally managed access control point.

UNCLASSIFIED Page 36 of 57

Vulnerability Discussion: A web server cluster is a group of independent web servers that are managed as a single system for higher availability, easier manageability, and greater scalability. Without having centralized control of the web server cluster, management of the cluster becomes difficult. It is critical that remote management of the cluster be done through a designated management system acting as a single access point.

Check Content:Review the web server documentation and configuration to determine if the web server is part of a cluster.

If the web server is not part of a cluster, then this is NA.

If the web server is part of a cluster and is not centrally managed, then this is a finding.

Fix Text: Configure the web server to be centrally managed.

CCI: CCI-001844

Group ID (Vulid): V-55959Group Title: SRG-APP-000357-WSR-000150Rule ID: SV-70213r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000357-WSR-000150Rule Title: The web server must use a logging mechanism that is configured to allocate log record storage capacity large enough to accommodate the logging requirements of the web server.

Vulnerability Discussion: In order to make certain that the logging mechanism used by the web server has sufficient storage capacity in which to write the logs, the logging mechanism needs to be able to allocate log record storage capacity.

The task of allocating log record storage capacity is usually performed during initial installation of the logging mechanism. The system administrator will usually coordinate the allocation of physical drive space with the web server administrator along with the physical location of the partition and disk. Refer to NIST SP 800-92 for specific requirements on log rotation and storage dependent on the impact of the web server.

Check Content:Review the web server documentation and deployment configuration to determine if the web server is using a logging mechanism to store log records. If a logging mechanism is in use, validate that the mechanism is configured to use record storage capacity in accordance with specifications within NIST SP 800-92 for log record storage requirements.

If the web server is not using a logging mechanism, or if the mechanism has not been configured to allocate log record storage capacity in accordance with NIST SP 800-92, this is a finding.

Fix Text: Configure the web server to use a logging mechanism that is configured to allocate log record storage capacity in accordance with NIST SP 800-92 log record storage requirements.

CCI: CCI-001849

Group ID (Vulid): V-55961

UNCLASSIFIED Page 37 of 57

Group Title: SRG-APP-000315-WSR-000004Rule ID: SV-70215r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000315-WSR-000004Rule Title: The web server must restrict inbound connections from nonsecure zones.

Vulnerability Discussion: Remote access to the web server is any access that communicates through an external, non-organization-controlled network. Remote access can be used to access hosted applications or to perform management functions.

A web server can be accessed remotely and must be capable of restricting access from what the DoD defines as nonsecure zones. Nonsecure zones are defined as any IP, subnet, or region that is defined as a threat to the organization. The nonsecure zones must be defined for public web servers logically located in a DMZ, as well as private web servers with perimeter protection devices. By restricting access from nonsecure zones, through internal web server access list, the web server can stop or slow denial of service (DoS) attacks on the web server.

Check Content:Review the web server configuration to verify that the web server is restricting access from nonsecure zones.

If the web server is not configured to restrict access from nonsecure zones, then this is a finding.

Fix Text: Configure the web server to block access from DoD-defined nonsecure zones.

CCI: CCI-002314

Group ID (Vulid): V-55969Group Title: SRG-APP-000358-WSR-000063Rule ID: SV-70223r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000358-WSR-000063Rule Title: The web server must not impede the ability to write specified log record content to an audit log server.

Vulnerability Discussion: Writing events to a centralized management audit system offers many benefits to the enterprise over having dispersed logs. Centralized management of audit records and logs provides for efficiency in maintenance and management of records, enterprise analysis of events, and backup and archiving of event records enterprise-wide. The web server and related components are required to be capable of writing logs to centralized audit log servers.

Check Content:Review the web server documentation and deployment configuration to determine if the web server can write log data to, or if log data can be transferred to, a separate audit server.

Request a user access the hosted application and generate logable events and verify the data is written to a separate audit server.

If logs cannot be directly written or transferred on request or on a periodic schedule to an audit log server, this is a finding.

Fix Text: Configure the web server to directly write or transfer the logs to a remote audit log server.

CCI: CCI-001851

UNCLASSIFIED Page 38 of 57

Group ID (Vulid): V-55971Group Title: SRG-APP-000358-WSR-000163Rule ID: SV-70225r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000358-WSR-000163Rule Title: The web server must be configurable to integrate with an organizations security infrastructure.

Vulnerability Discussion: A web server will typically utilize logging mechanisms for maintaining a historical log of activity that occurs within a hosted application. This information can then be used for diagnostic purposes, forensics purposes, or other purposes relevant to ensuring the availability and integrity of the hosted application.

While it is important to log events identified as being critical and relevant to security, it is equally important to notify the appropriate personnel in a timely manner so they are able to respond to events as they occur.

Manual review of the web server logs may not occur in a timely manner, and each event logged is open to interpretation by a reviewer. By integrating the web server into an overall or organization-wide log review, a larger picture of events can be viewed, and analysis can be done in a timely and reliable manner.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server is logging security-relevant events.

Determine whether there is a security tool in place that allows review and alert capabilities and whether the web server is sending events to this system.

If the web server is not, this is a finding.

Fix Text: Configure the web server to send logged events to the organization's security infrastructure tool that offers review and alert capabilities.

CCI: CCI-001851

Group ID (Vulid): V-55973Group Title: SRG-APP-000108-WSR-000166Rule ID: SV-70227r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000108-WSR-000166Rule Title: The web server must use a logging mechanism that is configured to alert the ISSO and SA in the event of a processing failure.

Vulnerability Discussion: Reviewing log data allows an investigator to recreate the path of an attacker and to capture forensic data for later use. Log data is also essential to system administrators in their daily administrative duties on the hosted system or within the hosted applications.

If the logging system begins to fail, events will not be recorded. Organizations shall define logging failure events, at which time the application or the logging mechanism the application utilizes will provide a warning to the ISSO and SA at a minimum.

UNCLASSIFIED Page 39 of 57

Check Content:Review the web server documentation and deployment configuration settings to determine if the web server logging system provides an alert to the ISSO and the SA at a minimum when a processing failure occurs.

If alerts are not sent or the web server is not configured to use a dedicated logging tool that meets this requirement, this is a finding.

Fix Text: Configure the web server to provide an alert to the ISSO and SA when log processing failures occur.

If the web server cannot generate alerts, utilize an external logging system that meets this criterion.

CCI: CCI-000139

Group ID (Vulid): V-55975Group Title: SRG-APP-000359-WSR-000065Rule ID: SV-70229r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000359-WSR-000065Rule Title: The web server must use a logging mechanism that is configured to provide a warning to the ISSO and SA when allocated record storage volume reaches 75% of maximum log record storage capacity.

Vulnerability Discussion: It is critical for the appropriate personnel to be aware if a system is at risk of failing to process logs as required. Log processing failures include: software/hardware errors, failures in the log capturing mechanisms, and log storage capacity being reached or exceeded.

If log capacity were to be exceeded, then events subsequently occurring would not be recorded. Organizations shall define a maximum allowable percentage of storage capacity serving as an alarming threshold (e.g., web server has exceeded 75% of log storage capacity allocated), at which time the web server or the logging mechanism the web server utilizes will provide a warning to the ISSO and SA at a minimum.

This requirement can be met by configuring the web server to utilize a dedicated log tool that meets this requirement.

Check Content:Review the web server documentation and deployment configuration settings to determine if the web server log system provides a warning to the ISSO and SA when allocated record storage volume reaches 75% of maximum record storage capacity.

If designated alerts are not sent or the web server is not configured to use a dedicated log tool that meets this requirement, this is a finding.

Fix Text: Configure the web server to provide a warning to the ISSO and SA when allocated log record storage volume reaches 75% of maximum record storage capacity.

CCI: CCI-001855

Group ID (Vulid): V-55977Group Title: SRG-APP-000375-WSR-000171Rule ID: SV-70231r2_rule

UNCLASSIFIED Page 40 of 57

Severity: CAT IIRule Version (STIG-ID): SRG-APP-000375-WSR-000171Rule Title: The web server must record time stamps for log records to a minimum granularity of one second.

Vulnerability Discussion: Without sufficient granularity of time stamps, it is not possible to adequately determine the chronological order of records.

Time stamps generated by the web server include date and time and must be to a granularity of one second.

Check Content:Review the web server documentation and configuration to determine if log records are time stamped to a minimum granularity of one second.

Have a user generate a logable event and review the log data to determine if the web server is configured correctly.

If the log data does not contain a time stamp to a minimum granularity of one second, this is a finding. Fix

Text: Configure the web server to record log events with a time stamp to a granularity of one second.

CCI: CCI-001889

Group ID (Vulid): V-55979Group Title: SRG-APP-000374-WSR-000172Rule ID: SV-70233r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000374-WSR-000172Rule Title: The web server must generate log records that can be mapped to Coordinated Universal Time (UTC) or Greenwich Mean Time (GMT).

Vulnerability Discussion: If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analysis across multiple devices and log records.

Time stamps generated by the web server include date and time. Time is commonly expressed in Coordinated Universal Time (UTC), a modern continuation of Greenwich Mean Time (GMT), or local time with an offset from UTC.

Check Content:Review the web server documentation and configuration to determine the time stamp format for log data.

If the time stamp is not mapped to UTC or GMT time, this is a finding.

Fix Text: Configure the web server to store log data time stamps in a format that is mapped to UTC or GMT time.

CCI: CCI-001890

Group ID (Vulid): V-55981Group Title: SRG-APP-000380-WSR-000072

UNCLASSIFIED Page 41 of 57

Rule ID: SV-70235r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000380-WSR-000072Rule Title: The web server application, libraries, and configuration files must only be accessible to privileged users.

Vulnerability Discussion: A web server can be modified through parameter modification, patch installation, upgrades to the web server or modules, and security parameter changes. With each of these changes, there is the potential for an adverse effect such as a DoS, web server instability, or hosted application instability.

To limit changes to the web server and limit exposure to any adverse effects from the changes, files such as the web server application files, libraries, and configuration files must have permissions and ownership set properly to only allow privileged users access.

Check Content:Review the web server documentation and configuration to determine if the web server provides unique account roles specifically for the purposes of segmenting the responsibilities for managing the web server.

Log into the hosting server using a web server role with limited permissions (e.g., Auditor, Developer, etc.) and verify the account is not able to perform configuration changes that are not related to that role.

If roles are not defined with limited permissions and restrictions, this is a finding.

Fix Text: Define roles and responsibilities to be used when managing the web server.

Configure the hosting system to utilize specific roles that restrict access related to web server system and configuration changes.

CCI: CCI-001813

Group ID (Vulid): V-55983Group Title: SRG-APP-000131-WSR-000051Rule ID: SV-70237r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000131-WSR-000051Rule Title: All web server files must be verified for their integrity (e.g., checksums and hashes) before becoming part of the production web server.

Vulnerability Discussion: Being able to verify that a patch, upgrade, certificate, etc., being added to the web server is unchanged from the producer of the file is essential for file validation and non-repudiation of the information.

The web server or hosting system must have a mechanism to verify that files, before installation, are valid.

Examples of validation methods are sha1 and md5 hashes and checksums.

Check Content:Review the web server documentation and deployment configuration to determine if the web server validates files before the files are implemented into the running configuration.

If the web server does not meet this requirement and an external facility is not available for use, this is a finding.

UNCLASSIFIED Page 42 of 57

Fix Text: Configure the web server to verify object integrity before becoming part of the production web server or utilize an external tool designed to meet this requirement.

CCI: CCI-001749

Group ID (Vulid): V-55985Group Title: SRG-APP-000516-WSR-000174Rule ID: SV-70239r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000516-WSR-000174Rule Title: The web server must be configured in accordance with the security configuration settings based on DoD security configuration or implementation guidance, including STIGs, NSA configuration guides, CTOs, and DTMs.

Vulnerability Discussion: Configuring the web server to implement organization-wide security implementation guides and security checklists guarantees compliance with federal standards and establishes a common security baseline across the DoD that reflects the most restrictive security posture consistent with operational requirements.

Configuration settings are the set of parameters that can be changed that affect the security posture and/or functionality of the system. Security-related parameters are those parameters impacting the security state of the web server, including the parameters required to satisfy other security control requirements.

Check Content:Review the web server documentation and deployed configuration to determine if web server is configured in accordance with the security configuration settings based on DoD security configuration or implementation guidance.

If the web server is not configured according to the guidance, this is a finding.

Fix Text: Configure the web server to be configured according to DoD security configuration guidance.

CCI: CCI-000366

Group ID (Vulid): V-55987Group Title: SRG-APP-000516-WSR-000079Rule ID: SV-70241r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000516-WSR-000079Rule Title: All accounts installed with the web server software and tools must have passwords assigned and default passwords changed.

Vulnerability Discussion: During installation of the web server software, accounts are created for the web server to operate properly. The accounts installed can have either no password installed or a default password, which will be known and documented by the vendor and the user community.

The first things an attacker will try when presented with a login screen are the default user identifiers with default passwords. Installed applications may also install accounts with no password, making the login even easier. Once the web server is installed, the passwords for any created accounts should be changed and documented. The new

UNCLASSIFIED Page 43 of 57

passwords must meet the requirements for all passwords, i.e., upper/lower characters, numbers, special characters, time until change, reuse policy, etc.

Service accounts or system accounts that have no login capability do not need to have passwords set or changed.

Check Content:Review the web server documentation and deployment configuration to determine what non-service/system accounts were installed by the web server installation process.

Verify the passwords for these accounts have been set and/or changed from the default passwords.

If these accounts still have no password or default passwords, this is a finding.

Fix Text: Set passwords for non-service/system accounts containing no passwords and change the passwords for accounts which still have default passwords.

CCI: CCI-000366

Group ID (Vulid): V-55989Group Title: SRG-APP-000141-WSR-000015Rule ID: SV-70243r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000141-WSR-000015Rule Title: The web server must not perform user management for hosted applications.

Vulnerability Discussion: User management and authentication can be an essential part of any application hosted by the web server. Along with authenticating users, the user management function must perform several other tasks like password complexity, locking users after a configurable number of failed logins, and management of temporary and emergency accounts; and all of this must be done enterprise-wide.

The web server contains a minimal user management function, but the web server user management function does not offer enterprise-wide user management, and user management is not the primary function of the web server. User management for the hosted applications should be done through a facility that is built for enterprise-wide user management, like LDAP and Active Directory.

Check Content:Review the web server documentation and configuration to determine if the web server is being used as a user management application.

If the web server is being used to perform user management for the hosted applications, this is a finding.

Fix Text: Configure the web server to disable user management functionality.

CCI: CCI-000381

Group ID (Vulid): V-55991Group Title: SRG-APP-000383-WSR-000175Rule ID: SV-70245r2_ruleSeverity: CAT II

UNCLASSIFIED Page 44 of 57

Rule Version (STIG-ID): SRG-APP-000383-WSR-000175Rule Title: The web server must prohibit or restrict the use of nonsecure or unnecessary ports, protocols, modules, and/or services.

Vulnerability Discussion: Web servers provide numerous processes, features, and functionalities that utilize TCP/IP ports. Some of these processes may be deemed unnecessary or too unsecure to run on a production system.

The web server must provide the capability to disable or deactivate network-related services that are deemed to be non-essential to the server mission, are too unsecure, or are prohibited by the PPSM CAL and vulnerability assessments.

Check Content:Review the web server documentation and deployment configuration to determine which ports and protocols are enabled.

Verify that the ports and protocols being used are permitted, necessary for the operation of the web server and the hosted applications and are secure for a production system.

If any of the ports or protocols are not permitted, are nonsecure or are not necessary for web server operation, this is a finding.

Fix Text: Configure the web server to disable any ports or protocols that are not permitted, are nonsecure for a production web server or are not necessary for web server operation.

CCI: CCI-001762

Group ID (Vulid): V-55993Group Title: SRG-APP-000211-WSR-000031Rule ID: SV-70247r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000211-WSR-000031Rule Title: Anonymous user access to the web server application directories must be prohibited.

Vulnerability Discussion: In order to properly monitor the changes to the web server and the hosted applications, logging must be enabled. Along with logging being enabled, each record must properly contain the changes made and the names of those who made the changes.

Allowing anonymous users the capability to change the web server or the hosted application will not generate proper log information that can then be used for forensic reporting in the case of a security issue. Allowing anonymous users to make changes will also grant change capabilities to anybody without forcing a user to authenticate before the changes can be made.

Check Content:Review the web server documentation and configuration to determine if anonymous users can make changes to the web server or any applications hosted by the web server.

If anonymous users can make changes, this is a finding.

Fix Text: Configure the web server to not allow anonymous users to change the web server or any hosted applications.

CCI: CCI-001082

UNCLASSIFIED Page 45 of 57

Group ID (Vulid): V-55995Group Title: SRG-APP-000211-WSR-000030Rule ID: SV-70249r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000211-WSR-000030Rule Title: Web server accounts accessing the directory tree, the shell, or other operating system functions and utilities must only be administrative accounts.

Vulnerability Discussion: As a rule, accounts on a web server are to be kept to a minimum. Only administrators, web managers, developers, auditors, and web authors require accounts on the machine hosting the web server. The resources to which these accounts have access must also be closely monitored and controlled. Only the system administrator needs access to all the system's capabilities, while the web administrator and associated staff require access and control of the web content and web server configuration files.

Check Content:Review the web server documentation and configuration to determine what web server accounts are available on the hosting server.

If non-privileged web server accounts are available with access to functions, directories, or files not needed for the role of the account, this is a finding.

Fix Text: Limit the functions, directories, and files that are accessible by each account and role to administrative accounts and remove or modify non-privileged account access.

CCI: CCI-001082

Group ID (Vulid): V-55997Group Title: SRG-APP-000435-WSR-000148Rule ID: SV-70251r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000435-WSR-000148Rule Title: The web server must be tuned to handle the operational requirements of the hosted application.

Vulnerability Discussion: A Denial of Service (DoS) can occur when the web server is so overwhelmed that it can no longer respond to additional requests. A web server not properly tuned may become overwhelmed and cause a DoS condition even with expected traffic from users. To avoid a DoS, the web server must be tuned to handle the expected traffic for the hosted applications.

Check Content:Review the web server documentation and deployed configuration to determine what parameters are set to tune the web server.

Review the hosted applications along with risk analysis documents to determine the expected user traffic.

If the web server has not been tuned to avoid a DoS, this is a finding.

Fix Text: Analyze the expected user traffic for the hosted applications.

UNCLASSIFIED Page 46 of 57

Tune the web server to avoid a DoS condition under normal user traffic to the hosted applications.

CCI: CCI-002385

Group ID (Vulid): V-55999Group Title: SRG-APP-000435-WSR-000147Rule ID: SV-70253r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000435-WSR-000147Rule Title: The web server must be protected from being stopped by a non-privileged user.

Vulnerability Discussion: An attacker has at least two reasons to stop a web server. The first is to cause a DoS, and the second is to put in place changes the attacker made to the web server configuration.

To prohibit an attacker from stopping the web server, the process ID (pid) of the web server and the utilities used to start/stop the web server must be protected from access by non-privileged users. By knowing the pid and having access to the web server utilities, a non-privileged user has a greater capability of stopping the server, whether intentionally or unintentionally.

Check Content:Review the web server documentation and deployed configuration to determine where the process ID is stored and which utilities are used to start/stop the web server.

Determine whether the process ID and the utilities are protected from non-privileged

users. If they are not protected, this is a finding.

Fix Text: Remove or modify non-privileged account access to the web server process ID and the utilities used for starting/stopping the web server.

CCI: CCI-002385

Group ID (Vulid): V-56001Group Title: SRG-APP-000439-WSR-000151Rule ID: SV-70255r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000151Rule Title: The web server must employ cryptographic mechanisms (TLS/DTLS/SSL) preventing the unauthorized disclosure of information during transmission.

Vulnerability Discussion: Preventing the disclosure of transmitted information requires that the web server take measures to employ some form of cryptographic mechanism in order to protect the information during transmission. This is usually achieved through the use of Transport Layer Security (TLS).

Transmission of data can take place between the web server and a large number of devices/applications external to the web server. Examples are a web client used by a user, a backend database, an audit server, or other web servers in a web cluster.

UNCLASSIFIED Page 47 of 57

If data is transmitted unencrypted, the data then becomes vulnerable to disclosure. The disclosure may reveal user identifier/password combinations, website code revealing business logic, or other user personal information.

Check Content:Review the web server documentation and deployed configuration to determine whether the transmission of data between the web server and external devices is encrypted.

If the web server does not encrypt the transmission, this is a finding.

Fix Text: Configure the web server to encrypt the transmission of data between the web server and external devices.

CCI: CCI-002418

Group ID (Vulid): V-56003Group Title: SRG-APP-000439-WSR-000152Rule ID: SV-70257r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000152Rule Title: Web server session IDs must be sent to the client using SSL/TLS.

Vulnerability Discussion: The HTTP protocol is a stateless protocol. To maintain a session, a session identifier is used. The session identifier is a piece of data that is used to identify a session and a user. If the session identifier is compromised by an attacker, the session can be hijacked. By encrypting the session identifier, the identifier becomes more difficult for an attacker to hijack, decrypt, and use before the session has expired.

Check Content:Review the web server documentation and deployed configuration to determine whether the session identifier is being sent to the client encrypted.

If the web server does not encrypt the session identifier, this is a finding.

Fix Text: Configure the web server to encrypt the session identifier for transmission to the client.

CCI: CCI-002418

Group ID (Vulid): V-56005Group Title: SRG-APP-000439-WSR-000153Rule ID: SV-70259r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000153Rule Title: Web server cookies, such as session cookies, sent to the client using SSL/TLS must not be compressed.

Vulnerability Discussion: A cookie is used when a web server needs to share data with the client's browser. The data is often used to remember the client when the client returns to the hosted application at a later date. A session cookie is a special type of cookie used to remember the client during the session. The cookie will contain the session identifier (ID) and may contain authentication data to the hosted application. To protect this data from easily being compromised, the cookie can be encrypted.

UNCLASSIFIED Page 48 of 57

When a cookie is sent encrypted via SSL/TLS, an attacker must spend a great deal of time and resources to decrypt the cookie. If, along with encryption, the cookie is compressed, the attacker can now use a combination of plaintext injection and inadvertent information leakage through data compression to reduce the time needed to decrypt the cookie. This attack is called Compression Ratio Info-leak Made Easy (CRIME).

Cookies shared between the web server and the client when encrypted should not also be compressed.

Check Content:Review the web server documentation and deployed configuration to determine whether cookies are being sent to the client using SSL/TLS.

If the transmission is through a SSL/TLS connection, but the cookie is not being compressed, this finding is NA.

If the web server is using SSL/TLS for cookie transmission and the cookie is also being compressed, this is a finding.

Fix Text: Configure the web server to send the cookie to the client via SSL/TLS without using cookie compression.

CCI: CCI-002418

Group ID (Vulid): V-56007Group Title: SRG-APP-000439-WSR-000154Rule ID: SV-70261r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000154Rule Title: Cookies exchanged between the web server and the client, such as session cookies, must have cookie properties set to prohibit client-side scripts from reading the cookie data.

Vulnerability Discussion: A cookie can be read by client-side scripts easily if cookie properties are not set properly. By allowing cookies to be read by the client-side scripts, information such as session identifiers could be compromised and used by an attacker who intercepts the cookie. Setting cookie properties (i.e. HttpOnly property) to disallow client-side scripts from reading cookies better protects the information inside the cookie.

Check Content:Review the web server documentation and deployed configuration to determine how to disable client-side scripts from reading cookies.

If the web server is not configured to disallow client-side scripts from reading cookies, this is a finding.

Fix Text: Configure the web server to disallow client-side scripts the capability of reading cookie information.

CCI: CCI-002418

Group ID (Vulid): V-56009Group Title: SRG-APP-000439-WSR-000155Rule ID: SV-70263r2_ruleSeverity: CAT II

UNCLASSIFIED Page 49 of 57

Rule Version (STIG-ID): SRG-APP-000439-WSR-000155Rule Title: Cookies exchanged between the web server and the client, such as session cookies, must have cookie properties set to force the encryption of cookies.

Vulnerability Discussion: Cookies can be sent to a client using TLS/SSL to encrypt the cookies, but TLS/SSL is not used by every hosted application since the data being displayed does not require the encryption of the transmission. To safeguard against cookies, especially session cookies, being sent in plaintext, a cookie can be encrypted before transmission. To force a cookie to be encrypted before transmission, the cookie Secure property can be set.

Check Content:Review the web server documentation and deployed configuration to verify that cookies are encrypted before transmission.

If the web server is not configured to encrypt cookies, this is a finding.

Fix Text: Configure the web server to encrypt cookies before transmission.

CCI: CCI-002418

Group ID (Vulid): V-56011Group Title: SRG-APP-000439-WSR-000156Rule ID: SV-70265r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000156Rule Title: A web server must maintain the confidentiality of controlled information during transmission through the use of an approved TLS version.

Vulnerability Discussion: Transport Layer Security (TLS) is a required transmission protocol for a web server hosting controlled information. The use of TLS provides confidentiality of data in transit between the web server and client. FIPS 140-2 approved TLS versions must be enabled and non-FIPS-approved SSL versions must be disabled.

NIST SP 800-52 defines the approved TLS versions for government applications.

Check Content:Review the web server documentation and deployed configuration to determine which version of TLS is being used.

If the TLS version is not an approved version according to NIST SP 800-52 or non-FIPS-approved algorithms are enabled, this is a finding.

Fix Text: Configure the web server to use an approved TLS version according to NIST SP 800-52 and to disable all non-approved versions.

CCI: CCI-002418

Group ID (Vulid): V-56013Group Title: SRG-APP-000441-WSR-000181

UNCLASSIFIED Page 50 of 57

Rule ID: SV-70267r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000441-WSR-000181Rule Title: The web server must maintain the confidentiality and integrity of information during preparation for transmission.

Vulnerability Discussion: Information can be either unintentionally or maliciously disclosed or modified during preparation for transmission, including, for example, during aggregation, at protocol transformation points, and during packing/unpacking. These unauthorized disclosures or modifications compromise the confidentiality or integrity of the information.

An example of this would be an SMTP queue. This queue may be added to a web server through an SMTP module to enhance error reporting or to allow developers to add SMTP functionality to their applications.

Any modules used by the web server that queue data before transmission must maintain the confidentiality and integrity of the information before the data is transmitted.

Check Content:Review the web server documentation and deployed configuration to determine if the web server maintains the confidentiality and integrity of information during preparation before transmission.

If the confidentiality and integrity are not maintained, this is a finding.

Fix Text: Configure the web server to maintain the confidentiality and integrity of information during preparation for transmission.

CCI: CCI-002420

Group ID (Vulid): V-56015Group Title: SRG-APP-000442-WSR-000182Rule ID: SV-70269r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000442-WSR-000182Rule Title: The web server must maintain the confidentiality and integrity of information during reception.

Vulnerability Discussion: Information can be either unintentionally or maliciously disclosed or modified during reception, including, for example, during aggregation, at protocol transformation points, and during packing/unpacking. These unauthorized disclosures or modifications compromise the confidentiality or integrity of the information.

Protecting the confidentiality and integrity of received information requires that application servers take measures to employ approved cryptography in order to protect the information during transmission over the network. This is usually achieved through the use of Transport Layer Security (TLS), SSL VPN, or IPsec tunnel.

The web server must utilize approved encryption when receiving transmitted data.

Check Content:Review web server configuration to determine if the server is using a transmission method that maintains the confidentiality and integrity of information during reception.

If a transmission method is not being used that maintains the confidentiality and integrity of the data during

UNCLASSIFIED Page 51 of 57

reception, this is a finding.

Fix Text: Configure the web server to utilize a transmission method that maintains the confidentiality and integrity of information during reception.

CCI: CCI-002422

Group ID (Vulid): V-56017Group Title: SRG-APP-000416-WSR-000118Rule ID: SV-70271r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000416-WSR-000118Rule Title: The web server must implement required cryptographic protections using cryptographic modules complying with applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance when encrypting data that must be compartmentalized.

Vulnerability Discussion: Cryptography is only as strong as the encryption modules/algorithms employed to encrypt the data.

Use of weak or untested encryption algorithms undermines the purposes of utilizing encryption to protect data.

NSA has developed Type 1 algorithms for protecting classified information. The Committee on National Security Systems (CNSS) National Information Assurance Glossary (CNSS Instruction No. 4009) defines Type 1 products as:

"Cryptographic equipment, assembly or component classified or certified by NSA for encrypting and decrypting classified and sensitive national security information when appropriately keyed. Developed using established NSA business processes and containing NSA-approved algorithms are used to protect systems requiring the most stringent protection mechanisms."

Although persons may have a security clearance, they may not have a "need-to-know" and are required to be separated from the information in question. The web server must employ NSA-approved cryptography to protect classified information from those individuals who have no "need-to-know" or when encryption of compartmentalized data is required by data classification.

Check Content:Review policy documents to identify data that is compartmentalized (i.e. classified, sensitive, need-to-know, etc.) and requires cryptographic protection.

Review the web server documentation and deployed configuration to identify the encryption modules utilized to protect the compartmentalized data.

If the encryption modules used to protect the compartmentalized data are not compliant with the data, this is a finding.

Fix Text: Configure the web server to utilize cryptography when protecting compartmentalized data.

CCI: CCI-002450

UNCLASSIFIED Page 52 of 57

Group ID (Vulid): V-56019Group Title: SRG-APP-000206-WSR-000128Rule ID: SV-70273r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000206-WSR-000128Rule Title: A web server utilizing mobile code must meet DoD-defined mobile code requirements.

Vulnerability Discussion: Mobile code in hosted applications allows the developer to add functionality and displays to hosted applications that are fluid, as opposed to a static web page. The data presentation becomes more appealing to the user, is easier to analyze, and navigation through the hosted application and data is much less complicated.

Some mobile code technologies in use in today's applications are: Java, JavaScript, ActiveX, PDF, Postscript, Shockwave movies, Flash animations, and VBScript. The DoD has created policies that define the usage of mobile code on DoD systems. The usage restrictions and implementation guidance apply to both the selection and use of mobile code installed on organizational servers and mobile code downloaded and executed on individual workstations.

The web server may host applications that contain mobile code and therefore, must meet the DoD-defined requirements regarding the deployment and/or use of mobile code. This includes digitally signing applets in order to provide a means for the client to establish application authenticity.

Check Content:Review the web server documentation and deployed configuration to determine whether mobile code used by hosted applications follows the DoD policies on the acquisition, development, and/or use of mobile code.

If the web server is not configured to follow the DoD policies on mobile code, this is a finding.

Fix Text: Configure the web server to follow the DoD policies on mobile code.

CCI: CCI-001166

Group ID (Vulid): V-56021Group Title: SRG-APP-000220-WSR-000201Rule ID: SV-70275r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000220-WSR-000201Rule Title: The web server must invalidate session identifiers upon hosted application user logout or other session termination.

Vulnerability Discussion: Captured sessions can be reused in "replay" attacks. This requirement limits the ability of adversaries from capturing and continuing to employ previously valid session IDs.

Session IDs are tokens generated by web applications to uniquely identify an application user's session. Unique session IDs help to reduce predictability of said identifiers. When a user logs out, or when any other session termination event occurs, the web server must terminate the user session to minimize the potential for an attacker to hijack that particular user session.

Check Content:Review the web server documentation and deployed configuration to verify that the web server is configured to invalidate session identifiers when a session is terminated.

UNCLASSIFIED Page 53 of 57

If the web server does not invalidate session identifiers when a session is terminated, this is a finding.

Fix Text: Configure the web server to invalidate session identifiers when a session is terminated.

CCI: CCI-001185

Group ID (Vulid): V-56023Group Title: SRG-APP-000224-WSR-000135Rule ID: SV-70277r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000224-WSR-000135Rule Title: The web server must generate a unique session identifier for each session using a FIPS 140-2 approved random number generator.

Vulnerability Discussion: Communication between a client and the web server is done using the HTTP protocol, but HTTP is a stateless protocol. In order to maintain a connection or session, a web server will generate a session identifier (ID) for each client session when the session is initiated. The session ID allows the web server to track a user session and, in many cases, the user, if the user previously logged into a hosted application.

Unique session IDs are the opposite of sequentially generated session IDs, which can be easily guessed by an attacker. Unique session identifiers help to reduce predictability of generated identifiers. Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending application traffic, the attacker will have more difficulty in hijacking the session or otherwise manipulating valid sessions.

Check Content:Review the web server documentation and deployed configuration to verify that the web server is configured to generate unique session identifiers with a FIPS 140-2 approved random number generator.

Request two users access the web server and view the session identifier generated for each user to verify that the session IDs are not sequential.

If the web server is not configured to generate unique session identifiers or the random number generator is not FIPS 140-2 approved, this is a finding.

Fix Text: Configure the web server to generate unique session identifiers using a FIPS 140-2 random number generator.

CCI: CCI-001188

Group ID (Vulid): V-56025Group Title: SRG-APP-000223-WSR-000011Rule ID: SV-70279r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000223-WSR-000011Rule Title: Cookies exchanged between the web server and client, such as session cookies, must have security settings that disallow cookie access outside the originating web server and hosted application.

UNCLASSIFIED Page 54 of 57

Vulnerability Discussion: Cookies are used to exchange data between the web server and the client. Cookies, such as a session cookie, may contain session information and user credentials used to maintain a persistent connection between the user and the hosted application since HTTP/HTTPS is a stateless protocol.

When the cookie parameters are not set properly (i.e., domain and path parameters), cookies can be shared within hosted applications residing on the same web server or to applications hosted on different web servers residing on the same domain.

Check Content:Review the web server documentation and configuration to determine if cookies between the web server and client are accessible by applications or web servers other than the originating pair.

If the cookie information is accessible outside the originating pair, this is a finding.

Fix Text: Configure the web server to set properties within cookies to disallow the cookie to be accessed by other web servers and applications.

CCI: CCI-001664

Group ID (Vulid): V-56027Group Title: SRG-APP-000427-WSR-000186Rule ID: SV-70281r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000427-WSR-000186Rule Title: The web server must only accept client certificates issued by DoD PKI or DoD-approved PKI Certification Authorities (CAs).

Vulnerability Discussion: Non-DoD approved PKIs have not been evaluated to ensure that they have security controls and identity vetting procedures in place which are sufficient for DoD systems to rely on the identity asserted in the certificate. PKIs lacking sufficient security controls and identity vetting procedures risk being compromised and issuing certificates that enable adversaries to impersonate legitimate users.

Check Content:Review the web server deployed configuration to determine if the web server will accept client certificates issued by unapproved PKIs. The authoritative list of DoD-approved PKIs is published at http://iase.disa.mil/pki- pke/interoperability.

If the web server will accept non-DoD approved PKI client certificates, this is a finding.

Fix Text: Configure the web server to only accept DoD and DoD-approved PKI client certificates.

CCI: CCI-002470

Group ID (Vulid): V-56029Group Title: SRG-APP-000225-WSR-000074Rule ID: SV-70283r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000225-WSR-000074Rule Title: The web server must augment re-creation to a stable and known baseline.

UNCLASSIFIED Page 55 of 57

Vulnerability Discussion: Making certain that the web server has not been updated by an unauthorized user is always a concern. Adding patches, functions, and modules that are untested and not part of the baseline opens the possibility for security risks. The web server must offer, and not hinder, a method that allows for the quick and easy reinstallation of a verified and patched baseline to guarantee the production web server is up-to-date and has not been modified to add functionality or expose security risks.

When the web server does not offer a method to roll back to a clean baseline, external methods, such as a baseline snapshot or virtualizing the web server, can be used.

Check Content:Review the web server documentation and deployed configuration to determine if the web server offers the capability to reinstall from a known state.

If the web server does not offer this capability, determine if the web server, in any manner, prohibits the reinstallation of a known state.

If the web server does prohibit the reinstallation to a known state, this is a finding.

Fix Text: Configure the web server to augment and not hinder the reinstallation of a known and stable baseline.

CCI: CCI-001190

Group ID (Vulid): V-56031Group Title: SRG-APP-000429-WSR-000113Rule ID: SV-70285r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000429-WSR-000113Rule Title: The web server must encrypt user identifiers and passwords.

Vulnerability Discussion: When data is written to digital media, such as hard drives, mobile computers, external/removable hard drives, personal digital assistants, flash/thumb drives, etc., there is risk of data loss and data compromise. User identities and passwords stored on the hard drive of the hosting hardware must be encrypted to protect the data from easily being discovered and used by an unauthorized user to access the hosted applications. The cryptographic libraries and functionality used to store and retrieve the user identifiers and passwords must be part of the web server.

Check Content:Review the web server documentation and deployed configuration to determine whether the web server is authorizing and managing users.

If the web server is not authorizing and managing users, this is NA.

If the web server is the user authenticator and manager, verify that stored user identifiers and passwords are being encrypted by the web server. If the user information is not being encrypted when stored, this is a finding.

Fix Text: Configure the web server to encrypt the user identifiers and passwords when storing them on digital media.

CCI: CCI-002476

UNCLASSIFIED Page 56 of 57

Group ID (Vulid): V-56033Group Title: SRG-APP-000456-WSR-000187Rule ID: SV-70287r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000456-WSR-000187Rule Title: The web server must install security-relevant software updates within the configured time period directed by an authoritative source (e.g. IAVM, CTOs, DTMs, and STIGs).

Vulnerability Discussion: Security flaws with software applications are discovered daily. Vendors are constantly updating and patching their products to address newly discovered security vulnerabilities. Organizations (including any contractor to the organization) are required to promptly install security-relevant software updates (e.g., patches, service packs, and hot fixes). Flaws discovered during security assessments, continuous monitoring, incident response activities, or information system error handling must also be addressed expeditiously.

The web server will be configured to check for and install security-relevant software updates from an authoritative source within an identified time period from the availability of the update. By default, this time period will be every 24 hours.

Check Content:Review the web server documentation and configuration to determine if the web server checks for patches from an authoritative source at least every 24 hours.

If there is no timeframe or the timeframe is greater than 24 hours, this is a finding.

Fix Text: Configure the web server to check for patches and updates from an authoritative source at least every 24 hours.

CCI: CCI-002605

Group ID (Vulid): V-56035Group Title: SRG-APP-000266-WSR-000142Rule ID: SV-70289r2_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000266-WSR-000142Rule Title: The web server must display a default hosted application web page, not a directory listing, when a requested web page cannot be found.

Vulnerability Discussion: The goal is to completely control the web user's experience in navigating any portion of the web document root directories. Ensuring all web content directories have at least the equivalent of an index.html file is a significant factor to accomplish this end.

Enumeration techniques, such as URL parameter manipulation, rely upon being able to obtain information about the web server's directory structure by locating directories without default pages. In the scenario, the web server will display to the user a listing of the files in the directory being accessed. By having a default hosted application web page, the anonymous web user will not obtain directory browsing information or an error message that reveals the server type and version.

UNCLASSIFIED Page 57 of 57

Check Content:Review the web server documentation and deployed configuration to locate all the web document directories.

Verify that each web document directory contains a default hosted application web page that can be used by the web server in the event a web page cannot be found.

If a document directory does not contain a default web page, this is a finding.

Fix Text: Place a default web page in every web document directory.

CCI: CCI-001312

Group ID (Vulid): V-61353Group Title: SRG-APP-000439-WSR-000188Rule ID: SV-75835r1_ruleSeverity: CAT IIRule Version (STIG-ID): SRG-APP-000439-WSR-000188Rule Title: The web server must remove all export ciphers to protect the confidentiality and integrity of transmitted information.

Vulnerability Discussion: During the initial setup of a Transport Layer Security (TLS) connection to the web server, the client sends a list of supported cipher suites in order of preference. The web server will reply with the cipher suite it will use for communication from the client list. If an attacker can intercept the submission of cipher suites to the web server and place, as the preferred cipher suite, a weak export suite, the encryption used for the session becomes easy for the attacker to break, often within minutes to hours.

Check Content:Review the web server documentation and deployed configuration to determine if export ciphers are

removed. If the web server does not have the export ciphers removed, this is a finding.

Fix Text: Configure the web server to have export ciphers removed.

CCI: CCI-002418

UNCLASSIFIED

END

SUPPLEMENT 2

FEDERAL GOVERNMENT

SECURITY REQUIREMENTS