我們不應該把這歸咎于 IIS 的不安全。如果對站點的每個目錄都配以正確的權限,出現漏洞被人黑掉的機會還是很小的(Web 應用程序本身有問題和通過其它方式入侵黑掉服務器的除外)。下面是我在配置過程中總結的一些經驗,希望對大家有所幫助。
IIS Web 服務器的權限設置有兩個地方,一個是 NTFS 文件系統本身的權限設置,另一個是 IIS 下網站->站點->屬性->主目錄(或站點下目錄->屬性->目錄)面板上。這兩個地方是密切相關的。下面以實例的方式來講解如何設置權限。
IIS 下網站->站點->屬性->主目錄(或站點下目錄->屬性->目錄)面板上有:
腳本資源訪問
讀取
寫入
瀏覽
記錄訪問
索引資源
6 個選項。這 6 個選項中,“記錄訪問”和“索引資源”跟安全性關系不大,一般都設置。但是如果前面四個權限都沒有設置的話,這兩個權限也沒有必要設置。在設置權限時,記住這個規則即可,后面的例子中不再特別說明這兩個權限的設置。
另外在這 6 個選項下面的執行權限下拉列表中還有:
無
純腳本
純腳本和可執行程序
3 個選項。
而網站目錄如果在 NTFS 分區(推薦用這種)的話,還需要對 NTFS 分區上的這個目錄設置相應權限,許多地方都介紹設置 everyone 的權限,實際上這是不好的,其實只要設置好 Internet 來賓帳號(IUSR_xxxxxxx)或 IIS_WPG 組的帳號權限就可以了。如果是設置 ASP、PHP 程序的目錄權限,那么設置 Internet 來賓帳號的權限,而對于 ASP.NET 程序,則需要設置 IIS_WPG 組的帳號權限。在后面提到 NTFS 權限設置時會明確指出,沒有明確指出的都是指設置 IIS 屬性面板上的權限。
例1 —— ASP、PHP、ASP.NET 程序所在目錄的權限設置:
如果這些程序是要執行的,那么需要設置“讀取”權限,并且設置執行權限為“純腳本”。不要設置“寫入”和“腳本資源訪問”,更不要設置執行權限為“純腳本和可執行程序”。NTFS 權限中不要給 IIS_WPG 用戶組和 Internet 來賓帳號設置寫和修改權限。如果有一些特殊的配置文件(而且配置文件本身也是 ASP、PHP 程序),則需要給這些特定的文件配置 NTFS 權限中的 Internet 來賓帳號(ASP.NET 程序是 IIS_WPG 組)的寫權限,而不要配置 IIS 屬性面板中的“寫入”權限。
IIS 面板中的“寫入”權限實際上是對 HTTP PUT 指令的處理,對于普通網站,一般情況下這個權限是不打開的。
IIS 面板中的“腳本資源訪問”不是指可以執行腳本的權限,而是指可以訪問源代碼的權限,如果同時又打開“寫入”權限的話,那么就非常危險了。
執行權限中“純腳本和可執行程序”權限可以執行任意程序,包括 exe 可執行程序,如果目錄同時有“寫入”權限的話,那么就很容易被人上傳并執行木馬程序了。
新聞熱點
疑難解答
圖片精選