首先说下什么是trace方法。trace方法是用来跟踪客户请求到达服务器中间经过的代理服务器。它会使服务器原样返回任意客户端请求的任何内容。
而黑客们恰好利用这点,结合跨站脚本漏洞(XSS)来攻陷你的服务器。为了安全,最好禁用掉trace方法。
禁用它很简单:只需在apache的配置文件httpd.conf中,加上TraceEnable off即可。
关于此,可以用telenet来测试。
测试方法:1,关闭trace前
[root@Node2 ~]# telnet 192.168.1.10 80
Trying 192.168.1.10...Connected to 192.168.1.10.Escape character is '^]'.
TRACE / HTTP/1.0
X-Test:abcde
HTTP/1.1 200 OKDate: Thu, 10 Nov 2016 13:28:35 GMTServer: Apache/2.2.15 (CentOS)Connection: closeContent-Type: message/http
此时,还返回200,一切正常。
2,关闭trace后
[root@Node2 ~]# telnet 192.168.1.10 80
Trying 192.168.1.10...Connected to 192.168.1.10.Escape character is '^]'.
TRACE / HTTP/1.0
X-Test:abcde
HTTP/1.1 405 Method Not AllowedDate: Thu, 10 Nov 2016 13:29:23 GMTServer: Apache/2.2.15 (CentOS)Allow: Content-Length: 302Connection: closeContent-Type: text/html; charset=iso-8859-1
现在,返回405,已经不允许trace方法。
编辑回复