Application Penetration Testing

Web Server TRACE Enabled

our services

Virtue Security found web servers with the TRACE and TRACK verbs enabled. These verbs are used for debugging purposes, but under some circumstances can be used to create Cross-site Scripting (XSS) vulnerabilities. Although this scenario is generally not exploitable with modern web browsers, it is still recommended these methods be disabled.

Below shows the TRACE method enabled:

$ nc 80  
TRACE /<script>alert('xss')</script> HTTP/1.0
HTTP/1.1 200 OK 
TRACE /<script>alert('xss')</script> HTTP/1.0

For more information on this attack, please reference the following URL:


The HTTP TRACE and TRACK methods have no use in production environments and can be safely disabled.

Disabling TRACE in Apache

For the following versions: 1.3.34 and up, 2.0.55 and up, 2.2., and 2.4.**

TRACE can be disabled in httpd.conf with the TraceEnable directive. This directive should be set to ‘off ‘ as shown below:

TraceEnable off

Disabling TRACE in APACHE prior to 1.3.34 and 2.0.55

Versions of Apache that do not support the TraceEnable directive should use rewrite rules to disable TRACE. Below shows an example rule:

RewriteEngine on
RewriteRule .* - [F]

Disabling TRACE in IIS

TRACE can be disabled in IIS with the UrlScan extension. In the UrlScan.ini configuration file ensure that TRACE exists in the DenyVerbs directive. For more information on UrlScan please reference the following URL:

  • Application
  • Network
  • Mobile
  • AWS