首页    新闻    下载    文档    论坛     最新漏洞    黑客教程    数据库    搜索    小榕软件实验室怀旧版    星际争霸WEB版    最新IP准确查询   
名称: 密码:      忘记密码  马上注册
操作系统 :: unix

防止内部IP地址泄漏的2种方法


http://www.gipsky.com/
  当访问IIS网站上的静态HTML文件时,比如index.htm,IIS响应中会包含一个Content-Location文件头。如果IIS配置不当,Content-Location文件头中将包含服务器的IP地址内容,这样就导致了隐藏在NAT防火墙或者代理服务器后面的内部网IP地址信息的泄漏,给攻击者有漏可乘。



  下面我就介绍2种解决办法,实现将IP地址信息替换为域名信息的目的,帮助系统管理员消除内部网的IP地址泄漏隐患。



  什么是IIS对页面文件的响应信息



  当我们使用浏览器访问IIS网站Web服务器上的页面内容时,IIS将返回给用户一个完整的响应信息。简单情况下,我们可以认为这个响应信息包含2部分内容:



  1、系统信息:



  诸如访问状态、服务器信息、文件类型、正文长度等内容。



  2、正文信息:



  通常情况下就是我们在浏览器中看到的页面内容,也就是在浏览器中可以查看到的页面源代码内容。



  当我们使用高级语言中的相关Internet控件访问一个页面内容时,比如使用VB的InternetControl控件来编写自己的浏览器或者下载程序,最终就会得到包含上述2部分内容的完整响应信息。



  首先我们来看看一个例子,它显示了默认安装情况下IIS对HTML文件的响应信息:



  HTTP/1.1 200OK



  Server:Microsoft-IIS/5.0



  Content-Location:http://192.168.1.1/index.htm



  Date:Wed, 31Oct200104:19:40GMT



  Content-Type:text/html



  Accept-Ranges:bytes



  Last-Modified:Fri, 12Oct200107:48:06GMT



  ETag:"03f7e3af252c11:9a2 "



  Content-Length:7141



  上面响应信息的第3行内容包含了内部网的IP地址信息,这是我们不希望的。我们希望IIS响应如下的内容:



  HTTP/1.1 200OK



  Server:Microsoft-IIS/5.0



  Content-Location:http://www.mywebsite.com/index.htm



  Date:Wed, 31Oct200104:19:40GMT



  Content-Type:text/html



  Accept-Ranges:bytes



  Last-Modified:Fri, 12Oct200107:48:06GMT



  ETag:"03f7e3af252c11:9a2 "



  Content-Length:7141



  也就是说,将第3行内容中的IP地址信息替换为域名信息。下面来看看解决办法。



  解决方法一:执行脚本程序Adsutil.vbs



  通过修改IIS数据库中的一个数值,就可以达到将Content-Location文件头中的IP地址信息转换为域名信息的目的。



  第一种方法是通过执行一个VBS脚本程序完成IIS数据库的相关修改工作,这个脚本程序叫做Adsutil.vbs,它随IIS安装后生成。



  注意:由于实际的应用环境不同,微软公司没有担保这个软件的使用安全性。所以,我建议在执行这个脚本程序前,做好服务器上的重要数据备份。



  对于IIS4.0服务器,执行步骤如下:



  1、点击“开始/运行”,输入“cmd”,点击“确定”,进入命令行状态窗口。



  2、切换到IIS4.0系统程序安装目录,一般是c:winntsystem32inetsrvadminsamples 。



  3、执行以下命令,修改IIS数据库相关数值,设置Content-Location文件头使用域名信息:



  adsutilsetw3svc/UseHostNameTrue



  4、执行以下命令,关闭Internet服务程序:netstopiisadmin/y



  5、执行以下命令,重新启动相关Internet应用程序:netstartw3svc



  注意:在执行完第4步后,要观察一下都有哪些Internet应用程序被停止,然后在第5步中依次重新启动它们。



  对于IIS5.0服务器,执行步骤如下:



  1、点击“开始/运行”,输入“cmd”,点击“确定”,进入命令行状态窗口。



  2、切换到IIS5.0系统程序安装目录,一般是c:inetpubadminscripts 。



  3、执行以下命令,修改IIS数据库相关数值,设置Content-Location文件头使用域名信息:adsutilsetw3svc/UseHostNameTrue



  4、执行以下命令,关闭Internet服务程序:netstopiisadmin/y



  5、执行以下命令,重新启动相关Internet应用程序:netstartw3svc



  同样请注意:在执行完第4步后,要观察一下都有哪些Internet应用程序被停止,然后在第5步中依次重新启动它们。



  解决方法二:将.htm文件改名为.ASP文件,并定制文件头信息



  我要介绍的第二种方法采取了一种间接处理的方式:



  1、首先将.HTM文件改名为.ASP文件。



  2、因为IIS对ASP文件的响应中,并不包含Content-Location'>文件头内容,所以接着要在IIS管理器中为之创建一个定制文件头,以返回特殊的Content-Location文件头内容。



  下面我们来看看具体的操作步骤:



  1、将静态页面文件(比如 .htm,.html)改名为.asp文件。注意,经过这样的文件改名后,当访问原来的.htm文件时,将启动ASP引擎,从性能上来看,是稍稍有些降低的。



  2、启动Internet服务管理器



  3、双击“Internet信息服务”,扩展下属内容



  4、点击要处理服务器名字左边的+号,扩展下属内容



  5、右键点击“默认Web站点”,选择“属性”



  6、点击“头”选项卡



  7、在“自定义头”部分,点击“添加”



  8、在“自定义头名称”处输入“Content-Location”,在“自定义头值”处输入你期望的域名信息,比如“ttp://www.mywebsite.com”:



  9、依次点击“确定”,完成全部修改工作



  



  
<< 远程访问安全性综述 安全审核让入侵者无处遁形 >>
API:
gipsky.com& 安信网络
网友个人意见,不代表本站立场。对于发言内容,由发表者自负责任。

系统导航

 

Copyright © 2001-2010 安信网络. All Rights Reserved
京ICP备14013333号-8