27.01.2014 Views

NIST 800-44 Version 2 Guidelines on Securing Public Web Servers

NIST 800-44 Version 2 Guidelines on Securing Public Web Servers

NIST 800-44 Version 2 Guidelines on Securing Public Web Servers

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

GUIDELINES ON SECURING PUBLIC WEB SERVERS<br />

Installing <strong>Web</strong> c<strong>on</strong>tent <strong>on</strong> a different hard drive or logical partiti<strong>on</strong> than the OS and <strong>Web</strong> server<br />

applicati<strong>on</strong>.<br />

Placing a limit <strong>on</strong> the amount of hard drive space that is dedicated for uploads, if uploads to the <strong>Web</strong><br />

server are allowed. Ideally, uploads should be placed <strong>on</strong> a separate partiti<strong>on</strong> to provide str<strong>on</strong>ger<br />

assurance that the hard drive limit cannot be exceeded.<br />

If uploads are allowed to the <strong>Web</strong> server, ensuring that these files are not readable by the <strong>Web</strong> server<br />

until after some automated or manual review process is used to screen them. This measure prevents<br />

the <strong>Web</strong> server from being used to propagate malware or traffic pirated software, attack tools,<br />

pornography, etc. It is also possible to limit the size of each uploaded file, which could limit the<br />

potential effects of a DoS attack involving uploading many large files.<br />

Ensuring that log files are stored in a locati<strong>on</strong> that is sized appropriately. Ideally, log files should be<br />

stored <strong>on</strong> a separate partiti<strong>on</strong>. If an attack causes the size of the log files to increase bey<strong>on</strong>d<br />

acceptable limits, a physical partiti<strong>on</strong> helps ensure the <strong>Web</strong> server has enough resources to handle the<br />

situati<strong>on</strong> appropriately.<br />

C<strong>on</strong>figuring the maximum number of <strong>Web</strong> server processes and/or network c<strong>on</strong>necti<strong>on</strong>s that the <strong>Web</strong><br />

server should allow.<br />

To some degree, these acti<strong>on</strong>s protect against attacks that attempt to fill the file system <strong>on</strong> the <strong>Web</strong> server<br />

host OS with extraneous and incorrect informati<strong>on</strong> that may cause the system to crash. Logging<br />

informati<strong>on</strong> generated by the <strong>Web</strong> server host OS may help in recognizing such attacks. As discussed in<br />

Secti<strong>on</strong> 9.1, administrators should store <strong>Web</strong> server logs <strong>on</strong> centralized logging servers whenever possible<br />

and also store logs locally if feasible. If an attack causes the <strong>Web</strong> server to be compromised, the attacker<br />

could modify or erase locally stored logs to c<strong>on</strong>ceal informati<strong>on</strong> <strong>on</strong> the attack. Maintaining a copy of the<br />

logs <strong>on</strong> a centralized logging server gives administrators more informati<strong>on</strong> to use when investigating such<br />

a compromise.<br />

In additi<strong>on</strong> to the c<strong>on</strong>trols menti<strong>on</strong>ed above, it is often necessary to c<strong>on</strong>figure timeouts and other c<strong>on</strong>trols<br />

to further reduce the impact of certain DoS attacks. One type of DoS attack takes advantage of the<br />

practical limits <strong>on</strong> simultaneous network c<strong>on</strong>necti<strong>on</strong>s by quickly establishing c<strong>on</strong>necti<strong>on</strong>s up to the<br />

maximum permitted, such that no new legitimate users can gain access. By setting network c<strong>on</strong>necti<strong>on</strong><br />

timeouts (the time after which an inactive c<strong>on</strong>necti<strong>on</strong> is dropped) to a minimum acceptable time limit,<br />

established c<strong>on</strong>necti<strong>on</strong>s will time out as quickly as possible, opening up new c<strong>on</strong>necti<strong>on</strong>s to legitimate<br />

users. This measure <strong>on</strong>ly mitigates the effects; it does not defeat the attack.<br />

If the maximum number of open c<strong>on</strong>necti<strong>on</strong>s (or c<strong>on</strong>necti<strong>on</strong>s that are half-open—that is, the first part of<br />

the TCP handshake was successful) is set to a low number, an attacker can easily c<strong>on</strong>sume the available<br />

c<strong>on</strong>necti<strong>on</strong>s with illegitimate requests (often called a SYN flood). Setting the maximum to a much higher<br />

number may mitigate the effect of such an attack, but at the expense of c<strong>on</strong>suming additi<strong>on</strong>al resources.<br />

Note that this is <strong>on</strong>ly an issue for <strong>Web</strong> servers that are not protected by a firewall that stops SYN flood<br />

attacks. Most enterprise-level firewalls protect <strong>Web</strong> servers from SYN floods by intercepting them<br />

before they reach the <strong>Web</strong> servers.<br />

5.2.2 C<strong>on</strong>figuring Secure <strong>Web</strong> C<strong>on</strong>tent Directory<br />

Do not use links, aliases, or shortcuts in the public <strong>Web</strong> c<strong>on</strong>tent file directory tree that point to directories<br />

or files elsewhere <strong>on</strong> the server host or the network file system. If possible, disable the ability of the <strong>Web</strong><br />

5-4

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!