亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行Windows NTLM篡改漏洞分析

發布時間:2021-12-24 21:33:43 來源:億速云 閱讀:223 作者:柒染 欄目:安全技術

如何進行Windows NTLM篡改漏洞分析,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

2019年6月11日,Microsoft發布了六月份安全補丁更新。在該安全更新補丁中,對CVE-2019-1040漏洞進行了修復 。攻擊者利用該漏洞可以繞過NTLM中的MIC(Message Integrity Code)。攻擊者可以修改已經協商簽名的身份驗證流量,然后中繼到另外一臺服務器,同時完全刪除簽名要求。通過該攻擊方式可使攻擊者在僅有一個普通域賬號的情況下,運程控制域中任意機器(包括域控服務器)。

漏洞背景

NTLM中繼是對Active Directory環境最常見的攻擊方式之一。針對此攻擊技術一種重要的緩解措施是進行服務器簽名。當用戶與服務器建立了簽名會話,攻擊者如果無法檢索所需的會話密鑰,就無法劫持會話。但是在默認情況下,只有域控服務器會強制執行SMB簽名,這導致在許多情況下會使得域中其他敏感服務器容易受到攻擊。

如何進行Windows NTLM篡改漏洞分析

圖1 NTLM中繼

在SMB中,通過在NTLM_NEGOTIATE消息中設置”NTLMSSP_NEGOTIATE_SIGN”標志進行協商會話簽名。如果攻擊者試圖中繼這種NTLM身份驗證,他們將需要確保不協商簽名。一種方法是通過中繼到NTLM消息不管理會話完整性的協議,如LDAPS或者HTTPS。但是這種協議并非每一臺機器都會打開。而SMB協議在局域網中是經常打開的,且存在較多漏洞容易造成代碼執行。因此,NTLM中繼攻擊的重點就在于將SMB身份驗證請求轉發給其他SMB服務器。為成功執行此類中繼,攻擊者需要修改NTLM_NEGOTIATE消息并取消設置”NTLMSSP_NEGOTIATE_SIGN”標志。

如何進行Windows NTLM篡改漏洞分析

圖2 NTLM_NEGOTIATE消息指示是否協商SMB簽名

在SMB中,默認情況下,通信的雙方都支持簽名,則必須進行會話簽名。為了保證在NTLM協商階段不被攻擊者篡改數據,Microsoft在最終的NTLM身份驗證消息中添加了一個額外字段——MIC。但是,微軟對該字段的處理方式存在紕漏:允許無MIC的驗證消息。

MIC(Message Interity Code)消息完整性驗證

NTLM身份驗證由3種消息類型組成:NTLM_NEGOTIATIE,NTLM_CHALLENGE,NTLM_AUTHENTICATE。為確保在傳輸過程中不會被惡意篡改,在NTLM_AUTHENTICATE消息中添加了一個額外的MIC字段。MIC是使用會話密鑰應用于所有3個NTLM消息的串聯的HMAC_MD5,該會話密鑰只有啟動了認證的賬戶和目標服務器知道。因此,任何試圖篡改其中一條消息的行為都無法生成相應的MIC,保證傳輸的安全性。

如何進行Windows NTLM篡改漏洞分析

圖3 “MIC”字段可以防止NTLM消息修改

MIC存在于NTLM_AUTHENTICATE消息的’msvAvFlag’字段,標志0x2表示該消息包括MIC。它應該保護MIC被刪除。但是,微軟Microsoft服務器無法完全執行該機制,而且允許了無MIC的NTLM_AUTHENTICATE消息。這為后續NTLM中繼攻擊提供了條件。

如何進行Windows NTLM篡改漏洞分析

圖4 'flags'字段指示NTLM_AUTHENTICATE消息包括MIC

漏洞分析

4.1 攻擊思路

由于微軟允許無MIC的NTLM_AUTHENTICATE消息,攻擊者可以在獲取到合法的身份驗證后進行中繼。主要是將SMB中繼到LDAP。

首先向Windows服務器(如Exchange)發起身份驗證,在獲得合法的驗證后將該身份驗證通過LDAP中繼到域控服務器,就可以在ActiveDirective中以中繼的受害者權限執行一系列操作。

在Exchange場景下,可以獲得DCSync權限,該種權限是PrivExchange漏洞利用的基礎

在Resource Based Constrained Kerberos場景下,可以利用該種機制獲得受害主機的權限,進而以管理員權限訪問服務器。

對需要中繼的身份驗證的MIC的處理流程如下:

1. 取消設置NTLM_NEGOTIATE消息中的簽名標志(NTLMSSP_NEGOTIATE_ALWAYS_SIGN,NTLMSSP_NEGOTIATE_SIGN)

2. 從NTLM_AUTHENTICATE消息中刪除MIC

3. 從NTLM_AUTHENTICATE消息中刪除版本字段(刪除MIC字段而不刪除版本字段將導致錯誤)

