Server-Side Request Forgery (elmah)

Severity: High
Summary#

Invicti detected a Server-Side Request Forgery based on pattern matching and confirmed the vulnerability using specific ELMAH related requests.

Impact#

Server-Side Request Forgery allows an attacker to make local and/or remote network requests while masquerading as the target server.

Elmah is a powerful tool that helps developers debug and resolve problems in their applications. However, it is configured improperly on target website, and that allows attackers to gain information about requests and responses to the application. An attacker can obtain information such as:

  • Session cookies
  • Session state
  • Query string and post variables
  • Physical path of the requested file
This means that the attacker can hijack any active user's session by using their session details.
Remediation#
Apply the following changes in your web.config file to disable remote access to the Elmah.axd error log:
<elmah>
     <security allowRemoteAccess="no"/>
</elmah>
You can also use ASP.NET's own authorization mechanism to protect your Elmah.axd error log from attackers. The following configuration makes your Elmah.axd error log viewable by only authorized Administrators:
<configuration>
  <location path="elmah.axd">
    <system.web>
      <authorization>
        <allow roles="Administrators"/>
        <deny users="*"/>
      </authorization>
    </system.web>
  </location>
</configuration>

Build your resistance to threats. And save hundreds of hours each month.

Get a demo See how it works