Vulnerability Discussion
Controlling what a user of a hosted application can access is part of the security posture of the web server. Any time a user can access more functionality than is needed for the operation of the hosted application poses a security issue. A user with too much access can view information that is not needed for the user's job role, or the user could use the function in an unintentional manner.
A MIME tells the web server the type of program, various file types, and extensions and what external utilities or programs are needed to execute the file type.
A shell is a program that serves as the basic interface between the user and the operating system to ensure hosted application users do not have access to these programs. Shell programs may execute shell escapes and can perform unauthorized activities that could damage the security posture of the web server.
Check
Open the IIS 10.0 Manager.
Click the IIS 10.0 web server name.
Under IIS, double-click the "MIME Types" icon.
From the "Group by:" drop-down list, select "Content Type".
From the list of extensions under "Application", verify MIME types for OS shell program extensions have been removed, to include at a minimum, the following extensions:
.exe
.dll
.com
.bat
.csh
If any OS shell MIME types are configured, this is a finding.
Fix
Open the IIS 10.0 Manager.
Click the IIS 10.0 web server name.
Under IIS, double-click the "MIME Types" icon.
From the "Group by:" drop-down list, select "Content Type".
From the list of extensions under "Application", remove MIME types for OS shell program extensions, to include at a minimum, the following extensions:
.exe
.dll
.com
.bat
.csh
Under the "Actions" pane, click "Apply".