DoD Compliance · STIG

Apache Server 2.4 UNIX Site Security Technical Implementation Guide

V2R7 · · · Released 01 Jul 2026 · 16 rules
Compare

Pick two releases to diff their requirements.

View

Open a previous version of this STIG.

This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DOD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via email to the following address: disa.stig_spt@mail.mil.
Digest of Updates vs. V2R6 · 02 Apr 2025 −11 ✎ 2

Comparison against the immediately-prior release (V2R6). Rule matching uses the Group Vuln ID. Content-change detection compares the rule’s description, check, and fix text after stripping inline markup — cosmetic-only edits aren’t flagged.

Removed rules 11

  • V-214277 Medium The Apache web server must perform server-side session management.
  • V-214278 Medium The Apache web server must use encryption strength in accordance with the categorization of data hosted by the Apache web server when remote connections are provided.
  • V-214279 Medium The Apache web server must produce log records containing sufficient information to establish what type of events occurred.
  • V-214281 Medium The Apache web server must have Multipurpose Internet Mail Extensions (MIME) that invoke operating system shell programs disabled.
  • V-214283 Medium The Apache web server must have resource mappings set to disable the serving of certain file types.
  • V-214285 Medium The Apache web server must be configured to use a specified IP address and port.
  • V-214291 Medium The Apache web server must be tuned to handle the operational requirements of the hosted application.
  • V-214293 Medium Warning and error messages displayed to clients must be modified to minimize the identity of the Apache web server, patches, loaded modules, and directory paths.
  • V-214294 Medium Debugging and trace information used to diagnose the Apache web server must be disabled.
  • V-214295 Medium The Apache web server must set an absolute timeout for sessions.
  • V-214299 Medium The Apache web server application, libraries, and configuration files must only be accessible to privileged users.

Content changes 2

  • V-214288 Medium check Cookies exchanged between the Apache web server and client, such as session cookies, must have security settings that disallow cookie access outside the originating Apache web server and hosted application.
  • V-214304 Low descriptioncheck The Apache web server must prohibit or restrict the use of nonsecure or unnecessary ports, protocols, modules, and/or services.
Sort by
b
The Apache web server must not perform user management for hosted applications.
CM-7 - Medium - CCI-000381 - V-214280 - SV-214280r960963_rule
RMF Control
CM-7
Severity
M
CCI
CCI-000381
Version
AS24-U2-000240
Vuln IDs
  • V-214280
  • V-92771
Rule IDs
  • SV-214280r960963_rule
  • SV-102859
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 such as password complexity, locking users after a configurable number of failed logons, and management of temporary and emergency accounts. 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.
Checks: C-15493r277181_chk

Interview the System Administrator (SA) about the role of the Apache web server. If the web server is hosting an application, have the SA provide supporting documentation on how the application's user management is accomplished outside of the web server. If the web server is not hosting an application, this is Not Applicable. If the web server is performing user management for hosted applications, this is a finding. If the web server is hosting an application and the SA cannot provide supporting documentation on how the application's user management is accomplished outside of the Apache web server, this is a finding.

Fix: F-15491r277182_fix

Reconfigure any hosted applications on the Apache web server to perform user management outside the web server. Document how the hosted application user management is accomplished.

b
The Apache web server must allow mappings to unused and vulnerable scripts to be removed.
CM-7 - Medium - CCI-000381 - V-214282 - SV-214282r960963_rule
RMF Control
CM-7
Severity
M
CCI
CCI-000381
Version
AS24-U2-000310
Vuln IDs
  • V-214282
  • V-92775
Rule IDs
  • SV-214282r960963_rule
  • SV-102863
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 ensure scripts are not added to the web server and run maliciously, script mappings that are not needed or used by the web server for hosted application operation must be removed.
Checks: C-15495r881473_chk

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used. Review "Script", "ScriptAlias" or "ScriptAliasMatch", or "ScriptInterpreterSource" directives. Go into each directory and locate "cgi-bin" files. If any scripts are present that are not needed for application operation, this is a finding. If this is not documented and approved by the Information System Security Officer (ISSO), this is a finding.

