Apache Server 2.4 UNIX Server STIG Version Comparison

Apache Server 2.4 UNIX Server Security Technical Implementation Guide

Comparison

There are 7 differences between versions v2 r1 (Oct. 23, 2020) (the "left" version) and v2 r3 (July 23, 2021) (the "right" version).

Check AS24-U1-001000 was removed from the benchmark in the "right" version. The text below reflects the old wording.

This check's original form is available here.

Text Differences

Title

HTTP request methods must be limited.

Check Content

Determine the location of the "HTTPD_ROOT" directory and the "httpd.conf" file: # httpd -V | egrep -i 'httpd_root|server_config_file' -D HTTPD_ROOT="/etc/httpd" -D SERVER_CONFIG_FILE="conf/httpd.conf" Enter the following command into a command line: more <'INSTALLED PATH'>/conf/httpd.conf For every enabled "Directory" directive (except root), verify the following entry exists: <LimitExcept GET POST OPTIONS> Require all denied </LimitExcept> If the statement above is not found in the "LimitExcept" statement (i.e., <Directory />), this is a finding. If the statement above is found enabled but without the appropriate "LimitExcept" or "Order" statement, this is a finding. If the statement is not found inside an enabled "Directory" directive, this is a finding. NOTE: If the "LimitExcept" statement above is operationally limiting, this should be explicitly documented and approved by the ISSO, at which point this can be considered not a finding.

Discussion

The HTTP 1.1 protocol supports several request methods that are rarely used and potentially high risk. For example, methods such as PUT and DELETE are rarely used and should be disabled in keeping with the primary security principal of minimize features and options. Also, since the usage of these methods is typically to modify resources on the web server, they should be explicitly disallowed. Normal web server operation will typically require allowing only the GET, HEAD, and POST request methods. This will allow for downloading of web pages and submitting information to web forms. The OPTIONS request method will also be allowed as it is used to request which HTTP request methods are allowed.

Fix

Edit the "httpd.conf" file and add the following entries for every enabled "Directory" directive (except root). <LimitExcept GET POST OPTIONS> Require all denied </LimitExcept> Example: <Directory "/usr/local/apache2/cgi-bin"> . . . # Limit HTTP methods <LimitExcept GET POST OPTIONS> Require all denied </LimitExcept> </Directory>