欢迎光临重庆协创IT国际认证中心!

收藏本站 .网站地图 .联系我们

20年认证人才培训品牌

咨询热线:

023-65111115
023-65111116
  • 重庆协创教育
  • 协创教育_IT培训
  • 协创教育_国际认证
  • previous
  • next
您所在的位置:首页 > 认证考试

修改IIS的Banner隐藏操作系统版本

2010-7-23
投稿人:admin

构建高安全级别的主机系统的时候,对于NT系统往往有一个很尴尬的地方就是IIS的返回BANNER会很容易的泄露当前主机上NT的版本。比如我们可以简单的TELNET到对方的80端口用GET命令来查看下结果:
  
  HTTP/1.1 400 Bad Request
  Server: Microsoft-IIS/5.0
  Date: Wed, 31 Dec 1997 20:37:29 GMT
  Content-Type: text/html
  Content-Length: 87
  
  <html><head><title>Error</title></head>
  <body>The parameter is incorrect. </body>
  </html>
  
  又或者FTP过去看到:
  
  Connected to 127.0.0.1.
  220 sql Microsoft FTP Service (Version 5.0).
  User (127.0.0.1:(none)):
  
  TELNET到对方的25 端口去发信的时候,会出现:
  
  220 sql Microsoft ESMTP MAIL Service, Version: 5.0.2195.4453 ready at Thu, 1 Ja
  n 1998 04:47:48 +0800
  
  看到没有服务器会很老实的告诉我们它是IIS5.0,结果全世界都知道它是WIN2000了。也许你很费力安装防火墙然后禁止了ICMP的数据包,但 IIS的WEB FTP SMTP NNTP还是会很轻易的把秘密给泄露出去。讨厌的是现在很多漏洞扫描和安全评估系统也会根据服务器所返回的标志来自动判断服务器的版本,然后从后台调用相应的漏洞资料数据库来调整下一步的扫描策略,最后在报告里还要说上一句告诉我们这是属于低风险的安全漏洞,实在是可恶。
  
  其实虽然在IIS的管理器里面并没有提供给我们修改和隐藏BANNER的工具,但我们还是可以通过修改相应的DLL文件来实现的,当然这需要一点小技巧,可是并不复杂。
  
  首先我们需要知道存放IIS BANNER的DLL文件都是放在C:\WINNT\SYSTEM32\INETSRV\ 目录下面的,其中对应关系是:
  
  WEB是:C:\WINNT\SYSTEM32\INETSRV\W3SVC.DLL
  
  FTP是: C:\WINNT\SYSTEM32\INETSRV\FTPSVC2.DLL
  
  SMTP是:C:\WINNT\SYSTEM32\INETSRV\SMTPSVC.DLL
  
  我们可以用UltraEdit将他们打开,然后查找我们想要找的BANNER的关键字,例如IIS的WEB就是要找:Microsoft-IIS/5.0 。
  
 

  然后直接修改成我们想要修改成的样子,这个可以随你高兴了:)然后保存就好,但需要注意的地方就是:
  
  1 在修改的时候请停止IIS的服务,可以用iisreset /stop 。
  
  2 由于2000系统后台的文件保护机制的作用,当系统一旦发现重要的DLL文件被修改后就会尝试用%SYSTEMROOT%\system32\ dllcache 目录下的备份文件来进行恢复,所以在修改前我们还需要事先删除%SYSTEMROOT%\system32\dllcache目录下的同名文件。
  
  当然除了以上的手动修改以外,其实还有人写过一个相应的小工具来完成这件事情的,使用和操作上就更简单了,下面给大家介绍下:
  
 

  
 

  
 

  注意的是一样先要自己事先停止IIS服务,删除DLLCACHE里的备份文件。
  完成后WINDOWS会出来一个对话框告诉你,系统文件被更改需要安装光盘恢复,不用理它点取消就好了。
  
 

  

  修改以后的BANNER成了这个样子:
  
  HTTP/1.1 400 Bad Request
    www.isfocus.net
  Date: Wed, 31 Dec 1997 21:11:41 GMT
  Content-Type: text/html
  Content-Length: 87
  
  <html><head><title>Error</title></head>
  <body>The parameter is incorrect. </body>  </html>
  
  可以发现修改后的BANNER已经不再出现Microsoft-IIS/5.0的字样了。
  
  不过老实说,想要完全隐藏还是不太现实,就我来看IIS和APACHE返回的代码格式实在是差的太远了。
  
  APACHE是这个样子的:
  
   <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
  <HTML><HEAD>
  <TITLE>501 Method Not Implemented</TITLE>
  </HEAD><BODY>
  <H1>Method Not Implemented</H1>
  get to /dd.htm not supported.<P>
  Invalid method in request get /dd.htm<P>
  <HR>
  <ADDRESS>Apache
  /1.3.14 Server at localhost Port 8080</ADDRESS>
  </BODY></HTML>


您的评论

评论者: 请填写您的姓名,方便我们联系您
评论内容:
请填写您的评论内容, 内容不能超过200字哟!有您的支持,是我们不断前进的动力,感谢您的支持!
  
相关评论更多
Copyright: Chongqing Co-Founder of Network Technology Education Center (c) 2005-2021 All Rights
版权所有:重庆协创IT国际认证中心(c)2005-2011 All Rights 网站备案号:渝ICP备17014127号-1
地址:重庆市沙坪坝区小龙坎新街86号嘉多利广场11-7     联系电话:023-65111115   023-65111116
站长统计 技术支持:重庆网络推广专家