我們平常使用電腦的過程當中不會感覺到有許可權在阻撓你去做某件事情,這是因為我們在使用電腦的時候都用的是Administrators中的使用者登陸的。這樣有利也有弊,利當然是你能去做你想做的任何一件事情而不會遇到許可權的限制。弊就是以 Administrators 群組成員的身份運行電腦將使系統容易受到特洛伊木馬、病毒及其他安全風險的威脅。訪問 Internet 網站或開啟電子郵件附件的簡單行動都可能破壞系統。不熟悉的 Internet 網站或電子郵件附件可能有特洛伊木馬代碼,這些代碼可以下載到系統並被執行。如果以本機電腦的管理員身份登入,特洛伊木馬可能使用管理訪問權重新格式化您的硬碟,造成不可估量的損失,所以在沒有必要的情況下,最好不用Administrators中的使用者登陸。Administrators中有一個在系統安裝時就建立的預設使用者----Administrator,Administrator 帳戶具有對伺服器的完全控制許可權,並可以根據需要向使用者指派使用者權利和存取控制許可權。因此強烈建議將此帳戶設定為使用強密碼。永遠也不可以從 Administrators 組刪除 Administrator 帳戶,但可以重新命名或禁用該帳戶。由於大家都知道“管理員”存在於許多版本的 Windows 上,所以重新命名或禁用此帳戶將使惡意使用者嘗試並訪問該帳戶變得更為困難。對於一個好的伺服器管理員來說,他們通常都會重新命名或禁用此帳戶。Guests使用者組下,也有一個預設使用者----Guest,但是在預設情況下,它是被禁用的。如果沒有特別必要,無須啟用此賬戶。我們可以通過“控制台”--“管理工具”--“電腦管理”--“使用者和使用者組”來查看使用者組及該組下的使用者。
那我們現在就來看看Windows 2000的預設使用權限設定到底是怎樣的。對於各個卷的根目錄,預設給了Everyone組完全控制權。這意味著任何進入電腦的使用者將不受限制的在這些根目錄中為所欲為。系統磁碟區下有三個目錄比較特殊,系統預設給了他們有限制的許可權,這三個目錄是Documents and settings、Program files和Winnt。對於Documents and settings,預設的許可權是這樣分配的:Administrators擁有完全控制權;Everyone擁有讀&運,列和讀許可權;Power users擁有讀&運,列和讀許可權;SYSTEM同Administrators;Users擁有讀&運,列和讀許可權。對於Program files,Administrators擁有完全控制權;Creator owner擁有特殊許可權;Power users有完全控制權;SYSTEM同Administrators;Terminal server users擁有完全控制權,Users有讀&運,列和讀許可權。對於Winnt,Administrators擁有完全控制權;Creator owner擁有特殊許可權;Power users有完全控制權;SYSTEM同Administrators;Users有讀&運,列和讀許可權。而非系統磁碟區下的所有目錄都將繼承其父目錄的許可權,也就是Everyone組完全控制權!
現在大家知道為什麼我們剛剛在測試的時候能一帆風順的取得管理員權限了吧?使用權限設定的太低了!一個人在訪問網站的時候,將被自動賦予IUSR使用者,它是隸屬於Guest組的。本來許可權不高,但是系統預設給的Everyone組完全控制權卻讓它“身價倍增”,到最後能得到Administrators了。那麼,怎樣設定許可權給這台WEB伺服器才算是安全的呢?大家要牢記一句話:“最少的服務+最小的許可權=最大的安全”對於服務,不必要的話一定不要裝,要知道服務的運行是SYSTEM級的哦,對於許可權,本著夠用就好的原則分配就是了。對於WEB伺服器,就拿剛剛那台伺服器來說,我是這樣設定許可權的,大家可以參考一下:各個卷的根目錄、Documents and settings以及Program files,只給Administrator完全控制權,或者乾脆直接把Program files給刪除掉;給系統磁碟區的根目錄多加一個Everyone的讀、寫權;給e:\www目錄,也就是網站目錄讀、寫權。最後,還要把cmd.exe這個檔案給挖出來,只給Administrator完全控制權。經過這樣的設定後,再想通過我剛剛的方法入侵這台伺服器就是不可能完成的任務了。可能這時候又有讀者會問:“為什麼要給系統磁碟區的根目錄一個Everyone的讀、寫權?網站中的ASP檔案運行不需要運行許可權嗎?”問的好,有深度。是這樣的,系統磁碟區如果不給Everyone的讀、寫權的話,啟動電腦的時候,電腦會報錯,而且會提示虛擬記憶體不足。當然這也有個前提----虛擬記憶體是分配在系統硬碟的,如果把虛擬記憶體分配在其他卷上,那你就要給那個卷Everyone的讀、寫權。ASP檔案的運行方式是在伺服器上執行,只把執行的結果傳回終端使用者的瀏覽器,這沒錯,但ASP檔案不是系統意義上的可執行檔,它是由WEB服務的提供者----IIS來解釋執行的,所以它的執行並不需要啟動並執行許可權。