你好,游客 登录 注册 搜索
背景:
阅读新闻

伪装Nginx版本防止入侵Web服务器

[日期:2013-03-21] 来源:laoxu.blog.51cto.com  作者:老徐_kevin [字体: ]

为了防止被黑客扫描到web服务器信息,通过相对应的web服务器信息找出对应的版本漏洞,从而对web服务器进行入侵,nginx虽然功能强大,但是也是软件,软件就可能会有漏洞,例如nginx-0.6.32版本,默认情况下可能导致服务器错误的将任何类型的文件以PHP的方式进行解析,比如上传一个jpg格式的木马到论坛网站,通过漏洞解析成一个phpshell,从而入侵获得服务器的权限,这将导致严重的安全问题,使得黑客可能攻陷支持php的nginx服务器。如果暴漏了nginx版本而且该版本又存在安全漏洞那么你的web服务器肯定危在旦夕了。

针对于nginx服务器,可以修改源码中关于nginx的header描述信息,以下以nginx-1.2.0版本为例。

  1. [root@www nginx-1.2.0]# cd src/core/
  2. [root@www core]# vim nginx.h -------编辑nginx.h文件
  1. /*
  2. * Copyright (C) Igor Sysoev
  3. * Copyright (C) Nginx, Inc.
  4. */
  5. #ifndef _NGINX_H_INCLUDED_
  6. #define _NGINX_H_INCLUDED_
  7. #define nginx_version 1002000
  8. #define NGINX_VERSION "2.2.2" //默认为1.2.0
  9. #define NGINX_VER "Apache/" NGINX_VERSION //默认为Nginx
  10. #define NGINX_VAR "NGINX"
  11. #define NGX_OLDPID_EXT ".oldbin"
  12. #endif /* _NGINX_H_INCLUDED_ */

然后进行正常编译完成安装。

测试效果

使用nmap扫描主机

使用curl获取http请求信息

或者访问一个不存在的URL也可以查看到效果

可以看到无论是用nmap扫描主机还是用curl获取对网站http报文的请求信息甚至是访问请求一个不存在的url都会显示web服务器使用的是Apache2.2.2版本,从而隐藏了我们真实web服务器版本即nginx-1.2.0版本,保护了web服务器的安全。

linux
相关资讯       伪装Nginx版本 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款