從 Windows 7 與 Windows Server 2008 R2 開始,新增了兩種特殊的帳戶類型,分別是「受管理的服務帳戶(Managed service accounts)」與「虛擬帳戶(virtual accounts)」,可有效隔離各種網路服務以提升安全性,我今天會集中在講解 IIS 7.5 與虛擬帳戶之間的實際運用與范例。
要學會設定 IIS 一定要熟悉應用程式集區(Application Pool)與身份識別(Identity)的關系,我們都知道 IIS6 與 IIS7 預設的應用程式集區身份識別都是 NETWORK SERVICE 這個系統帳戶,不過 NETWORK SERVICE 這個帳戶可不是只有 IIS 在用而已,還有許多其他系統中與網路有關的服務程序也是用 NETWORK SERVICE 這個身份在運作,例如:SQLEXPRESS 服務。
這也代表著就算 IIS 沒有淪陷,只要有其他使用 NETWORK SERVICE 的網路服務淪陷的話,也會有可能連帶影響 IIS 的運作。這樣說你可能沒感覺,我反過來說,如果 IIS 被植入木馬程式,駭客可以大搖大擺的利用 NETWORK SERVICE 下載你的 SQLEXPRESS 資料庫備份檔、刪除備份檔、刪除或下載你暫時卸離的資料庫、甚至于偷天換日將另一組資料庫上傳上去,讓你完全不知發生何事。
礙于時間與篇幅我沒辦法說太多,如果有機會我可以做很多現場的展示,包你大開眼界,資訊安全這檔事真的是博大精深,不瞭解各種細節與原理的人永遠是在霧裡看花。
有了「虛擬帳戶」的概念,各種不同的網路服務不需要再共用同一組 NETWORK SERVICE 身份識別,甚至于同一個 IIS 下個別不同的應用程式集區也可以用完全區隔開來的「虛擬帳戶」執行 Web 應用程式,除了工作處理程序 (Worker Process) (w3wp.exe) 執行的身份可以完全切開外,對于不同站臺所操作的檔案或目錄也可以將 NTFS 權限的設定做有效區隔,讓不同工作處理程序之間對系統或檔案安全性的影響降至最低,非常的有意義!
首先,我們先來看看 IIS 7.5 內建的 DefaultAppPool 應用程式集區的 [進階設定]
在這裡你會看到 IIS 7.5 這次才新增的 ApplicationPoolIdentity 內建帳戶,而這就是為 IIS 7.5 特別訂製的「虛擬帳戶」。
新聞熱點
疑難解答
圖片精選