APACHE SITE 2.0 for Windows
Pick two releases to diff their requirements.
Open a previous version of this STIG.
- RMF Control
- Severity
- M
- CCI
- Version
- WG210 W22
- Vuln IDs
-
- V-2226
- Rule IDs
-
- SV-33109r1_rule
Checks: C-33770r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directives: DocumentRoot & ServerRoot Note the location following each enabled DocumentRoot and ServerRoot directives. Navigate to the DocumentRoot, and ServerRoot, using the path identified above. Right click on the directory to be examined. Select Properties > Select the “Sharing” tab. If either folder is shared, this is a finding. NOTE: The presence of operating system shares on the web server is not an issue as long as the shares are not part of the web content directories. The use of shares to move content from one environment to another is permitted if the following conditions are met: they are approved by the IAM/IAO, the shares are restricted to only allow administrators write access, the use of the shares does not bypass the sites approval process for posting new content to the web server, and developers are only permitted read access to these directories.
Fix: F-29407r1_fix
Remove the shares from the applicable directories.
- RMF Control
- Severity
- M
- CCI
- Version
- WG400 W22
- Vuln IDs
-
- V-2228
- Rule IDs
-
- SV-36644r1_rule
Checks: C-35736r1_chk
To preclude access to the servers root directory, ensure the following directive is in the httpd.conf file. This entry will also stop users from setting up .htaccess files which can override security features configured in httpd.conf. <DIRECTORY /[website root dir]> AllowOverride None </DIRECTORY> If the AllowOverride None is not set, this is a finding.
Fix: F-30977r1_fix
Enter the statement above into httpd.conf file for all web site root directories.
- RMF Control
- Severity
- M
- CCI
- Version
- WG410 W22
- Vuln IDs
-
- V-2229
- Rule IDs
-
- SV-28849r2_rule
Checks: C-35739r1_chk
Query the SA to determine if CGI scripts are used as part of the web site. If interactive scripts are being used, check the permissions of these files to ensure they meet the following permissions: interactive script files Administrators Full Control WebManagers Modify System Read/Execute Webserver Account Read/Execute If the interactive scripts do not meet the above permissions or are less restrictive, this is a finding.
Fix: F-30980r1_fix
Ensure the CGI scripts are owned by root, the service account running the web service, the web author or the SA, and that the anonymous web user account has Read Only or Read - Execute permissions to such scripts.
- RMF Control
- Severity
- M
- CCI
- Version
- WG110 W22
- Vuln IDs
-
- V-2240
- Rule IDs
-
- SV-33105r1_rule
Checks: C-33766r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directive: MaxKeepAliveRequests Every enabled MaxKeepAliveRequests value needs to be 100 or greater. If any directive is less than 100, this is a finding.
Fix: F-29403r1_fix
Set the MaxKeepAliveRequests directive to 100 or greater.
- RMF Control
- Severity
- L
- CCI
- Version
- WG170 W22
- Vuln IDs
-
- V-2245
- Rule IDs
-
- SV-33107r1_rule
Checks: C-33768r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directive: DocumentRoot Note the name of the DocumentRoot directory. 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-29405r1_fix
Add a default document to the applicable directories.
- RMF Control
- Severity
- H
- CCI
- Version
- WG230 W22
- Vuln IDs
-
- V-2249
- Rule IDs
-
- SV-33110r1_rule
Checks: C-33771r1_chk
If web administration is performed at the console, this check is N/A. If web administration is performed remotely the following checks will apply: 1. If administration of the server is performed remotely, it will only be performed securely by system administrators. 2. If web site administration or web application administration has been delegated, those users will be documented and approved by the IAO. 3. Remote administration must be in compliance with any requirements contained within the Windows Server STIGs, and any applicable network STIGs. 4. Remote administration of any kind will be restricted to documented and authorized personnel. 5. All users performing remote administration must be authenticated. 6. All remote sessions will be encrypted and they will utilize TLS 1.0. Review with site management how remote administration, if applicable, is configured on the web site. If remote management meets the criteria listed above, this is not a finding. If remote management is utilized and does not meet the criteria listed above, this is a finding.
Fix: F-29408r1_fix
Ensure the web server administration is only performed over a secure path.
- RMF Control
- Severity
- M
- CCI
- Version
- WG240 W20
- Vuln IDs
-
- V-2250
- Rule IDs
-
- SV-36668r1_rule
Checks: C-35750r1_chk
Open the httpd.conf file. Search for a commented LoadModule log_config_module directive statement. If this statement is found commented, this is a finding.
Fix: F-30993r1_fix
Uncomment the LoadModule log_config_module statement and restart the Apache service.
- RMF Control
- Severity
- M
- CCI
- Version
- WG250 W22
- Vuln IDs
-
- V-2252
- Rule IDs
-
- SV-33135r1_rule
Checks: C-33787r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as Notepad, and search for the following uncommented directives: ErrorLog & CustomLog Navigate to the location of the file specified after each enabled ErrorLog & CustomLog directive and verify the permissions assigned to these files. Right click on the file to be examined. Select Properties > Select the “Security” tab. Permissions greater than Read & Execute should be allowed for only the account assigned to the Apache server service, and the Auditors Group. If the SA, Web Manager or users other than the Auditors group have greater than read access to the log files, this is a finding. If anyone other than the Auditors, Administrators, Web Managers, or the account assigned to the Apache server service has access to the log files, this is a finding.
Fix: F-29431r1_fix
Remove the unauthorized permissions from the applicable accounts.
- RMF Control
- Severity
- M
- CCI
- Version
- WG260 W22
- Vuln IDs
-
- V-2254
- Rule IDs
-
- SV-33134r1_rule
Checks: C-33786r1_chk
Query the IAO, the SA, and the web administrator to find out if development web sites are being housed on production web servers. Definition: A production web server is any web server connected to a production network, regardless of its role. Proposed Questions: Do you have development sites on your production web server? What is your process to get development web sites / content posted to the production server? Do you use under construction notices on production web pages? The reviewer can also do a manual check or perform a navigation of the web site via a browser to confirm the information provided from interviewing the web staff. Graphics or texts which proclaim Under Construction or Under Development are frequently used to mark folders or directories in that status. If Under Construction or Under Development web content is discovered on the production web server, this is a finding.
Fix: F-29430r1_fix
The presences of portions of the web site that proclaim Under Construction or Under Development are clear indications that a production web server is being used for development. The web administrator will ensure that all pages that are in development are not installed on a production web server.
- RMF Control
- Severity
- H
- CCI
- Version
- WG290 W22
- Vuln IDs
-
- V-2258
- Rule IDs
-
- SV-33136r1_rule
Checks: C-33788r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as Notepad, and search for the following uncommented directives: DocumentRoot, Alias, ScriptAlias, & ScriptAliasMatch Navigate to the locations specified after each enabled DocumentRoot, Alias, ScriptAlias, & ScriptAliasMatch directives. Right click on the file or directory to be examined. Select Properties. Select the “Security” tab. The only accounts listed should be the web administrator, developers, and the account assigned to run the apache server service. If accounts that do not need access to these directories are listed, this is a finding. If the permissions assigned to the Apache web server service are greater than Read for locations associated with the DocumentRoot and Alias directives, this is a finding. If the permissions assigned to the Apache web server service are greater than Read & Execute for locations associated with ScriptAlias and ScriptAliasMatch, this is a finding.
Fix: F-29432r1_fix
Assign the appropriate permissions to the applicable directories and files.
- RMF Control
- Severity
- M
- CCI
- Version
- WG350 W22
- Vuln IDs
-
- V-2263
- Rule IDs
-
- SV-33141r1_rule
Checks: C-33793r1_chk
Open browser window and browse to the appropriate site. Before entry to the site, you should be presented with the server's DoD PKI credentials. Review these credentials for authenticity. Find an entry which cites: Issuer: CN = DOD CLASS 3 CA-3 OU = PKI OU = DoD O = U.S. Government C = US If the server is running as a public web server, this finding should be Not Applicable. NOTE: In some cases, the web servers are configured in an environment to support load balancing. This configuration most likely utilizes a content switch to control traffic to the various web servers. In this situation, the SSL certificate for the web sites may be installed on the content switch vs. the individual web sites. This solution is acceptable as long as the web servers are isolated from the general population LAN. Users should not have the ability to bypass the content switch to access the web sites.
Fix: F-29437r1_fix
Configure the private web site to use a valid DoD certificate.
- RMF Control
- Severity
- L
- CCI
- Version
- WG490 W22
- Vuln IDs
-
- V-2265
- Rule IDs
-
- SV-33143r1_rule
Checks: C-33794r1_chk
Search the web content and scripts directories (found in check WG290) for .java and .jpp files. If either file type is found, this is a finding. Note: Executables such as java.exe, jre.exe, and jrew.exe are permitted.
Fix: F-29438r1_fix
Remove the appropriate files from the web server.
- RMF Control
- Severity
- M
- CCI
- Version
- WG430 W22
- Vuln IDs
-
- V-2270
- Rule IDs
-
- SV-36714r1_rule
Checks: C-35793r1_chk
Locate the directories containing the CGI scripts. These directories should be language-specific (e.g., PERL, ASP, JS, JSP, etc.). Right-click on the web content directory and the related CGI directories. On the Properties tab, examine the access rights for the CGI, cgi-bin, or cgi-shl directories. Anonymous FTP users must not have access to these directories. If the CGI, the cgi-bin, or the cgi-shl directories can be accessed by any group that does not require access, this is a finding.
Fix: F-31033r1_fix
If the CGI, the cgi-bin, or the cgi-shl directories can be accessed via FTP by any group or user that does not require access, remove permissions to such directories for all but the web administrators and the SAs. Ensure that any such access employs an encrypted connection.
- RMF Control
- Severity
- M
- CCI
- Version
- WG460 W22
- Vuln IDs
-
- V-2272
- Rule IDs
-
- SV-33144r1_rule
Checks: C-33795r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as Notepad, and search for the following uncommented directive: ScriptInterpreterSource For any enabled ScriptInterpreterSource directives the only authorized entries are Registry-Strict or Script. If any other entry (i.e. Registry) is found, this is a finding. For all enabled ScriptInterpreterSource directives set to Registry-Strict: open regedit then Navigate to the following location: HKEY_CLASSES_ROOT\.pl\Shell\ExecCGI\Command\(Default) => C:\Perl\bin\perl.exe –T (This entry should specify the location of the Perl.exe file). If this entry is not found, this is a finding. For all enabled ScriptInterpreterSource directive set to Script: Search the system for all files ending with “.pl”. Open all files found with a text editor and ensure the following entry is found - #![Drive Letter]:/[Path to Perl install directory]/bin/perl.exe –T. If this entry is not found, this is a finding. NOTE: This applies to PERL scripts that are used as part of the web server and not all PERL scripts that are on the system. NOTE: If the mod_perl module is installed, and the directive “PerlTaintCheck on” is entered in the httpd.conf, this satisfies the requirement.
Fix: F-29439r1_fix
Adjust the PERL scripts or the registry to include the appropriate comments.
- RMF Control
- Severity
- M
- CCI
- Version
- WG205 W22
- Vuln IDs
-
- V-3333
- Rule IDs
-
- SV-33108r1_rule
Checks: C-33769r1_chk
Verify that installation directories for Apache HTTP server are located on another partition, other than the OS partition. Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directives: DocumentRoot, ErrorLog, CustomLog Note the location specified for each of the directives. If the path for any of the directives is on the same partition as the web server operating system files, this is a finding.
Fix: F-29406r1_fix
Move the web server system files including the web document root (home) and log directories to a separate partition, other than the OS partition.
- RMF Control
- Severity
- L
- CCI
- Version
- WG265 W22
- Vuln IDs
-
- V-6373
- Rule IDs
-
- SV-33137r1_rule
Checks: C-33789r1_chk
Query the IAO, the SA, and the web administrator to ensure the proper consent banner is being used in accordance with DTM-08-060. Navigation to the web site via a browser can be used to confirm the information provided from interviewing the web staff. The following banner page must be in place: 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. OK [B. For Blackberries and other PDAs/PEDs with severe character limitations:] I've read & consent to terms in IS user agreem't. If the access-controlled web site does not display this banner page in accordance with DTM-08-060 before entry, this is a finding.
Fix: F-29433r1_fix
Configure a DoD private web site to display the required DoD banner page in accordance with DTM-08-060.
- RMF Control
- Severity
- M
- CCI
- Version
- WG140 W22
- Vuln IDs
-
- V-6531
- Rule IDs
-
- SV-33106r1_rule
Checks: C-33767r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directive: SSLVerifyClient If SSLVerifyClient is not set to “require” this is a finding as the client is not required to present a valid certificate.
Fix: F-29404r1_fix
Set the SSLVerifyClient directive to "require".
- RMF Control
- Severity
- H
- CCI
- Version
- WG235 W22
- Vuln IDs
-
- V-13686
- Rule IDs
-
- SV-33131r1_rule
Checks: C-33783r1_chk
Query the SA to determine if there is a process for the uploading of files to the web site. This process should include the requirement for the use of a secure encrypted logon and secure encrypted connection. If the remote users are uploading files without utilizing approved encryption methods, this is a finding.
Fix: F-29426r1_fix
Use only secure encrypted logons and connections for uploading files to the web site.
- RMF Control
- Severity
- M
- CCI
- Version
- WG242 W22
- Vuln IDs
-
- V-13688
- Rule IDs
-
- SV-28654r2_rule
Checks: C-35801r1_chk
To verify the log settings: Default Windows location: :\Program Files\Apache Group\Apache2\logs\access.log or :\Program Files\Apache Software Foundation\Apache2.2\logs\access.log. If these directories do not exist, you can search the web server for the httpd.conf config file to determine the location of the logs. Items to be logged are as shown in this sample line in the httpd.conf file: LogFormat "%a %A %h %H %l %m %s %t %u %U \"%{Referer}i\" " combined If the web server is not configured to capture the required audit events for all sites and virtual directories, this is a finding.
Fix: F-13116r2_fix
Configure the web server to ensure the log file data includes the required data elements.
- RMF Control
- Severity
- M
- CCI
- Version
- WG255 W22
- Vuln IDs
-
- V-13689
- Rule IDs
-
- SV-36724r1_rule
Checks: C-35802r1_chk
Determine permissions for log files Find the httpd.conf configuration file to determine the location of the log files. The location is indicated at the "ServerRoot" directive. The log directory is a sub-directory under the ServerRoot. ex. :\Apache Group\Apache2\logs or :\Apache Software Foundation\Apache2.2\logs After locating the logs, use the Explorer to move to these files and examine their properties: Properties >> Security >> Permissions. Administrators: Read Auditors: Full Control Web Managers: Read WebServer Account: Read/Write/Execute If anyone other than the Auditors, Administrators, Web Managers, or the account that runs the web server has access to the log files, this is a finding.
Fix: F-31043r1_fix
To ensure the integrity of the data that is being captured in the log files, ensure that only the members of the Auditors group, Administrators, and the user assigned to run the web server software is granted permissions to read the log files.
- RMF Control
- Severity
- M
- CCI
- Version
- WG342 W20
- Vuln IDs
-
- V-13694
- Rule IDs
-
- SV-36729r1_rule
Checks: C-35808r1_chk
Open the httpd.conf file. Search for an uncommented LoadModule ssl_module directive statement. If this statement is found commented (i.e. disabled), this is a finding. Search the httpd.conf file for the following uncommented directives: SSLProtocol & SSLEngine For all enabled SSLProtocol directives ensure they are set to “TLSv1”. If the SSLProtocol directive is not set to TLSv1, this is a finding. For all enabled SSLEngine directives ensure they are set to “on”. Both the SSLProtocol and SSLEngine directives must be set correctly or this is a finding NOTE: In some cases web servers are configured in an environment to support load balancing. This configuration most likely utilizes a content switch to control traffic to the various web servers. In this situation, the TLS certificate for the web sites may be installed on the content switch versus the individual web sites. This solution is acceptable as long as the web servers are isolated from the general population LAN. We do not want users to have the ability to bypass the content switch to access the web sites.
Fix: F-31049r1_fix
Edit the httpd.conf file to load the ssl_module; set the SSLProtocol to TLSv1; and set the SSLEngine to On.
- RMF Control
- Severity
- L
- CCI
- Version
- WG610 W22
- Vuln IDs
-
- V-15334
- Rule IDs
-
- SV-34016r1_rule
Checks: C-35811r1_chk
Review the web site 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. Any variation in PPS will be documented, registered, and approved by the PPSM. If not, this is a finding.
Fix: F-31052r1_fix
Ensure the web site enforces the use of IANA well-known ports for HTTP and HTTPS.
- RMF Control
- Severity
- M
- CCI
- Version
- WA00605 W22
- Vuln IDs
-
- V-26279
- Rule IDs
-
- SV-33147r1_rule
Checks: C-33799r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directives: ErrorLog This directive specifies the name and location of the error log, if not found, this is a finding. Note: This check is applicable to every host and virtual host the web server is supporting.
Fix: F-29442r1_fix
Edit the httpd.conf file and enter the name and path to the ErrorLog.
- RMF Control
- Severity
- M
- CCI
- Version
- WA00612 W22
- Vuln IDs
-
- V-26280
- Rule IDs
-
- SV-33149r1_rule
Checks: C-33800r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directive: LogFormat The minimum items to be logged are as shown in the sample below: LogFormat "%a %A %h %H %l %m %s %t %u %U \"%{Referer}i\"" combined Verify the information following the LogFormat directive meets or exceeds the minimum requirement above. If any LogFormat directive does not meet this requirement, this is a finding.
Fix: F-29443r1_fix
Edit the configuration file/s and add LogFormat "%a %A %h %H %l %m %s %t %u %U \"%{Referer}i\"" combined
- RMF Control
- Severity
- M
- CCI
- Version
- WA00615 W22
- Vuln IDs
-
- V-26281
- Rule IDs
-
- SV-33151r1_rule
Checks: C-33801r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as Notepad, and search for the following uncommented directives: CustomLog If any enabled CustomLog are not set to logs/access_log combined, this is a finding. Note: This check is applicable to every host and virtual host the web server is supporting.
Fix: F-29381r1_fix
Edit the httpd.conf file and enter the name, path and level for the CustomLog.
- RMF Control
- Severity
- M
- CCI
- Version
- WA00620 W22
- Vuln IDs
-
- V-26282
- Rule IDs
-
- SV-33153r1_rule
Checks: C-33802r1_chk
Locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as notepad, and search for the following uncommented directives: LogLevel All enabled LogLevel directives should be set to a minimum of “warn”, if not, this is a finding. Note: If LogLevel is set to error, crit, alert, or emerg which are higher thresholds this is not a finding.
Fix: F-29446r1_fix
Edit the httpd.conf file and add the value LogLevel warn.
- RMF Control
- Severity
- M
- CCI
- Version
- WG310 W22
- Vuln IDs
-
- V-2260
- Rule IDs
-
- SV-28798r2_rule
Checks: C-35765r1_chk
Note: Additional restrictions can be stated in the robots.txt file. The below example will disallow access to all directories in the document root directory. If the robots.txt doesn’t have “User-agent” or “Disallow” statements set, this is a finding. Query the Web Administrator to determine what type of restriction from public search engines is in place. If robots.txt files are used, locate the Apache httpd.conf file. If unable to locate the file, perform a search of the system to find the location of the file. Open the httpd.conf file with an editor such as Notepad, and search for the following uncommented directives: DocumentRoot & Alias Navigate to the location(s) specified in the Include statement(s), and review each file for the following uncommented directives: DocumentRoot & Alias At the top level of the directories identified after the enabled DocumentRoot & Alias directives, a “robots.txt” file should exist. If the file does not exist, this is a finding. For any robots.txt files that do exist, open them in a text editor (i.e. notepad) and ensure they contain the following text: User-agent: * Disallow: / If no means of restriction is in place (e.g. userid and password, domain or IP restriction, PKI), or a robots.txt file is not in use, this is finding.
Fix: F-29434r1_fix
Establish a means to restrict search engines on the private web site.
- RMF Control
- Severity
- M
- CCI
- Version
- WG340 W20
- Vuln IDs
-
- V-2262
- Rule IDs
-
- SV-36740r1_rule
Checks: C-35818r1_chk
Open the httpd.conf file. Search for an uncommented LoadModule ssl_module directive statement. If this statement is found commented, this is a finding. After determining that the ssl module is active search for the following uncommented directives: SSLProtocol & SSLEngine For all enabled SSLProtocol directives ensure they are set to “TLSv1”. If the SSLProtocol directive is not set to TLSv1, this is a finding. For all enabled SSLEngine directives ensure they are set to “on”. Both the SSLProtocol and SSLEngine directives must be set correctly or this is a finding. NOTE: In some cases web servers are configured in an environment to support load balancing. This configuration most likely utilizes a content switch to control traffic to the various web servers. In this situation, the TLS certificate for the web sites may be installed on the content switch vs, the individual web sites. This solution is acceptable as long as the web servers are isolated from the general population LAN. We do not want users to have the ability to bypass the content switch to access the web sites.
Fix: F-31059r1_fix
Edit the httpd.conf file to load the ssl_module; set the SSLProtocol to TLSv1; and set the SSLEngine to On.