密碼威脅評估
在實作可保護密碼的程序代碼之前,最好先分析特定環境,瞭解攻擊者可能嘗試滲透軟體防禦的方式。
從分析您的網路或系統架構開始。 以下是一些範例:
- 必須保護的密碼數目。 需要密碼才能登入本機計算機嗎? 用來登入網路的相同密碼嗎? 密碼是否傳播到網路上的多個伺服器? 必須容納多少個密碼?
- 將使用的網路類型(如果有的話)。 網路是否使用公司目錄系統實作,以及其密碼架構是否使用? 是否有任何物件儲存未加密的密碼?
- 開啟與關閉的網路。 網路是否獨立或對外開放? 如果是,它是否受到防火牆的保護?
- 遠端訪問。 使用者是否需要從遠端位置存取網路?
分析系統或網路架構之後,您就可以開始分析攻擊者如何嘗試攻擊它。 以下是一些可能性:
- 從電腦的登錄讀取未加密的密碼。
- 讀取軟體中硬式編碼的未加密密碼。
- 從計算機的交換代碼頁讀取未加密的密碼。
- 從程式的事件記錄檔讀取密碼。
- 從包含純文本密碼之對象的擴充Microsoft Active Directory 目錄服務架構讀取密碼。
- 在需要密碼的程式上執行調試程式。
- 猜猜密碼。 可能會使用數種技術中的任何一種。 例如,攻擊者可能會知道使用者的某些個人資訊,並嘗試從該資訊猜測密碼(例如配偶/伴侶或子女的名稱)。 或者,可能會嘗試暴力密碼方法,其中會嘗試字母、數位和標點符號的所有組合(只有在使用簡短密碼的情況下才可行)。
比較可能的攻擊方法與系統或網路架構可能會顯示安全性風險。 此時,可以為每個風險建立風險因素,而且風險因素可用來分級修正。