4. 取消設置NTLM_AUTHENTICATE消息中的以下標志:NTLMSSP_NEGOTIATE_ALWAYS_SIGN,NTLMSSP_NEGOTIATE_SIGN,NEGOTIATE_KEY_EXCHANGE,NEGOTIATE_VERSION。

4.2 攻擊途徑

1. 使用任意AD賬戶,通過SMB連接到受害主機Exchange服務器,觸發SpoolService的一個bug。然后使用網上公開的ntlmrelayx.py腳本中繼到LDAP。使用中繼的LDAP身份驗證,攻擊者可以獲得DCSync權限,然后使用DCSync轉儲AD中所有的密碼哈希。

2. 使用任意AD賬戶,通過SMB連接到受害主機Exchange服務器,觸發SpoolService的一個bug。然后使用網上公開的ntlmrelayx.py腳本中繼到LDAP。攻擊者使用中繼的LDAP身份驗證,獲取Resource Based Constrained Kerberos中的相關權限,然后攻擊者以受害主機服務器上的任意用戶進行身份驗證。成功驗證后,可以進一步進行下一步攻擊,甚至控制整個Wshoindows域。

影響范圍

目前受影響的Windows版本:

Windows 10 for 32-bit SystemsWindows 10 for x64-based SystemsWindows 10 Version 1607 for 32-bit SystemsWindows 10 Version 1607 for x64-based SystemsWindows 10 Version 1703 for 32-bit SystemsWindows 10 Version 1703 for x64-based SystemsWindows 10 Version 1709 for 32-bit SystemsWindows 10 Version 1709 for ARM64-based SystemsWindows 10 Version 1709 for x64-based SystemsWindows 10 Version 1803 for 32-bit SystemsWindows 10 Version 1803 for ARM64-based SystemsWindows 10 Version 1803 for x64-based SystemsWindows 10 Version 1809 for 32-bit SystemsWindows 10 Version 1809 for ARM64-based SystemsWindows 10 Version 1809 for x64-based SystemsWindows 10 Version 1903 for 32-bit SystemsWindows 10 Version 1903 for ARM64-based SystemsWindows 10 Version 1903 for x64-based SystemsWindows 7 for 32-bit Systems Service Pack 1Windows 7 for x64-based Systems Service Pack 1Windows 8.1 for 32-bit systemsWindows 8.1 for x64-based systemsWindows RT 8.1Windows Server 2008 for 32-bit Systems Service Pack 2Windows Server 2008 for 32-bit Systems Service Pack 2 (Server Core installation)Windows Server 2008 for Itanium-Based Systems Service Pack 2Windows Server 2008 for x64-based Systems Service Pack 2Windows Server 2008 for x64-based Systems Service Pack 2 (Server Core installation)Windows Server 2008 R2 for Itanium-Based Systems Service Pack 1Windows Server 2008 R2 for x64-based Systems Service Pack 1Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)Windows Server 2012Windows Server 2012 (Server Core installation)Windows Server 2012 R2Windows Server 2012 R2 (Server Core installation)Windows Server 2016Windows Server 2016 (Server Core installation)Windows Server 2019Windows Server 2019 (Server Core installation)Windows Server, version 1803 (Server Core Installation)Windows Server, version 1903 (Server Core installation)

修復建議

1. 由于針對該漏洞的 poc已在網上公開流傳,強烈建議廣大用戶及時安裝微軟針對該漏洞的安全更新補丁:

https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2019-1040

2. 其他緩解措施

以下措施可以在無法及時安裝安全更新補丁時作為臨時解決方案,為確保安全,仍然建議廣大用戶在條件允許的情況下及時進行補丁安裝:

1)開啟域中所有服務器的強制SMB 簽名 (在 Windows 域 中 ,默認只有域控服務器開啟了強制 SMB 簽名)

2)對LDAP over TLS強制執行LDAP簽名和LDAP通道綁定來阻止NTLM中繼到LDAP

3)開啟EPA,強制所有Web服務器(OWA,ADFS)只接受EPA的請求

4)開啟所有重要服務器(比如所有 Exchange 服務器)上相關應用的Channel Binding

5)減少使用NTLM

6)如無特殊需求,禁用Printer Spooler服務

關于如何進行Windows NTLM篡改漏洞分析問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

神农架林区| 简阳市| 大城县| 泸西县| 洪雅县| 泗洪县| 西贡区| 兴义市| 济阳县| 三原县| 定安县| 佛山市| 金平| 菏泽市| 策勒县| 华安县| 沙坪坝区| 云龙县| 射阳县| 淄博市| 肥城市| 安化县| 梅州市| 鲁山县| 济宁市| 南安市| 鄂尔多斯市| 卫辉市| 桦川县| 邢台县| 洛南县| 临朐县| 浦东新区| 朝阳区| 仁怀市| 西乌珠穆沁旗| 龙游县| 弥勒县| 黄浦区| 新蔡县| 务川|