如何伪装apache的版本防止web服务器被入侵,今天写这篇回答这个问题吧。
下载apache源码,我用的是2.2.25版本
解压文件apache源码包 tar xzvf httpd-2.2.25.tar.gz
修改源码文件 vim httpd-2.2.25/include/ap_release.h
这是一个带有apache版本号的headerfile。 剩下的就是编译安装了,最简单的参数 ./configure--prefix=/usr/local/apache && make && make install
修改配置文件/usr/local/apache/conf/httpd.conf,增加如下内容
启动apache服务 /usr/local/apache/bin/apachectl start
访问任意一个不存在的页面 可以看到web服务器的banner版本号是微软的IIS7.0,而不是真正的apache2.2.25
还没完,因为有经验的黑客还是从404页面的风格看出来,这显然不是IIS的风格,当然你可以选择再次修改/usr/local/apache/conf/httpd.conf文件 以上是把banner的版本号彻底隐藏不显示
当然这些都会让有经验的黑客认出这是apache的默认404页面,那么就自己做个404吧,最好的办法是把IIS7.0的默认404的html代码拷贝过来作为apache服务器的404页面,呵呵
然后修改/usr/local/apache/conf/httpd.conf文件
最后看看效果,再访问一次
可以用以下手段来测试一下修改的效果 telnet模仿GET请求查看
curl-I请求head信息
nmap扫描80端口http服务版本
全部都是显示为微软的IIS服务 呵呵,完全伪装成MicrosoftIIS7.0了,别忘了把403等页面也一起修改了吧。
|