Fix: F-15493r881474_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Remove any scripts in "cgi-bin" directory if they are not needed for application operation. Ensure this process is documented and approved by the ISSO.

b
Users and scripts running on behalf of users must be contained to the document root or home directory tree of the Apache web server.
CM-7 - Medium - CCI-000381 - V-214284 - SV-214284r960963_rule
RMF Control
CM-7
Severity
M
CCI
CCI-000381
Version
AS24-U2-000350
Vuln IDs
  • V-214284
  • V-92779
Rule IDs
  • SV-214284r960963_rule
  • SV-102867
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.
Checks: C-15497r881479_chk

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used. Verify there is a single "Require" directive with the value of "all denied". Verify there are no "Allow" or "Deny" directives in the root <Directory> element. The following may be useful in extracting root directory elements from the Apache configuration for auditing: # perl -ne 'print if /^ *<Directory *\//i .. /<\/Directory/i' $APACHE_PREFIX/conf/httpd.conf If there are "Allow" or "Deny" directives in the root <Directory> element, this is a finding.

Fix: F-15495r881480_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Set the root directory directive as follows: <Directory> ... Require all denied ... </Directory> Remove any "Deny" and "Allow" directives from the root <Directory> element. Restart Apache: apachectl restart

b
The Apache web server must perform RFC 5280-compliant certification path validation.
IA-5 - Medium - CCI-000185 - V-214286 - SV-214286r1051289_rule
RMF Control
IA-5
Severity
M
CCI
CCI-000185
Version
AS24-U2-000380
Vuln IDs
  • V-214286
  • V-92785
Rule IDs
  • SV-214286r1051289_rule
  • SV-102873
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.
Checks: C-15499r1051287_chk

Review the Apache 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 Apache server is using PKI, but it does not perform this requirement, this is a finding.

Fix: F-15497r1051288_fix

Configure the Apache server to validate certificates in accordance with RFC 5280.

b
Only authenticated system administrators or the designated PKI Sponsor for the Apache web server must have access to the Apache web servers private key.
IA-5 - Medium - CCI-000186 - V-214287 - SV-214287r961041_rule
RMF Control
IA-5
Severity
M
CCI
CCI-000186
Version
AS24-U2-000390
Vuln IDs
  • V-214287
  • V-92787
Rule IDs
  • SV-214287r961041_rule
  • SV-102875
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.
Checks: C-15500r881488_chk

Verify the "ssl module" module is loaded # httpd -M | grep -i ssl_module Output: ssl_module (shared) If the "ssl_module" is not enabled, this is a finding. Determine the location of the ssl.conf file: # find / -name ssl.conf Output: /etc/httpd/conf.d/ssl.conf Search the ssl.conf file for the SSLCertificateKeyFile location. # cat &lt;path to file&gt;/ssl.conf | grep -i SSLCertificateKeyFile Output: SSLCertificateKeyFile /etc/pki/tls/private/localhost.key Identify the correct permission set and owner/group of the certificate key file. # ls -laH /etc/pki/tls/private/localhost.key Output: -rw-------. 1 root root 1675 Sep 10 2020 /etc/pki/tls/private/localhost.key The permission set must be 600 or more restrictive and the owner/group of the key file must be accessible to only authenticated system administrator and the designated PKI Sponsor. If the correct permissions are not set or if the private key is accessible by unauthenticated or unauthorized users, this is a finding.

Fix: F-15498r881489_fix

Determine the location of the ssl.conf file: # find / -name ssl.conf Output: /etc/httpd/conf.d/ssl.conf Search the ssl.conf file for the SSLCertificateKeyFile location. # cat <path to file>/ssl.conf | grep -i SSLCertificateKeyFile Output: SSLCertificateKeyFile /etc/pki/tls/private/localhost.key Based on the " SSLCertificateKeyFile" directive path, configure the Apache web server to ensure only authenticated and authorized users can access the web server's private key. Permissions must be 600 or more restrictive.

b
Cookies exchanged between the Apache web server and client, such as session cookies, must have security settings that disallow cookie access outside the originating Apache web server and hosted application.
SC-23 - Medium - CCI-001664 - V-214288 - SV-214288r1211011_rule
RMF Control
SC-23
Severity
M
CCI
CCI-001664
Version
AS24-U2-000470
Vuln IDs
  • V-214288
  • V-92795
