The Complete System Hardening Cheat Sheet
The Complete System Hardening Cheat Sheet
System Hardening
Cheat Sheet
If you haven’t yet established an organizational system
hardening routine, now is a good time to get started on it!
Important
Never attempt to establish or test hardening procedures on production systems without a field-proven hardening impact analysis
tool. Without such a tool, you will be forced to perform long hours of testing, or increase the risk of production downtime.
Hardening is relevant at almost every layer in your network. The following sections offer guidelines for hardening components
from the following layers:
Implement a "least functionality" approach, in which Enable account lockout on the local administrator
only functions that are essential to the server’s role account.
are authorized. For example: Do not install the IIS
server on a domain controller. Rename the local administrator account to something
other than “Administrator”.
Install the appropriate post-Service-Pack security
hotfixes. Enforce strong account and password policies for
the server.
Avoid installing applications on the server unless they
are absolutely necessary to the server’s function. For Do not allow users and administrators to share
example, don’t install e-mail clients, office productivity accounts.
tools, or utilities that are not strictly required for the
server to do its job. Disable FTP, SMTP, NNTP, and Telnet services if they
are not required.
Use two different network interfaces in the server -
one for the network and the other for administrative Install and configure URLScan.
traffic.
Authentication methods should be put in place for
Create a secure remote administration connection non-public sites and for sites that are only to be
for the server. accessed by internal users.
Harden the operating system and application layers Web server logs should be reviewed routinely for
(see below). suspicious activity. Any attempts to access unusual
URLs on the web server typically indicate an attempt
Consider using the server's built-in firewall facilities. to exploit problems in outdated or unpatched web
For Windows - the Windows firewall, for Linux – servers.
Iptables and AppArmor.
Domain Name Servers (DNS) translate the human-
Avoid the use of insecure protocols for processing friendly names for network destinations (such as a
requests, especially those that send information website URL) to the IP addresses that are understood
(such as passwords) in plain text. by routers and other network devices. Steps should
be taken to ensure that DNS software is updated
Keep backups of all your data and files. regularly and that all access to servers is authenticated
to prevent unauthorized zone transfers.
Secure separate partitions.
Access to the server may be prevented by blocking
When hosting multiple applications, make sure that port 53 or restricted by limiting access to the DNS
each application has its own dedicated accounts that server to one or more specified external systems.
are separate from the other applications.
Anonymous FTP accounts should be used with caution
Never provide write access to web content directories. and monitored regularly.
Remove administrative shares if not needed. In the case of authenticated FTP, it is essential that
Secure FTP be used so that login and password
Closely monitor failed login attempts. Lock accounts credentials are encrypted, rather than transmitted
after a specified number of failures. in plain text.
Apply vendor-provided patches in a timely manner Avoid installing and do not run network device
for all third-party applications. firmware versions that are no longer available from
the manufacturer.
For securing an IIS, the first step is to remove all
the sample files that are used when constructing Closely monitor the security bulletins applicable to
and testing web sites. These sample files cause applications and other software used.
vulnerabilities, and should never be present on a
production web server. Use cryptographic and checksum controls wherever
applicable.
Sample files and applications are stored in virtual and
physical directories. To remove IIS sample applications, Implement an Active Directory platform that allows
remove the virtual and physical directories in which a single login to multiple applications, data sources,
they are stored. For example, IIS samples are present in and systems.
the Virtual Directory of \IISS samples, and its location
is C:\Inetpub\IISsample. Implement advanced encryption and authentication
techniques that include public-key infrastructure (PKI)
The next step in securing IIS is to set up the appropriate methodologies and the Kerberos protocol.
permissions for the web server’s files and directories,
using Access Control Lists (ACLs).
Keep operating systems updated with the latest, File and File System Encryption – All disk partitions
most robust versions. Also, make sure that security should be formatted with a file system type that
patches and hotfixes are constantly being applied. offers encryption features (for example, NTFS in the
case of Windows).
Install the latest operating system Service Packs.
Secure separate partitions.