Caso A: diretiva TRACE
Usando o comando "traceEnable on" no arquivo httpd.conf e executando o seguinte comando curl:
SITE=http://www.server.my
; curl $SITE -X TRACE
A resposta é:
TRACE / HTTP/1.1 User-Agent: curl/7.29.0 Host: http://www.server.my Accept: */*
Por outro lado, se "traceEnable off" o comando anterior curl retornar:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /
on this server.</p>
<hr>
<address>Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.7d DAV/2 Server at http://www.server.my Port 80</address>
</body></html>
, o que significa que a diretiva TRACE enable está desativada. Então, acho que o comando "traceEnable off" está funcionando corretamente.
Caso B: diretiva TRACK
Usando o comando "traceEnable on" no arquivo httpd.conf e executando o seguinte comando curl:
SITE=http://www.server.my
; curl $SITE -X TRACK
A resposta é:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>501 Method Not Implemented</title>
</head><body>
<h1>Method Not Implemented</h1>
<p>TRACK to / not supported.<br />
</p>
<hr>
<address>Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.7d DAV/2 Server at http://www.server.my Port 80</address>
</body></html>
Aqui está a conclusão do testcase anterior: 501 Method Not Implemented . Se você enviar uma solicitação TRACE para o Apache, ele retornará que este método não está implementado. Então, acho que não precisamos nos preocupar ... Isso é confirmado pelo próximo teste.
Se "traceEnable off", a solicitação TRACK anterior retorna a mesma mensagem "não implementada".
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>501 Method Not Implemented</title>
</head><body>
<h1>Method Not Implemented</h1>
<p>TRACK to / not supported.<br />
</p>
<hr>
<address>Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.7d DAV/2 Server at http://www.server.my Port 80</address>
</body></html>
De acordo com o link , embora o servidor apache não suporte o método TRACK nativamente, É possível que os módulos de plug-in forneçam suporte para isso. Para desabilitar esse recurso para módulos de plug-in, além de desabilitar o método TRACE, talvez tenhamos que desabilitar o método TRACK usando o módulo Rewrite.
Mas se você não instalar um plug-in TRACK no Apache, não haverá problemas de segurança. Esta suposição é válida?