熱點推薦:
您现在的位置: 電腦知識網 >> 操作系統 >> Windows服務器 >> 正文

修改IIS的Banner隱藏操作系統版本

2022-06-13   來源: Windows服務器 

  構建高安全級別的主機系統的時候對於NT系統往往有一個很尴尬的地方就是IIS的返回BANNER會很容易的洩露當前主機上NT的版本比如我們可以簡單的TELNET到對方的端口用GET命令來查看下結果
  
  HTTP/ Bad Request
  Server: MicrosoftIIS/
  Date: Wed Dec :: GMT
  ContentType: text/html
  ContentLength:
  
  <html><head><title>Error</title></head>
  <body>The parameter is incorrect </body>
  </html>
  
  又或者FTP過去看到
  
  Connected to
   sql Microsoft FTP Service (Version )
  User (:(none)):
  
  TELNET到對方的 端口去發信的時候會出現
  
   sql Microsoft ESMTP MAIL Service Version: ready at Thu Ja
  n :: +
  
  看到沒有服務器會很老實的告訴我們它是IIS結果全世界都知道它是WIN也許你很費力安裝防火牆然後禁止了ICMP的數據包但IIS的WEB FTP SMTP NNTP還是會很輕易的把秘密給洩露出去討厭的是現在很多漏洞掃描和安全評估系統也會根據服務器所返回的標志來自動判斷服務器的版本然後從後台調用相應的漏洞資料數據庫來調整下一步的掃描策略最後在報告裡還要說上一句告訴我們這是屬於低風險的安全漏洞實在是可惡
  
  其實雖然在IIS的管理器裡面並沒有提供給我們修改和隱藏BANNER的工具但我們還是可以通過修改相應的DLL文件來實現的當然這需要一點小技巧可是並不復雜
  
  首先我們需要知道存放IIS BANNER的DLL文件都是放在C:\WINNT\SYSTEM\INETSRV\ 目錄下面的其中對應關系是
  
  WEB是C:\WINNT\SYSTEM\INETSRV\WSVCDLL
  
  FTP是 C:\WINNT\SYSTEM\INETSRV\FTPSVCDLL
  
  SMTP是C:\WINNT\SYSTEM\INETSRV\SMTPSVCDLL
  
  我們可以用UltraEdit將他們打開然後查找我們想要找的BANNER的關鍵字例如IIS的WEB就是要找MicrosoftIIS/
  
 educitycn/img_///jpg>

  然後直接修改成我們想要修改成的樣子這個可以隨你高興了)然後保存就好但需要注意的地方就是
  
   在修改的時候請停止IIS的服務可以用iisreset /stop
  
   由於系統後台的文件保護機制的作用當系統一旦發現重要的DLL文件被修改後就會嘗試用%SYSTEMROOT%\system\dllcache 目錄下的備份文件來進行恢復所以在修改前我們還需要事先刪除%SYSTEMROOT%\system\dllcache目錄下的同名文件
  
  當然除了以上的手動修改以外其實還有人寫過一個相應的小工具來完成這件事情的使用和操作上就更簡單了下面給大家介紹下
  
 educitycn/img_///jpg>

  
 educitycn/img_///jpg>

  
 educitycn/img_///jpg>

  注意的是一樣先要自己事先停止IIS服務刪除DLLCACHE裡的備份文件
  完成後WINDOWS會出來一個對話框告訴你系統文件被更改需要安裝光盤恢復不用理它點取消就好了
  
 educitycn/img_///jpg>

  
educitycn/img_///jpg>

  修改以後的BANNER成了這個樣子
  
  HTTP/ Bad Request
  
  Date: Wed Dec :: GMT
  ContentType: text/html
  ContentLength:
  
  <html><head><title>Error</title></head>
  <body>The parameter is incorrect </body>  </html>
  
  可以發現修改後的BANNER已經不再出現MicrosoftIIS/的字樣了
  
  不過老實說想要完全隱藏還是不太現實就我來看IIS和APACHE返回的代碼格式實在是差的太遠了
  
  APACHE是這個樣子的
  
   <!DOCTYPE HTML PUBLIC //IETF//DTD HTML //EN>
  <HTML><HEAD>
  <TITLE> Method Not Implemented</TITLE>
  </HEAD><BODY>
  <H>Method Not Implemented</H>
  get to / not supported<P>
  Invalid method in request get /<P>
  <HR>
  <ADDRESS>Apache
  / Server at localhost Port </ADDRESS>
  </BODY></HTML>
From:http://tw.wingwit.com/Article/os/fwq/201311/29838.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.