过去几年中发生了许多针对FontPage Server Extensions的重大攻击事件,所以FontPage Server Extensions的名声似乎不是很好,一些安全教程甚至认为不值得去想办法提高FrontPage Server Extensions的安全性,建议直接予以删除 。但是,如果你确实要使用FrontPage Server Extensions提供的诸多功能,例如对网站创作的支持,那就不得不认真考虑这样一个问题:是否有可能保障FrontPage Server Extensions的安全?答案是肯定的,只是必须花些时间进行规划和配置。
虽然有许多人对FrontPage Server Extensions的安全性表示怀疑,但在年复一年的不断发展中,它的安全性也在不断提高。保障FrontPage Server Extensions的安全性是完全有可能的,但前提是要深入理解到底什么是FrontPage Server Extensions,以及它是如何运作的。
一、运行原理
FrontPage Server Extensions即FrontPage的服务器端扩展模块,它增强了Web服务器的功能,使得创作者能够远程管理和发布网站,例如通过FontPage直接与Server Extensions交互,实现文件上载、连接到数据源、修改Web授权等操作。FrontPage Server Extensions还有一个称为WebBots的运行时组件,它提供了许多高级功能,诸如表单发布、讨论页面、内容链接等。
在服务器上安装FrontPage Server Extensions之后,可以看到它包括三个二进制文件--admin.dll,author.dll,和shtml.exe,分别实现管理、创作、运行支持。FrontPage Server Extensions的版本不同,这三个文件的扩展名可能不同,例如.dll可能变成.exe,.exe可能变成.dll。另一方面,IIS允许指定任意一种扩展名,因为IIS有一个名为fpexedll.dll的ISAPI筛选器,它会把请求指向正确的位置。
这三个二进制文件驻留在_vti_bin虚拟目录中,_vti_bin虚拟目录映射到物理目录\program files\common files\microsoft shared\web serverextensions\40\isapi(或者,对于FrontPage Server Extensions 2002,物理目录是\program files\common files\microsoft shared\web server extensions\50\isapi)。所有FrontPage Web网站(指安装和启用了FrontPage Server Extensions的网站,下同)都有一个虚拟目录映射到该路经。FrontPage通过向这些二进制文件发送HTTP POST请求,实现与Web服务器的通信,POST请求的正文中包含一些特殊的命令(称为vti_rpc命令),指示服务器执行一些特定的操作。
FrontPage Server Extensions的服务对象不限于FrontPage,微软的其他许多技术,包括Web文件夹、Office Web发布、SharePoint小组服务,都离不开FrontPage Server Extensions,它甚至还有一个ADO驱动程序,可以用来查询FrontPage Web页面。显然,在微软的Web战略规划中FrontPage Server Extensions有着重要地位,短期之内不可能被放弃。