ติดตามกระบวนการ / โปรแกรมใดที่ทำให้เกิดข้อผิดพลาดในการตรวจสอบสิทธิ์ล่วงหน้าของ Kerberos (รหัส 0x18)


12

เรามีบัญชีโดเมนที่ถูกล็อคผ่านเซิร์ฟเวอร์ 1 ใน 2 การตรวจสอบในตัวจะบอกเราว่ามีมากแค่ไหน (ล็อกเอาต์จาก SERVER1, SERVER2)

บัญชีถูกล็อคภายใน 5 นาทีดูเหมือนว่าจะมีประมาณ 1 คำขอต่อนาที

ในขั้นต้นฉันพยายามเรียกใช้ procmon (จาก sysinternals) เพื่อดูว่ามีการเริ่มกระบวนการใหม่ใด ๆ หลังจากที่ฉันปลดล็อกบัญชีหรือไม่ ไม่มีอะไรน่าสงสัยเกิดขึ้น หลังจากเรียกใช้ procmon บนเวิร์กสเตชันของฉันและยกระดับเป็นเชลล์ UAC (conscent.exe) ดูเหมือนว่าจากสแต็กนั้นntdll.dllและrpct4.dllถูกเรียกเมื่อคุณพยายามรับรองความถูกต้องกับโฆษณา (ไม่แน่ใจ)

อย่างไรก็ตามมีการ จำกัด กระบวนการที่ทำให้เกิดการร้องขอการตรวจสอบสิทธิ์ให้กับ DC ของเราหรือไม่ มันเป็น DC เดียวกันเสมอดังนั้นเราจึงรู้ว่ามันต้องเป็นเซิร์ฟเวอร์ในไซต์นั้น ฉันสามารถลองหาสายใน wireshark แต่ฉันไม่แน่ใจว่าจะแคบลงกระบวนการที่เรียกจริง ๆ

ไม่มีบริการการแมปไดรฟ์หรืองานที่กำหนดเวลากำลังใช้บัญชีโดเมนนั้น - ดังนั้นจึงต้องเป็นสิ่งที่มีการจัดเก็บเครดิตโดเมน ไม่มีเซสชัน RDP ที่เปิดด้วยบัญชีโดเมนนั้นบนเซิร์ฟเวอร์ใด ๆ (เราตรวจสอบแล้ว)

หมายเหตุเพิ่มเติม

ใช่การตรวจสอบการเข้าสู่ระบบ "สำเร็จ / ล้มเหลว" ถูกเปิดใช้งานใน DC ที่เป็นปัญหา - จะไม่มีการบันทึกเหตุการณ์ความล้มเหลวจนกว่าบัญชีจะถูกปิดใช้งานจริง

การขุดเพิ่มเติมแสดงให้เห็นว่าLSASS.exeมีการKERBEROSโทรไปยัง DC ที่มีปัญหาเมื่อบัญชีถูกปลดล็อค มันนำหน้า (โดยทั่วไป) โดย java ซึ่งดูเหมือนว่าจะถูกเรียกโดยvpxd.exeที่เป็นกระบวนการ vCenter แต่เมื่อฉันดูที่ "server2" อื่น ๆ ที่มีการล็อคบัญชีสามารถ (ยัง) เกิดขึ้นจากฉันไม่เคยเห็นการเรียกlsass.exeและกระบวนการ apache เท่านั้นที่จะถูกวางไข่ ความสัมพันธ์เดียวที่ทั้งสองมีคือ SERVER2 เป็นส่วนหนึ่งของคลัสเตอร์ vSphere ของ SERVER1 (เซิร์ฟเวอร์ 1 เป็นระบบปฏิบัติการ vSphere)

ข้อผิดพลาดใน DC

ดังนั้นดูเหมือนว่าทั้งหมดที่ฉันจะได้รับแจ้งจาก AD คือข้อผิดพลาด Kerberos ก่อนการตรวจสอบ ฉันตรวจสอบและไม่มีตั๋วด้วยklistและทำอะไรล้าง ๆ ในกรณี ยังไม่มีความคิดว่าเกิดข้อผิดพลาด Kerberos นี้ขึ้นมาได้อย่างไร

