5.4 Ensure Default HTML Content Is Removed
Profile Applicability
Description
Apache installations have default content that is not needed or appropriate for production use. The primary function for this sample content is to provide a default web site, provide user manuals or to demonstrate special features of the web server. All content that is not needed should be removed.
Rationale
Historically these sample content and features have been remotely exploited and can provide different levels of access to the server. In the Microsoft arena, Code Red exploited a problem with the index service provided by the Internet Information Service. Usually these routines are not written for production use and consequently little thought was given to security in their development.
Audit
Perform the following to determine if the recommended state is implemented:
- Verify the document root directory and the configuration files do not provide for default
index.html or welcome page.
- Ensure the Apache User Manual content is not installed by checking the configuration files for manual location directives.
- Verify the Apache configuration files do not have the Server Status handler configured.
- Verify that the Server Information handler is not configured.
- Verify that any other handler configurations such as
perl-status is not enabled.
Remediation
Review all pre-installed content and remove content which is not required. In particular look for the unnecessary content which may be found in the document root directory, a configuration directory such as conf/extra directory, or as a Unix/Linux package.
- Remove the default index.html or welcome page if it is a separate package. If it is part of main Apache
httpd package such as on Red Hat Linux, then comment out the configuration as shown below. Removing a file such as the welcome.conf, is not recommended as it may get replaced if the package is updated.
#
# This configuration file enables the default "Welcome"
# page if there is no default index page present for
# the root URL. To disable the Welcome page, comment
# out all the lines below.
#
## <LocationMatch "^/+$"\>
## Options -Indexes
## ErrorDocument 403 /error/noindex.html
## </LocationMatch\>
- Remove the Apache user manual content or comment out configurations referencing the manual
- Remove or comment out any Server Status handler configuration.
#
# Allow server status reports generated by mod_status,
# with the URL of http://servername/server-status
# Change the ".example.com" to match your domain to enable.
#
## <Location /server-status\>
## SetHandler server-status
## Order deny,allow
## Deny from all
## Allow from .example.com
## </Location\>
- Remove or comment out any Server Information handler configuration.
#
# Allow remote server configuration reports, with the URL of
# http://servername/server-info (requires that mod_info.c be loaded).
# Change the ".example.com" to match your domain to enable.
#
## <Location /server-info\>
## SetHandler server-info
## Order deny,allow
## Deny from all
## Allow from .example.com
## </Location\>
- Remove or comment out any other handler configuration such as perl-status.
# This will allow remote server configuration reports, with the URL of
# http://servername/perl-status
# Change the ".example.com" to match your domain to enable.
#
## <Location /perl-status\>
## SetHandler perl-script
## PerlResponseHandler Apache2::Status
## Order deny,allow
## Deny from all
## Allow from .example.com
## </Location\>
Default Value
The default source build provides extra content available in the /usr/local/apache2/conf/extra/ directory, but the configuration of most of the extra content is commented out by default. In particular, the include of conf/extra/proxy-html.conf is not commented out in the httpd.conf.
Also, the only other default content is a minimal barebones index.html in the document root which contains.
<html>
<body>
<h1>It works!</h1>
</body>
</html>
CIS Controls
Controls Version: v8
- 9.4 Restrict Unnecessary or Unauthorized Browser and Email Client Extensions
- Restrict, either through uninstalling or disabling, any unauthorized or unnecessary browser or email client plugins, extensions, and add-on applications.
- IG 2: •
- IG 3: •
Controls Version: v7
- 7.2 Disable Unnecessary or Unauthorized Browser or Email Client Plugins
- Uninstall or disable any unauthorized browser or email client plugins or add-on applications.
- IG 2: •
- IG 3: •
Profile