Rule IDs
  • SV-214288r1211011_rule
  • SV-102883
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.
Checks: C-15501r1211010_chk

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions, "apache2ctl -V" or "httpd -V" can also be used. Search for the Set-Cookie Header directive: # cat /&lt;path_to_file&gt;/httpd.conf | grep -i "Header.*Set-Cookie" If "HttpOnly" "secure" is not configured, this is a finding. "Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;secure" Review the code. If, when creating cookies, the following is not occurring, this is a finding: function setCookie() { document.cookie = "ALEPH_SESSION_ID = $SESS; path = /; secure"; }

Fix: F-15499r881492_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Add or configure the following line: "Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;secure" Add the "secure" attribute to the JavaScript set cookie in any application code: function setCookie() { document.cookie = "ALEPH_SESSION_ID = $SESS; path = /; secure"; } HttpOnly cannot be used since by definition this is a cookie set by JavaScript. Restart www_server and Apache.

b
The Apache web server must augment re-creation to a stable and known baseline.
SC-24 - Medium - CCI-001190 - V-214289 - SV-214289r961122_rule
RMF Control
SC-24
Severity
M
CCI
CCI-001190
Version
AS24-U2-000540
Vuln IDs
  • V-214289
  • V-92797
Rule IDs
  • SV-214289r961122_rule
  • SV-102885
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.
Checks: C-15502r277208_chk

Interview the System Administrator for the Apache web server. Ask for documentation on the disaster recovery methods tested and planned for the Apache web server in the event of the necessity for rollback. If documentation for a disaster recovery has not been established, this is a finding.

Fix: F-15500r277209_fix

Prepare documentation for disaster recovery methods for the Apache web server in the event of the necessity for rollback. Document and test the disaster recovery methods designed.

b
The Apache web server document directory must be in a separate partition from the Apache web servers system files.
SC-3 - Medium - CCI-001084 - V-214290 - SV-214290r961131_rule
RMF Control
SC-3
Severity
M
CCI
CCI-001084
Version
AS24-U2-000580
Vuln IDs
  • V-214290
  • V-92799
Rule IDs
  • SV-214290r961131_rule
  • SV-102887
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.
Checks: C-15503r277211_chk

Run the following command: grep "DocumentRoot"&lt;'INSTALL PATH'&gt;/conf/httpd.conf Note each location following the "DocumentRoot" string. This is the configured path to the document root directory(s). Use the command df -k to view each document root's partition setup. Compare that against the results for the operating system file systems and against the partition for the web server system files, which is the result of the command: df -k &lt;'INSTALL PATH'&gt;/bin If the document root path is on the same partition as the web server system files or the operating system file systems, this is a finding.

Fix: F-15501r277212_fix

Move the web document (normally "htdocs") directory to a separate partition other than the operating system root partition and the web server’s system files.

b
The Apache web server must display a default hosted application web page, not a directory listing, when a requested web page cannot be found.
SI-11 - Medium - CCI-001312 - V-214292 - SV-214292r961167_rule
RMF Control
SI-11
Severity
M
CCI
CCI-001312
Version
AS24-U2-000620
Vuln IDs
  • V-214292
  • V-92803
Rule IDs
  • SV-214292r961167_rule
  • SV-102891
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 Apache web server's directory structure by locating directories without default pages. In the scenario, the Apache 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.
Checks: C-15505r277217_chk

View the "DocumentRoot" value by entering the following command: awk '{print $1,$2,$3}' &lt;'INSTALL PATH'&gt;/conf/httpd.conf|grep -i DocumentRoot|grep -v '^#' Note each location following the "DocumentRoot" string. This is the configured path(s) to the document root directory(s). To view a list of the directories and subdirectories and the file "index.html", from each stated "DocumentRoot" location enter the following commands: find . -type d find . -type f -name index.html Review the results for each document root directory and its subdirectories. If a directory does not contain an "index.html" or equivalent default document, this is a finding.

Fix: F-15503r881497_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Add a default document to the applicable directories.

