域控制器安全
Kerberos域用戶提權漏洞分析
微軟在2014年11月18日發布了緊急補丁,修復了Kerberos域用戶提權漏洞。該漏洞可導致活動目錄整體權限控制受到影響,允許攻擊者將域內任意用戶權限提升至域管理級別。通俗的將,如果攻擊者獲取了域內任何一台計算機的Shell權限,同時知道任意域用戶的用戶名、密碼,即可獲得域管理員權限,進而控制域控制器,最終獲取域權限。
這個漏洞產生的原因是:用戶在向Kerberos密鑰分發中心(KDC)申請TGT(由票據授權服務產生的身份憑證)時,可以偽造自己的Kerberos票據。如果票據聲明自己有域管理員權限,而KDC在處理用戶票據時未驗證票據的簽名,那么,返給用戶的TGT就使普通域用戶擁有了域管理員權限。該用戶可以將TGT發送到KDC,KDC的TGS(票據授權服務)在驗證TGT后,將服務票據發送給該用戶,而該用戶擁有訪問該服務的權限,從而使攻擊者可以訪問域內的資源。
Kerberos域用戶提權漏洞防御
- 開啟Windows Update功能,進行自動修復
- 手動下載補丁包進行修復
- 對域內賬號進行控制,禁止使用弱口令,及時、定期修改密碼
- 在服務器上安裝反病毒軟件,及時更新病毒庫
跨域攻擊
跨域攻擊方法分析
常見的跨域攻擊方法有:常規滲透方法(例如利用Web漏洞跨域獲得權限);利用已知散列值進行哈希傳遞攻擊或票據傳遞攻擊(例如域控制器本地管理員密碼可能相同);利用域信任關系進行跨域攻擊。
利用域信任關系的跨域關系的分析
域信任的作用是解決多域環境中的跨資源共享問題。
域環境不會無條件的接收來自其他域的憑證,只會接收來自受信任的域的驗證。在默認情況下,特定的Windows域中的所有用戶都可以通過該域中的資源進行身份驗證,通過這種方式,域可以為其用戶提供對該域中所有資源的安全訪問機制。如果用戶想要訪問當前域邊界以外的資源,需要使用信任域。
域信任作為域的一種機制,允許另一個域的用戶在通過身份驗證后訪問本域中的資源。同時,域信任利用DNS服務器定位兩個不同的子域的域控制器,如果兩個域中的域控制器都無法找得到另一個域,也就不存在通過域信任關系進行跨域資源共享了。
域信任關系簡介
域信任關系分為單向信任和雙向信任兩種:
- 單向信任是指在兩個域之間創建的信任路徑,即在一個方向上是信任流,在另一個方向上是訪問流。在受信任域和信任域之間的單向信任中,受信任域內的用戶(或者計算機)可以訪問信任域內的資源,但信任域內的用戶無法訪問受信任域內的資源。
- 雙向信任是指兩個單向信任的組合。信任域和受信任域彼此信任,在兩個方向上都有信任流和訪問流。這意味着,可以從兩個方向在兩個域之間傳遞身份驗證請求。活動目錄中的所有域信任關系都是雙向可傳遞的。
域信任關系也可以分為內部信任和外部信任兩種:
- 在默認情況下,使用活動目錄安裝向導將新域添加到域樹或者林根域中,會自動創建雙向可傳遞信任。在現有林中創建域樹時,將建立新的樹根信任,當前域樹中的兩個或者多個域之間的信任關系稱為內部信任。
- 外部信任是指兩個不同林中的域的信任的關系。外部信任是不可傳遞的。但是,林信任關系可能是可傳遞的,也可能是不可傳遞的,者這取決於所使用的的林間信任類型。
防范跨域攻擊
內網中的Web應用比公網中的Web應用更脆弱。放置在公網中的Web應用服務器往往會配置WAF等設備,還會有專業的維護人員定期進行安全檢查。而放置在內網中的Web應用服務器大多為內部辦公室使用,所以,其安全性受重視程度較低,往往會使用弱口令或者存在未及時修復的補丁。
攻擊者在獲取當前域的域控制器的權限后,會檢查域控制器的本地管理員密碼是否與其他域的域控制器本地管理員密碼相同,以及在兩個域之間的網絡沒有被隔離的情況下是否可以通過哈希傳遞進行橫向攻擊等。在很多公司中,雖然為不同的部門划分了不同的域,但域管理員可能是同一批人,因此可能出現域管理員的用戶名和密碼相同的情況。
在日常網絡維護中,需要養成良好的安全習慣,才能有效地防范跨域攻擊。