Application Pool Security

On a shared server that hosts multiple applications, it is essential to include isolation between the application pools to ensure that a site infected with malicious code cannot harm the other sites, or, if one site is hacked, that the hacker's access is limited by ensuring that he or she cannot affect the other sites on the server. There are a few security considerations for managing your application pools.

Application Pool Configuration Isolation

One security consideration with application pools is that the w3wp.exe worker process has to be able to read the IIS configuration data to be able to function properly. It has to know the IIS settings specific to all websites that it serves. This means that it has to have Read access to the vast majority of applicationHost.config settings. The issue is that if each application pool can read the entire configuration file, it exposes all the information to all the application pools. Therefore, it is essential that each application pool does not have Read or Write permissions to the entire applicationHost.config file; otherwise, the wrong person could gain access to sensitive information such as site anonymous user passwords or application pool passwords.

To get around this, the IIS development team came up with a method to allow the w3wp.exe worker process to read all the information pertinent to its needs, without having access to the information for any other application data or sensitive global settings. The ...

Get Professional Microsoft IIS 8 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.