b
The Apache web server must set an inactive timeout for sessions.
SC-5 - Medium - CCI-002391 - V-214296 - SV-214296r1043182_rule
RMF Control
SC-5
Severity
M
CCI
CCI-002391
Version
AS24-U2-000660
Vuln IDs
  • V-214296
  • V-92811
Rule IDs
  • SV-214296r1043182_rule
  • SV-102899
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 Apache 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.
Checks: C-15509r277229_chk

In a command line, run "httpd -M | grep -i Reqtimeout_module". If the "Reqtimeout_module" is not enabled, this is a finding.

Fix: F-15507r881508_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Load the "Reqtimeout_module". Set the "RequestReadTimeout" directive.

b
The Apache web server must restrict inbound connections from nonsecure zones.
AC-23 - Medium - CCI-002344 - V-214297 - SV-214297r961278_rule
RMF Control
AC-23
Severity
M
CCI
CCI-002344
Version
AS24-U2-000680
Vuln IDs
  • V-214297
  • V-92815
Rule IDs
  • SV-214297r961278_rule
  • SV-102903
Remote access to the Apache 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 the internal web server access list, the Apache web server can stop or slow denial-of-service (DoS) attacks on the web server.
Checks: C-15510r881510_chk

If external controls such as host-based firewalls are used to restrict this access, this check is Not Applicable. Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used. Search for the "RequireAll" directive: # cat /&lt;path_to_file&gt;/httpd.conf | grep -i "RequireAll" If "RequireAll" is not configured or IP ranges configured to allow are not restrictive enough to prevent connections from nonsecure zones, this is a finding.

Fix: F-15508r277233_fix

Configure the "http.conf" file to include restrictions. Example: <RequireAll> Require not ip 192.168.205 Require not host phishers.example.com </RequireAll>

b
Non-privileged accounts on the hosting system must only access Apache web server security-relevant information and functions through a distinct administrative account.
AC-16 - Medium - CCI-002265 - V-214298 - SV-214298r961353_rule
RMF Control
AC-16
Severity
M
CCI
CCI-002265
Version
AS24-U2-000700
Vuln IDs
  • V-214298
  • V-92817
Rule IDs
  • SV-214298r961353_rule
  • SV-102905
By separating Apache web server security functions from non-privileged users, roles can be developed that can then be used to administer the Apache web server. Forcing users to change from a non-privileged account to a privileged account when operating on the Apache 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 Apache web server.
Checks: C-15511r277235_chk

Determine which tool or control file is used to control the configuration of the web server. If the control of the web server is done via control files, verify who has update access to them. If tools are being used to configure the web server, determine who has access to execute the tools. If accounts other than the System Administrator, Web Manager, or the Web Manager designees have access to the web administration tool or control files, this is a finding.

Fix: F-15509r277236_fix

Restrict access to the web administration tool to only the System Administrator, Web Manager, or the Web Manager designees.

b
The Apache web server must only accept client certificates issued by DOD PKI or DoD-approved PKI Certification Authorities (CAs).
SC-23 - Medium - CCI-002470 - V-214300 - SV-214300r1051295_rule
RMF Control
SC-23
Severity
M
CCI
CCI-002470
Version
AS24-U2-000810
Vuln IDs
  • V-214300
  • V-92821
Rule IDs
  • SV-214300r1051295_rule
  • SV-102909
Non-DOD approved PKIs have not been evaluated to ensure that they have security controls and identity vetting procedures in place that 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.
Checks: C-15513r1051293_chk

Verify the “ssl module” module is loaded: # httpd -M | grep -i ssl_module Output: ssl_module (shared) If the "ssl_module" is not found, this is a finding. Determine the location of the ssl.conf file: # find / -name ssl.conf Output: /etc/httpd/conf.d/ssl.conf Search the ssl.conf file for the following: # cat /etc/httpd/conf.d/ssl.conf | grep -i "SSLCACertificateFile" Output should be similar to: SSLCACertificateFile /etc/pki/tls/certs/ca-bundle.crt Review the path of the "SSLCACertificateFile" directive. Review the contents of &lt;'path of SSLCACertificateFile'&gt;\ca-bundle.crt. Examine the contents of this file to determine if the trusted CAs are DOD approved. If the trusted CA that is used to authenticate users to the website does not lead to an approved DOD CA, this is a finding. NOTE: There are non-DOD roots that must be on the server for it to function. Some applications, such as antivirus programs, require root CAs to function. DOD-approved certificate can include the External Certificate Authorities (ECA) if approved by the AO. The PKE InstallRoot 3.06 System Administrator Guide (SAG), dated 08 Jul 2008, contains a complete list of DOD, ECA, and IECA CAs.

