Windows密碼安全問題全解析
Windows默認密碼
當你試圖登錄到Active Directory域的時候,你將需要輸入三項內容:用戶名、密碼和域名。
當域控制器收到這些信息后,會根據列在Active Directory數據庫的用戶名和密碼對信息進行分析。如果密碼是相符合的,那么域控制器就會通過驗證用戶,然后為用戶提供驗證令牌以獲取訪問網絡/域中其他資源的訪問權。
當用戶試圖更改其帳戶密碼時,這種信息也會被發送至域控制器。當用戶輸入新密碼并將新密碼發送至域控制器時,會有相應的政策來確保密碼符合最低安全標準。以下是一些基本的密碼政策(針對域和所有本地用戶帳戶的):
·Windows 密碼(Windows Server 2003域或者更高版本)要求至少有7個字符長度
·密碼必須包含以下四種類型字符中的三種字符類型:大寫字母、小寫字母、數字、特殊符號。
·新密碼必須在42天前生成的,以保持帳戶的有效性。
·在創建24個獨特密碼前,密碼不可以重復使用。
所有這些設置都是在GPO的電腦配置部分進行設置的,位于密碼政策列表下。圖1顯示的是如何設置這些密碼政策。
|
圖1:GPO中的密碼政策(Password Policy)設置位于計算機配置(Computer Configuration)下, 而不是用戶配置(User Configuration)中 |
什么在控制著域密碼政策?
筆者發現,盡管距離微軟公司首次發布Active Directory已經過去9年了,很多IT專業人士仍然搞不清楚密碼政策是如何被控制的以及如何修改這些政策等問題,下面是關于Windows 密碼政策和功能的一些事實:
首先,Default Domain Policy GPO(默認域政策GPO)控制著整個域中所有計算機的密碼政策,這包括域控制器、服務器和整個Active Directory的桌面(已經加入域中)。Default Domain Policy是與域節點相關的,這當然包括域中的所有計算機。
其次,任何連接到域的GPO都可以用于建立和控制密碼政策設置,GPO在域級別擁有最高優先權,這使其在任何與密碼政策設置相沖突的設置中都能起決定作用。
第三,如果GPO連接到組織單位(OU),它將不能控制位于OU內的用戶帳戶。這是目前IT專業人士最常犯的錯誤。密碼政策設置不是基于用戶的,而是基于計算機的,正如圖1所示。
第四,如果GPO鏈接到OU,GPO中創建的密碼政策設置將會影響位于OU的任何計算機上的本地SAM,這將使鏈接到該域的GPO中配置的密碼政策設置發揮主導作用,但是僅限于存儲在這些計算機的本地SAM的本地用戶帳戶。
第五,如果GPO鏈接到默認域控制器OU,它將不會控制存儲在域控制器的用戶Active Directory數據庫。修改域用戶帳戶的密碼政策設置的唯一途徑位于鏈接到該域的GPO內。
第六,大多數現有的Windows Active Directory企業版都支持LanManager(LM)功能,LM是一個非常舊的驗證協議,不太能保證密碼和生成的密碼hash(用于支持該協議的驗證)的安全性,有兩種GPO設置(實際上是注冊表設置)可以控制是否支持LM以及是否存儲LM hash,這將在接下來的文章中進行探討。
總結
Active Directory域的默認密碼政策設置并不可怕,不過仍然需要改進。默認設置是最初設置的,并被保存在默認域政策GPO中,而這是與域節點相連的。對于windows 2000和Server 2003域而言,只能有一個密碼政策,這意味著所有的用戶(IT人員、開發人員、管理人員、人力資源等)都擁有相同的密碼政策控制,這是非常不安全的??梢酝ㄟ^鏈接到OU(這些計算機帳戶位于AD中)的GPO對服務器和桌面的本地SAM進行修改,這些GPO設置只能控制本地用戶帳戶,而不是域用戶帳戶。LM是一種舊的不安全的驗證協議,盡可能禁用這種協議。
【編輯推薦】