對于FrontPage服務器的使用與維護工作
雖然有許多人對FrontPage服務器的安全性表示懷疑,但在年復一年的不斷發展中,他的安全性也在不斷提高。保障FrontPage服務器的安全性是完全有可能的,但前提是要深入理解到底什么是FrontPage服務器,及他是怎么運作的。
一、運行原理
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篩選器,他會把請求指向正確的位置。 BBS.bitsCN.com網管論壇
這三個二進制文件駐留在_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有著重要地位,短期之內不可能被放棄。
中國.網管聯盟
二、風險分析
雖然微軟在不斷地改進FrontPage Server Extensions的安全性,但他不可避免地增加了Web服務器面臨攻擊的機會(一般而言,越是復雜的系統,弱點總是越多)。例如,FrontPage Server Extensions提供了一種進入Web服務器的通道。用FrontPage連接Web服務器時需求輸入一個密碼,密碼保護雖然不無益處,但同時也給攻擊者提供了猜測密碼的機會,攻擊者能方便地利用腳本程式執行暴力破解,非常快就能嘗試數百、數千個常用的密碼,一旦密碼泄露,攻擊者就能隨心所欲地修改Web內容了。
FrontPage服務器面臨的另一個安全問題是他能用來收集服務器信息。只要向shtml.exe發送一個適當的HTTP POST請求,就能得到FrontPage Server Extensions版本、Web服務器軟件版本、OS平臺、匿名Web用戶帳號、FrontPage Web網站的名稱等信息,雖然這些信息本身不算機密,但方便了攻擊者采取更具有針對性的動作。 www.bitsCN.com
由于所有FrontPage Server Extensions命令都是作為POST數據發送給各個二進制文件,IIS的日志中只能記錄對這些二進制文件的POST請求,卻不能記錄具體的_vti_rpc命令。
雖然我們能設置FrontPage Server Extensions,使其記錄創作類的動作(默認不記錄),但日志仍不能確保包含命令的參數。例如,如果一個管理員修改了FrontPage Web網站的設置,日志中會有一個"設置服務元數據"的條目,但沒有進一步的具體信息,也就是說,他只能說明"確實有設置被改動了",但不能告訴我們"到底哪些設置被改動了"。另外,日志文件的位置也非常難改動,一般總是保存在FrontPage Web網站的_vti_log目錄下。
更有一個重要的安全問題是FrontPage Server Extensions運行在IIS進程(inetinfo.exe)之內,他們都運行在SYSTEM帳戶的安全上下文之下,因此,所有FrontPage Server Extensions的安全漏洞(例如緩沖溢出)都可能使攻擊者獲得全部的訪問權限。 #t#
bitsCN.Com
FrontPage服務器帶來的最后一個風險源于不能選擇安裝目錄。一般情況下,Web目錄應當和系統文件放在不同的分區,這種分離增加了攻擊者全方面了解文件系統的難度,避免攻擊者訪問敏感的系統文件。不過,FrontPage Server Extensions的_vti_bin虛擬目錄安裝在系統分區上,不能發揮分離Web分區帶來的優勢。此外,_vti_bin虛擬目錄帶有可執行標記,如果出現類似Nimda蠕蟲的攻擊,非常容易被利用。
三、安全機制
FrontPage Server Extensions的安全模型建立在IIS和NTFS的安全之上。FrontPage Web網站有三種基本的訪問授權:瀏覽,創作,和管理。授予瀏覽權限意味著用戶能夠瀏覽FrontPage Web網站,授予創作權限意味著用戶能夠上載和修改FrontPage Web網站的文件,如果授予一個用戶管理權限,那么他將能夠修改FrontPage Web網站的設置。
中國網管聯盟
FrontPage Web網站根目錄的NTFS ACL設置決定了用戶訪問文件系統的權限。如果一個用戶有NTFS"讀取"權限,他就能瀏覽目錄;如果用戶有NTFS"寫入"權限,他就能創作FrontPage Web網站;如果要管理一個FrontPage Web網站,則用戶必須有FrontPage Web網站根目錄的"修改"權限。注意這些權限是NTFS文件系統的權限,而不是在Internet信息服務管理器(ISM)控制臺中設置的Web訪問權限。
當FrontPage客戶程式向author.dll或admin.dll發送一個POST請求,服務器開始驗證用戶的身份??蛻舫淌桨l出POST請求之后,IIS首先檢查FrontPage Web網站的根目錄,確定匿名用戶帳戶是否有權執行當前請求的操作。如果沒有,IIS需求用戶提供名稱和密碼以便驗證身份。用戶提交名字和密碼之后,FrontPage Server Extensions再次檢查根目錄,確定該用戶身份是否具有適當的權限。如果FrontPage Server Extensions認可了用戶的身份,則用戶被視為具有Web創作者或管理員的權限。
bitscn.com
這里非常容易出現的一個問題是錯誤地設置FrontPage Web網站根目錄的權限,或將根目錄放到了FAT分區。FrontPage Server Extensions 2000之前的版本安全性比較脆弱,默認設置不包含密碼;2000及更高版本的FrontPage Server Extensions安全模型稍微堅固一些,采用了非空的默認密碼,但我們不時能看到修改根目錄授權的情形,授予所有人"寫入"的權限,特別是在研發環境中,由于安全性的需求不高,這種情形尤其常見。如果IUSR_machinename(其中machinename是計算機的名字)帳戶具有寫入根目錄的權限,所有連接到FrontPage Server Extensions的用戶將自動被授予全部創作或管理FrontPage Web網站的權限。
中國_網管聯盟
類似地,由于FrontPage服務器高度依賴于NTFS的授權機制,安裝在FAT文件系統上的FrontPage Server Extensions會將所有管理功能授予每一個用戶,因為FAT文件系統不具有限制文件訪問的能力。 所以在使用FrontPage Server Extensions時,一定要換個網絡位置來登錄FrontPage Web網站,看看有沒有出現驗證身份的提示;如果沒有,那就應該仔細檢查一下權限設置問題了。
四、十大措施
要保障FrontPage Server Extensions的安全,必須從多個角度、多個層次來考慮。FrontPage服務器的設置和安全策略將在非常大程度上決定保障FrontPage Server Extensions安全的措施。下面列出了十個步驟,以此為依據能構造出一個比較完善的FrontPage Server Extensions安全策略。
www_bitscn_com