Windows

NTLM 身份驗證和未加入域的電腦訪問域上的共享

  • March 14, 2020

我有一台未加入域的 Win 10 電腦,它訪問已加入域的 Win 2016 伺服器上的共享。第一次連接其中一個共享時,Win 10 客戶端受到挑戰,我提供域憑據。一切都按預期工作。

如果我理解正確的話,這種情況下的連接將使用 NTLM,而不是更安全的協議,例如 Kerberos。這個假設正確嗎?我有一個有效的案例讓這台電腦不加入域,但由於 Mimikatz 等黑客工具,我想避免使用 NTLM。是否有任何最佳實踐來確保未加入域的電腦可以安全地訪問域上的共享?

是的,情況確實如此,儘管您可以採取一些合理的步驟來降低 NTLM 身份驗證的風險…… (但並非沒有風險。)

使用長密碼

NTLM 密碼仍然使用相對較弱的散列方案進行消化,8 個字元的密碼可以在大約 2-3 小時內合理破解。(來源 1 來源 2)傳統的建議是使用至少 14 個字元長的密碼,儘管這不再適用,因為由於 Windows 2000 密碼不再按每 7 個字元序列進行消化,因此基本上密碼長度現在具有線性優勢。(來源) 14 不是一個不合理的長度開始。

強制使用 NTLM 版本 2

如果您還沒有,您可以使用域中的組策略對像在域成員中強制執行此操作,但在您的非域電腦上,您可以使用本地安全策略來設置相同的設置。您需要“僅發送 NTLMv2 響應,拒絕 LM 和 NTLM”選項。話雖如此,當兩台電腦交談時,如果只有一台電腦(例如您的非域電腦)完全拒絕 LM 和 NTLMv1,另一台電腦無論如何都將被迫使用 NTLMv2,因此您可以安全地將此更改應用於您的非域電腦電腦。僅當域電腦配置為不支持 NTLMv2 時,這才會失敗,但這完全是愚蠢的。

在您的非域電腦上,您可以執行以下操作:

  • 通過開始菜單或控制面板打開管理工具
  • 打開本地安全策略
  • 導航到本地策略,然後是安全選項
  • 向下滾動到網路安全:LAN Manager 身份驗證級別
  • 將此設置的值更改為“僅發送 NTLMv2 響應,拒絕 LM & NTLM

當然,您可以圍繞這個選項配置許多其他安全選項,以強制僅使用最嚴格的連接,儘管據我所知,Windows 10 已經為其中的大多數定義了良好的值。

引用自:https://serverfault.com/questions/1006916