740s3高级程 Chinapub. coM 下载 2.建立合理的安全目录结构 合理的web结构,使我们对应用程序的安全管理变得相当容易。在 Windows Explorer中, 允许在文件夹而不是文件的基础上定义严格的安全权限。如可定义一些目录,它们只包含唯 类型的文件,例如可执行文件、ASP网页、服务器端包含文件等 从安全观点看,表24-11所示的这个示例结构很容易管理,但还有许多的工作需要Web设 计者设计。然而,也有许多有用的准则对我们有指导意义。 表24-11目录结构示例 目录名称 文件扩展名 权限设定 Webrootlexec可执行文件 匿名Web用户( IUSR MACHINE(只读 和执行) Administrator(无限制 System(无限制 包含文件 shtm ASP网页 HTML\客户端脚本 htm 匿名Web用户( IUSR MACHINE(只读) Administrator(无限制) System(无限制) Webrootlimgs 图像文件 Jpeg 注意,尽量避免把EXe文件放到在线应用程序中,它们非常有可能产生安全问题 3.保持干净的服务器 从服务器上删除所有不必要的资料。 在 C: \inetpub\ samples中的示例应用程序和 IIS SDK是服务器上多余的负担 另外,在C: \inetpub \Admin Scripts中的 Admin Scripts也应删除。 ·IS中的缺省web站点也是删除的候选对象,因为它的物理根目录通常位于服务器的主引 导分区。如前所述,如果黑客控制了缺省Web站点,也就可以访问引导分区、 Windows 文件和命令shel1等 ·如果在线应用程序没有使用脚本运行期库对象(见第5章)或ASP服务器组件,取消它们的 注册。在 Start菜单中选择Run并键入 regsvr32 xxx. dll /u 这里,xxd是包含组件的文件的名称。要意识到某些应用程序需要使用某些对象。因 此,在取消组件的注册之前,一定要检查依赖性 4.加强RDS的安全性 在第10章中,你已经知道微软公司已发布了有关使用远程数据服务(RDS)功能的安全声明, 可在http:/support.microsoftcom/support/kb/articles/q184/3/75.asp中看到详细内容。过去 RDS是防止拒绝服务攻击的基础,但微软建议从服务器中删除RDS或加强其安全防范措施 这些方法都写在上述地址的网页中 5.不要给后端(Back-End)代码编索引 我们经常看到在应用程序中索引底层代码和用户实际将看到的相关信息,甚至在一些网2. 建立合理的安全目录结构 合理的We b结构,使我们对应用程序的安全管理变得相当容易。在 Windows Explorer 中, 允许在文件夹而不是文件的基础上定义严格的安全权限。如可定义一些目录,它们只包含唯 一类型的文件,例如可执行文件、 A S P网页、服务器端包含文件等。 从安全观点看,表 2 4 - 11所示的这个示例结构很容易管理,但还有许多的工作需要 We b设 计者设计。然而,也有许多有用的准则对我们有指导意义。 表2 4 - 11 目录结构示例 目录名称 内 容 文件扩展名 权限设定 We b r o o t \ e x e c 可执行文件 . e x e, 匿名We b用户( I U S R _ M A C H I N E ) (只读 . d l l, 和执行) . p l A d m i n i s t r a t o r (无限制) S y s t e m (无限制) We b r o o t \ i n c s 包含文件 . i n c, . s h t m l, . s h t m We b r o o t \ a s p A S P网页 . a s p We b r o o t \ h t m l H T M L \客户端脚本 . h t m, 匿名We b用户(IUSR_MACHINE) (只读) . h t m l Administrator (无限制) S y s t e m (无限制) We b r o o t \ i m g s 图像文件 . g i f , . j p e g 注意,尽量避免把. E x e文件放到在线应用程序中,它们非常有可能产生安全问题。 3. 保持干净的服务器 从服务器上删除所有不必要的资料。 • 在C:\inetpub\ iisamples\中的示例应用程序和IIS SDK是服务器上多余的负担。 • 另外,在C : \ i n e t p u b \ A d m i n S c r i p t s \中的Admin Scripts也应删除。 • I I S中的缺省We b站点也是删除的候选对象,因为它的物理根目录通常位于服务器的主引 导分区。如前所述,如果黑客控制了缺省 We b站点,也就可以访问引导分区、 Wi n d o w s 文件和命令s h e l l等。 • 如果在线应用程序没有使用脚本运行期库对象 (见第5章)或A S P服务器组件,取消它们的 注册。在S t a r t菜单中选择R u n并键入: 这里,x x x . d l l是包含组件的文件的名称。要意识到某些应用程序需要使用某些对象。因 此,在取消组件的注册之前,一定要检查依赖性。 4. 加强R D S的安全性 在第1 0章中,你已经知道微软公司已发布了有关使用远程数据服务 ( R D S )功能的安全声明, 可在h t t p : / / s u p p o r t . m i c r o s o f t . c o m / s u p p o r t / k b / a r t i c l e s / Q 1 8 4 / 3 / 7 5 . a s p中看到详细内容。过去, R D S是防止拒绝服务攻击的基础,但微软建议从服务器中删除 R D S或加强其安全防范措施, 这些方法都写在上述地址的网页中。 5. 不要给后端( B a c k - E n d )代码编索引 我们经常看到在应用程序中索引底层代码和用户实际将看到的相关信息,甚至在一些网 740计计ASP 3 高级编程 下载