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

构建高安全级别的主机 系统 的时候,对于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目录下的同名文件。

当然除了以上的手动修改以外,其实还有人写过一个相应的小工具来完成这件事情的,使用和操作上就更简单了,下面给大家介绍下:


完成后WINDOWS会出来一个对话框告诉你,系统文件被更改需要安装光盘恢复,不用理它点取消就好了。



 


 


呵呵 这些小工具可以从我的站点( www.isfocus.net) 下载,使用上没什么可说的。注意的是一样先要自己事先停止IIS服务,删除DLLCACHE里的备份文件。




但我还是比较喜欢自己来修改DLL文件,感觉这样的 自由 更大一些,可以改的地方也更多。

修改以后的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>   


好象是非常杂乱无章的,有经验的入侵者还是可以通过这些辨认出来那些是经过修改后的IIS。其他FTP和SMTP的修改部分是一样,这里就不再多说了。总结一句不要轻易的泄露你的系统 信息 ,对于真正的入侵尽量拖延和扰乱入侵者的视线。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值