บทสรุป
การป้องกันCVE-2022-21920จะรวมอยู่ในการอัปเดตของวันที่ 11 มกราคม 2022 Windows และการอัปเดตWindowsเพิ่มเติม การอัปเดตเหล่านี้มีตรรกะที่ปรับปรุงเพื่อตรวจหาการโจมตีแบบดาวน์เกรดของชื่อหลักของบริการ 3 ส่วนเมื่อใช้ โพรโทคอลการรับรองความถูกต้อง Microsoft Negotiate
บทความนี้มีแนวทางเมื่อการรับรองความถูกต้อง Kerberos ไม่สนําเร็จ
ข้อมูลเพิ่มเติม
การติดตั้งการอัปเดตวันที่ 11 มกราคม 2022 Windows และการอัปเดต Windows ในภายหลัง อาจทําให้การรับรองความถูกต้องล้มเหลวใน SPN 3 ส่วนซึ่งการรับรองความถูกต้อง Kerberos ไม่สเร็จ For these environments, it is like that Kerberos authentication for 3-part SPNs has not worked for some time. คุณอาจเห็นเหตุการณ์ต่อไปนี้บนระบบWindowsไคลเอ็นต์เพื่อช่วยตัดส่วน
สกรีนช็อต LSA Event 40970 ที่ระบุการที่ใช้แสดงชื่อที่ใช้แสดงของ NTLM ของ SPN ที่เฉพาะเจาะจงจากสภาพแวดล้อมการทดสอบของ Microsoft |
เวอร์ชันข้อความ LSA Event 40970 |
|
ระบบรักษาความปลอดภัยได้ตรวจพบความพยายามดาวน์เกรดเมื่อติดต่อ SPN 3 ส่วน <ชื่อ SPN> ด้วยรหัสข้อผิดพลาด "ฐานข้อมูล SAM บน Windows Server ไม่มีบัญชีคอมพิวเตอร์ความสัมพันธ์ความน่าเชื่อถือเวิร์กสเตชัน (0x0000018b)" ปฏิเสธการรับรองความถูกต้อง |
การดำเนินการ
Microsoft ขอแนะให้คุณสามารถแยกสาเหตุที่ Kerberos authentication for the 3-part SPN ล้มเหลว สาเหตุทั่วไปบางประการที่ล้มเหลวในการรับรองความถูกต้อง Kerberos มีดังนี้:
-
SPN ที่ถูกใช้เป็นเป้าหมายของการรับรองความถูกต้องจะใช้งานไม่ได้ For more information, see Name Formats for Unique SPNs.
หมายเหตุ: แอปพลิเคชันและ API อาจมีข้อนิยามที่เข้มงวดหรือแตกต่างกันซึ่งถือเป็น SPN ที่ถูกต้องตามกฎหมายในบริการของพวกเขา
ตัวอย่างของ SPN ที่ถูกต้อง
http/webserver
Host/machine2.contoso.com
Ldap/machine1.contoso.com/contoso.com
บริการ/เครื่อง1:10100
ตัวอย่างของ SPN ที่เปลี่ยนรูปแบบผิดปกติSPN
เหตุผล
โฮสต์/โฮสต์/เครื่อง1
โฮสต์/โฮสต์มีแนวโน้มที่จะผิดพลาดเนื่องจาก "โฮสต์" มักจะเป็นคลาสบริการไม่ใช่ชื่อเครื่อง อาจเป็นไปได้ว่า SPN ที่ถูกต้องคือ โฮสต์/เครื่อง1
Ldap/machine/contoso.com:10100
สามารถระบุพอร์ตบนชื่อโฮสต์ ("เครื่อง") และไม่ใช่ชื่ออินสแตนซ์ของบริการ อาจเป็นไปได้ว่า SPN ที่ถูกต้องคือ "ldap/machine:10100/contoso.com"
Ldap/dc-a/DC=CONTOSO,DC=COM
API บางอย่างคาดหวังชื่อ DNS แทนที่จะเป็น FQDN ตัวอย่างเช่น ฟังก์ชัน DsBindA (ntdsapi.h) คาดว่าจะส่งผ่านในชื่อ DNS ถ้าผ่าน FQDN อาจส่งผลให้เกิด SPN ที่เปลี่ยนรูปแบบไม่ได้
SPN ที่ถูกต้องอาจเป็น "ldap/dc-a/contoso.com"เมื่อต้องการแก้ไขปัญหาเหล่านี้ ให้พิจารณาใช้ SPN ที่ถูกต้องหรือลงทะเบียน SPN ที่ใส่ฟอร์มไม่ถูกต้องกับบัญชีบริการที่ถูกต้อง
-
SPN ที่ถูกใช้เป็นเป้าหมายของการรับรองความถูกต้องไม่มีอยู่ เมื่อต้องการแก้ไขปัญหานี้ ให้พิจารณาการลงทะเบียน SPN ไปยังบัญชีบริการที่ถูกต้อง
-
เครื่องไคลเอ็นต์ Windows ไม่มี Line of Sight ไปยังตัวควบคุมโดเมน (เช่น DC ออฟไลน์ อยู่ ไม่พบใน DNS หรือการเข้าถึงพอร์ต KDC ถูกบล็อก)
-
คุณอาจใช้ชื่อ Netรู้ดต่อในสถานการณ์ที่ชื่อ Net NAMES ไม่ใช้งาน ตัวอย่างคือการเข้าถึงทรัพยากรโดเมนจากเครื่องที่ไม่ได้เข้าร่วมโดเมน และการแก้ปัญหาชื่อ Netเปลี่ยนชื่อของ Netจะถูกปิดใช้งานหรือไม่ใช้งานได้
ไมโครซอฟท์ขอแนะนนะให้ใช้งานชื่อผู้ใช้หลัก (UPN) หรือ Domain Name System (DNS) แทนที่จะเป็นชื่อ Netไม่ระบุชื่อ
การลงทะเบียน SPN
ขึ้นอยู่กับการกําหนดค่าแอปพลิเคชันและสภาพแวดล้อมของคุณ SPN อาจถูกกําหนดค่าบนแอตทริบิวต์ ชื่อหลักของ บริการ ของบัญชีบริการหรือบัญชีคอมพิวเตอร์ที่อยู่ในโดเมน Active Directory ที่ไคลเอ็นต์ Kerberos พยายามสร้างการเชื่อมต่อ Kerberos เพื่อให้การรับรองความถูกต้อง Kerberos สามารถใช้งานได้อย่างถูกต้อง SPN เป้าหมายจะต้องถูกต้อง
ดูเอกสารประกอบการปรับใช้หรือผู้ให้บริการสนับสนุนสําหรับแต่ละแอปพลิเคชันที่ระบุสําหรับแนวทางเกี่ยวกับวิธีการเปิดใช้งานการรับรองความถูกต้อง Kerberos ตัวติดตั้งแอปพลิเคชันหรือแอปพลิเคชันบางตัวจะลงทะเบียน SPN โดยอัตโนมัติ มีตัวเลือกต่างๆ มากมายให้ทั้งนักพัฒนาและผู้ดูแลระบบในการลงทะเบียน SPN:
-
เมื่อต้องการลงทะเบียน SPN ด้วยตนเองให้กับอินสแตนซ์ของบริการให้ดูที่ Setspn
-
เมื่อต้องการลงทะเบียน SPN ด้วยการเขียนโปรแกรมให้กับอินสแตนซ์ของบริการ ให้ดูที่ วิธีที่บริการลงทะเบียน SPN ที่ อธิบายวิธีการ:
-
เรียกใช้ฟังก์ชัน DsGetSpnเพื่อสร้าง SPNs เฉพาะอย่างน้อยหนึ่งรายการให้กับอินสแตนซ์ของบริการ For more information, see Name Formats for Unique SPNs.
-
เรียกใช้ฟังก์ชัน DsWriteAccountSpnเพื่อลงทะเบียนชื่อบนบัญชีการเข้าสู่ระบบของบริการ
-
ปัญหาที่ทราบแล้ว
ขณะนี้ไม่มีปัญหาที่ทราบแล้วเกี่ยวกับการอัปเดตนี้