Index              : 202500597
EntryType          : FailureAudit
InstanceId         : 4771
Message            : Kerberos pre-authentication failed.

                     Account Information:
                         Security ID:        S-1-5-21-3381590919-2827822839-3002869273-5848
                         Account Name:        USER

                     Service Information:
                         Service Name:        krbtgt/DOMAIN

                     Network Information:
                         Client Address:        ::ffff:x.x.x.x
                         Client Port:        61450

                     Additional Information:
                         Ticket Options:        0x40810010
                         Failure Code:        0x18
                         Pre-Authentication Type:    2

                     Certificate Information:
                         Certificate Issuer Name:
                         Certificate Serial Number:
                         Certificate Thumbprint:

                     Certificate information is only provided if a certificate was used for pre-authentication.

                     Pre-authentication types, ticket options and failure codes are defined in RFC 4120.

                     If the ticket was malformed or damaged during transit and could not be decrypted, then many fields
                      in this event might not be present.

คำตอบ:


5

เหตุการณ์การเข้าสู่ระบบบันทึกกระบวนการที่พยายามเข้าสู่ระบบ เปิดใช้งานการตรวจสอบการเข้าสู่ระบบล้มเหลว (การตั้งค่าความปลอดภัย> นโยบายท้องถิ่น> นโยบายการตรวจสอบ> เหตุการณ์การเข้าสู่ระบบการตรวจสอบ) ในนโยบายความปลอดภัยท้องถิ่น (secpol.msc) จากนั้นมองหาบันทึกเหตุการณ์ความปลอดภัยสำหรับเหตุการณ์ นอกจากนี้คุณยังสามารถเปิดใช้งานผ่านนโยบายกลุ่มหากเป็นสิ่งที่ดีกว่า

จะมีส่วนข้อมูลกระบวนการซึ่งบันทึกทั้งเส้นทางที่เรียกใช้งานได้และรหัสกระบวนการ

ตัวอย่าง:

Process Information:
    Process ID:         0x2a4
    Process Name:       C:\Windows\System32\services.exe

ดูเหมือนว่าสิ่งนี้มีอยู่ใน GPO ของเราแล้ว ฉันสามารถดูได้เมื่อวัตถุได้รับการแก้ไข / ปลดล็อคในบันทึกความปลอดภัย แต่ฉันไม่เห็นความพยายามที่ไม่ดีหลังจากนั้น
Jaigene Kang

@JaiKang ยกเว้นเซิร์ฟเวอร์ที่มีปัญหาคือ DCs พวกเขาจะไม่ได้รับผลกระทบจากการตั้งค่า "การตรวจสอบการเข้าสู่ระบบล้มเหลว" ในนโยบายตัวควบคุมโดเมนเริ่มต้น เหตุการณ์การเข้าสู่ระบบที่ล้มเหลวจะถูกบันทึกโดยเซิร์ฟเวอร์ที่พยายามตรวจสอบความถูกต้องและจะถูกกำหนดโดย "นโยบายโดเมนเริ่มต้น" หรือนโยบายคอมพิวเตอร์เครื่องอื่นที่ใช้กับเซิร์ฟเวอร์นั้น
มิทช์

ฉันคิดออกจริง ฉันต้องตั้งค่าบางอย่างในส่วน "ขั้นสูง" ของการตั้งค่าตรวจสอบ ฉันอัปเดตโพสต์ดั้งเดิมของฉันด้วยกิจกรรม
Jaigene Kang

@JaiKang การพิสูจน์ตัวตนล่วงหน้าเป็นเพียงกระบวนการที่ใช้ในการตรวจสอบข้อมูลรับรองก่อนส่งกลับโทเค็น ควรมีการตรวจสอบความล้มเหลวบนเซิร์ฟเวอร์ที่พยายามตรวจสอบความถูกต้องซึ่งมีรหัสกระบวนการ
มิทช์

คุณสามารถอธิบายรายละเอียดเกี่ยวกับการตั้งค่า "ขั้นสูง" ที่คุณต้องตั้งได้หรือไม่?
skinneejoe

2

ฉันใช้เวลามากในวันนี้และค้นหาสาเหตุที่แท้จริง ฉันไปในทางที่ผิด - จากข้อมูลที่ถูกจับด้วยเครือข่ายดมกลิ่น (รหัสข้อผิดพลาดของกระบวนการ kerberos คือ 566 = lsass.exe) ฉันขอสรุปข้อมูล

  1. เข้าสู่ระบบเพื่อแก้ไขปัญหาคอมพิวเตอร์เรียกใช้ powershell ด้วยสิทธิ์ที่ยกระดับ

  2. เปิดใช้งานการเข้าสู่ระบบตรวจสอบ

    auditpol /set /subcategory:"logon" /failure:enable

  3. ตรวจสอบแหล่งที่มา

    Get-WinEvent -Logname 'Security' -FilterXPath "*[System[EventID=4625]]" -MaxEvents 2 | fl

