ASP.NET虚拟主机的重大安全隐患

http://tech.ddvip.com   2006年08月29日    社区交流

本文详细介绍ASP.NET虚拟主机的重大安全隐患

  在ASP.NET中我们发现这一问题仍然存在,并且变得更加难以解决。这是因为.NET中关于系统IO操作的功能变得更加强大,而使这一问题更严重的是ASP.NET所具有的一项新功能,这就组件不需要象ASP那样必须要使用regsvr32来注册了,只需将Dll类库文件上传到bin目录下就可以直接使用了。这一功能确实给开发ASP.NET带来了很大的方便,但是却使我们在ASP中将此dll删除或者改名的解决方法失去效用了,防范此问题就变得更加复杂。在讨论解决方案之前,我们先来看一下怎么来实现上述的危险的功能。

二、文件系统操作示例

  在我们编写代码之前,有必要了解一下我们需要用到的几个主要的类。这几个类都在System.IO名称空间下,System.IO 名称空间包含允许在数据流和文件上进行同步和异步读写的类。

  在整个应用程序的开始部分我们需要了解一下服务器的系统信息,这就需要用到System.Environment类,该类提供有关当前环境和平台的信息以及操作它们的方法。我们通过System.Environment类可以得到系统的当前目录和系统目录,这可以使我们更快的发现几个关键的目录;我们还可以通过获取运行当前进程的用户名来帮助我们了解ASP.NET程序运行所使用的用户,进一步设置用户权限以避免这一安全问题。

  我们还要使用System.IO名称空间的其他几个类是:

  System.IO.Directory:提供用于创建、移动和枚举通过目录和子目录的静态方法的类

  System.IO.File:提供用于创建、复制、删除、移动和打开文件的静态方法的类

  System.IO.FileInfo:提供创建、复制、删除、移动和打开文件的实例方法的类

  System.IO.StreamReader:实现一个 TextReader,使其以一种特定的编码从字节流中读取字符。

  每个我们所使用的类的属性和方法的具体用法我们将以代码注释的方式在程序中加以说明。

作者:秦海鹏    责编:豆豆技术应用

正在加载评论...