Fix: F-15511r1051294_fix

Configure the web server's trust store to trust only DOD-approved PKIs (e.g., DOD PKI, DOD ECA, and DOD-approved external partners).

b
The Apache web server cookies, such as session cookies, sent to the client using SSL/TLS must not be compressed.
SC-12 - Medium - CCI-002448 - V-214301 - SV-214301r961632_rule
RMF Control
SC-12
Severity
M
CCI
CCI-002448
Version
AS24-U2-000870
Vuln IDs
  • V-214301
  • V-92831
Rule IDs
  • SV-214301r961632_rule
  • SV-102919
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. 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 Apache web server and the client when encrypted should not also be compressed.
Checks: C-15514r881514_chk

In a command line, run "httpd -M | grep -i ssl_module". If "ssl_module" is not listed, this is a finding. Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used. If the "SSLCompression" directive does not exist or is set to "on", this is a finding.

Fix: F-15512r881515_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Ensure the "SSLCompression" is added and looks like the following: SSLCompression off Restart Apache: apachectl restart

b
Cookies exchanged between the Apache web server and the client, such as session cookies, must have cookie properties set to force the encryption of cookies.
SC-12 - Medium - CCI-002448 - V-214303 - SV-214303r961632_rule
RMF Control
SC-12
Severity
M
CCI
CCI-002448
Version
AS24-U2-000890
Vuln IDs
  • V-214303
  • V-92835
Rule IDs
  • SV-214303r961632_rule
  • SV-102923
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.
Checks: C-15516r881519_chk

In a command line, run "httpd -M | grep -i session_cookie_module". If "session_cookie_module" is not listed, this is a finding. Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Note: The apachectl front end is the preferred method for locating the Apache httpd file. For some Linux distributions "apache2ctl -V" or "httpd -V" can also be used. Search for the "Session" and "SessionCookieName" directives: # cat /&lt;path_to_file&gt;/httpd.conf | grep -i "Session" # cat /&lt;path_to_file&gt;/httpd.conf | grep -i "SessionCookieName" If "Session" is not "on" and "SessionCookieName" does not contain "httpOnly" and "secure", this is a finding.

Fix: F-15514r881520_fix

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # apachectl -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Set "Session" to "on". Ensure the "SessionCookieName" directive includes "httpOnly" and "secure".

a
The Apache web server must prohibit or restrict the use of nonsecure or unnecessary ports, protocols, modules, and/or services.
CM-7 - Low - CCI-001762 - V-214304 - SV-214304r1211013_rule
RMF Control
CM-7
Severity
L
CCI
CCI-001762
Version
AS24-U2-000960
Vuln IDs
  • V-214304
  • V-92843
Rule IDs
  • SV-214304r1211013_rule
  • SV-102931
Web servers provide numerous processes, features, and functionalities that use 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 nonessential to the server mission, are too unsecure, or are prohibited by the Ports, Protocols, and Services Management (PPSM) Category Assurance List (CAL) and vulnerability assessments. Configuring the web server to implement organizationwide 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. Satisfies: SRG-APP-000516-WSR-000174, SRG-APP-000383-WSR-000175
Checks: C-15517r1211012_chk

Review the website to determine if HTTP and HTTPS are used in accordance with well-known ports (e.g., 80 and 443) or those ports and services as registered and approved for use by the DOD PPSM. Verify that any variation in PPS is documented, registered, and approved by the PPSM. If well-known ports and services are not approved for use by PPSM, this is a finding.

Fix: F-15515r277254_fix

Ensure the website enforces the use of IANA well-known ports for HTTP and HTTPS.