ถ้าคุณเห็น:

ข้อมูลกระบวนการ:

หมายเลขกระบวนการผู้โทร: 0x140

ชื่อกระบวนการผู้โทร: C: \ Windows \ System32 \ services.exe

หมายความว่าคุณมีบริการที่เรียกใช้จากบัญชีปัญหาด้วยรหัสผ่านเก่า


2

ฉันพบคำถามเก่านี้ขณะค้นคว้าปัญหาที่แตกต่างกัน แต่สำหรับทุกคนที่มีปัญหาคล้ายกัน:

รหัสความล้มเหลว 0x18 หมายความว่าบัญชีถูกปิดใช้งานหรือถูกล็อคเมื่อลูกค้าพยายามตรวจสอบสิทธิ์

คุณต้องค้นหารหัสเหตุการณ์เดียวกันด้วยรหัสความล้มเหลว 0x24ซึ่งจะระบุความพยายามในการเข้าสู่ระบบที่ล้มเหลวซึ่งทำให้บัญชีล็อค (ซึ่งถือว่าเป็นสิ่งที่เกิดขึ้นเนื่องจากรหัสผ่านแคชไม่ดีอยู่ที่ไหนสักแห่ง)

จากนั้นคุณสามารถดูที่อยู่ลูกค้าในเหตุการณ์เหล่านั้นเพื่อดูว่าระบบใดกำลังส่งข้อมูลรับรองที่ไม่ดี จากตรงนั้นคุณจะต้องคิดออกว่าเป็นบริการที่มีรหัสผ่านเก่าไดรฟ์เครือข่ายที่แมปเป็นต้น

มีรหัสความล้มเหลวที่หลากหลายดังนั้นคุณควรมองหาสิ่งใดนอกเหนือจาก 0x18 เพื่อกำหนดสิ่งที่ทำให้เกิดการล็อคบัญชีหากไม่มีเหตุการณ์ที่มีรหัส 0x24 ฉันเชื่อว่าความล้มเหลวประเภทเดียวที่จะนำไปสู่การปิดระบบคือ 0x24 (รหัสผ่านไม่ดี) แต่ฉันอาจผิด


ขออภัยสำหรับโพสต์ Necro และขอโทษที่ไม่ได้ใส่ความคิดเห็น ... ฉันยังไม่ได้รับ 50p ของฉัน :-) รหัสความล้มเหลว 0x18 เป็นความล้มเหลวก่อนการตรวจสอบสิทธิ์และไม่ได้ระบุบัญชีที่ถูกล็อค บัญชีที่ถูกล็อคอาจเปิดใช้งานรหัส 0x18 เช่นกัน แต่ฉันคาดหวังว่าจะมีรหัส 0x12 แทนข้อมูลรับรองที่ถูกเพิกถอน
Sjm


0

นี่คือจากบันทึกด้านบน ดูเหมือนว่าผู้ริเริ่มของโพสต์นี้ระบุไว้ในความคิดเห็นล่าสุดของเขา Java กำลังเรียกกระบวนการ vpxd.exe

หมายเหตุเพิ่มเติมใช่การตรวจสอบการเข้าสู่ระบบ "สำเร็จ / ล้มเหลว" จะเปิดใช้งานใน DC ที่เป็นปัญหา - จะไม่มีการบันทึกเหตุการณ์ความล้มเหลวจนกว่าบัญชีจะถูกปิดใช้งานจริง

การขุดเพิ่มเติมแสดงให้เห็นว่า LSASS.exe ทำการโทร KERBEROS ไปยัง DC เมื่อมีการปลดล็อคบัญชี มันนำหน้า (โดยทั่วไป) โดย java ซึ่งดูเหมือนว่าจะถูกเรียกโดย vpxd.exe ซึ่งเป็นกระบวนการ vCenter แต่เมื่อฉันดูที่ "server2" อื่น ๆ ที่มีการล็อคบัญชีสามารถ (เช่น) เกิดขึ้นจากฉันไม่เคยเห็นการเรียกไปยัง lsass.exe และกระบวนการ apache เท่านั้นที่จะถูกวางไข่ ความสัมพันธ์เดียวที่ทั้งสองมีคือ SERVER2 เป็นส่วนหนึ่งของคลัสเตอร์ vSphere ของ SERVER1 (เซิร์ฟเวอร์ 1 เป็นระบบปฏิบัติการ vSphere)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.