隐藏服务器信息

By | 2013/02/26

当我们完成一台web服务器的安装后,浏览网站会默认发送服务器信息,如下:

Date: Tue, 26 Feb 2013 07:23:32 GMT
Server: Microsoft-IIS/6.0
Connection: close
X-Powered-By: asp.net, PHP/5.2.5
Content-Type: text/html;charset=utf-8

通过上面的header头,我们可以轻易的知道服务器是2003的系统(iis6.0泄漏得知),支持.net和php,而且php是5.2.5的版本,存在拒绝服务漏洞。坏蛋可以利用这些信息进行下一步的攻击,因此就需要我们伪装或者隐藏下这些信息,进一步加强服务器的安全。

首先隐藏下 X-Powered-By:

iis隐藏asp.net很简单,修改站点属性的http头即可。
php的话需要修改php的配置文件,把expose_php = off 设置为off即可。

然后就是因此web服务器信息了:

apache在配置文件添加如下参数(第三条与此处无关,但是也是安全设置,所以顺便保留了):

ServerTokens Prod
ServerSignature Off
TraceEnable off

nginx需要修改配置文件的http段添加server_tokens off,同时修改fastcgi.conf或fcgi.conf文件中的fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;语句(内容随便改,比如装google的gws)。

iis比较麻烦,可以使用ServerMask或者是微软的urlscan来实现,这个亲自行研究吧!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据