วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (2023)

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

วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (1)

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

โพสต์ในบล็อกนี้มีไว้สำหรับผู้เชี่ยวชาญด้านไอทีและทีม Infosec Red & Blue ที่ทำงานในองค์กร ไม่ใช่ผู้ใช้ตามบ้าน ฉันถือว่าคุณมีความคุ้นเคยพื้นฐานกับ Windows, เครือข่าย TCP/IP,ธุรกิจขนาดกลางและขนาดย่อม, เคอร์เบรอส,NTLM,บริการโดเมน Active Directory, &นโยบายกลุ่ม. โพสต์นี้จะกลายเป็น - หากไม่มี Nedisms และรูปคนเลวที่ติดวิญญาณ - บทความทางเทคนิคเกี่ยวกับdocs.microsoft.comเดือนหน้า.

คุณไม่จำเป็นต้องดำเนินการตามตัวเลือกทั้งหมดที่ฉันพูดถึงในโพสต์นี้เพื่อเริ่มเห็นผลลัพธ์ที่จับต้องได้ การปรับใช้การรักษาความปลอดภัยของข้อมูลไม่ใช่การวิ่งมาราธอน แต่เป็นการตระเตรียมสำหรับการวิ่งมาราธอน เสร็จแล้วก็ไปอ่านได้ที่นี่ครับBeyond the Edge: วิธีรักษาความปลอดภัยการรับส่งข้อมูล SMB ใน Windows

แดงนั่นเป็นถ้อยคำที่ลึกซึ้ง หรือใบ้. ไม่เป็นไร มาทำสิ่งนี้กันเถอะ!

ผู้โจมตีอาจโจมตีคุณด้วยวิธีต่างๆ ดังนี้:

  1. การสกัดกั้นหรือแก้ไขข้อมูลที่ผู้ใช้คัดลอก อ่าน หรือเขียนจากระยะไกล สิ่งเหล่านี้อาจเป็นการจารกรรมระดับอุตสาหกรรมหรือระดับรัฐ แบล็กเมล์ หรือการค้นหาข้อมูลความปลอดภัยที่ละเอียดอ่อนที่จัดเก็บไว้ในไฟล์ การใช้งาน SMB ส่วนบุคคลส่วนใหญ่จะเป็นระบบไฟล์ระยะไกลสำหรับผู้ใช้ ไม่ต่างจากฮาร์ดไดรฟ์ในเครื่อง องค์กรส่วนใหญ่เก็บข้อมูลส่วนใหญ่ไว้ในไฟล์ในการแชร์ SMB
  2. การถ่ายทอดและจับภาพความท้าทายของ NTLM หรือตั๋ว Kerberos ที่ไคลเอนต์ส่งเพื่ออนุญาตการตรวจสอบสิทธิ์การเชื่อมต่อ SMB ด้วยการโน้มน้าวไคลเอนต์ให้เชื่อมต่อกับเซิร์ฟเวอร์ที่เป็นอันตราย - บางทีโดยการหลอกให้พวกเขาเปิดทางลัดในอีเมลหรือการแชร์ที่ไม่ปลอดภัย - ผู้โจมตีอาจได้รับข้อมูลรับรอง NTLM เพื่อบังคับใช้อย่างดุร้ายหรือนำกลับมาใช้ที่อื่น
  3. ทำให้ไคลเอนต์เชื่อว่ารหัสปฏิบัติการที่เรียกใช้โดยอัตโนมัตินั้นอยู่บนเซิร์ฟเวอร์ที่เชื่อถือได้ ตัวอย่างเช่น การเลียนแบบตัวควบคุมโดเมนที่ไคลเอ็นต์ใช้เพื่อเรียกใช้สคริปต์การเข้าสู่ระบบหรือเริ่มต้นระบบที่มีเพย์โหลดที่เป็นอันตราย

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

ต่อไปนี้เป็นขั้นตอนที่แนะนำ 10 ขั้นตอนที่คุณสามารถทำได้:

  • ติดตั้งโปรแกรมปรับปรุง
  • ลบ SMB1
  • ลบการรับรองความถูกต้องของแขกและทางเลือกอื่น
  • ปิดใช้งานโปรโตคอล WebDAV
  • จำกัดปลายทาง SMB ขาออกด้วยไฟร์วอลล์
  • ใช้ UNC Hardening เพื่อกำหนดให้มีการลงนาม การเข้ารหัส และการรับรองความถูกต้องร่วมกัน
  • ใช้ SMB 3.1.1
  • จัดทำแผนที่ไดรฟ์ได้ทันทีด้วยการลงนามหรือการเข้ารหัสตามคำสั่ง
  • บล็อก NTLM และเพิ่มความปลอดภัยของ Kerberos

นับบรรทัดสุดท้ายเป็นสองถึงจะถึงเวทย์มนตร์ 10. ชี่ๆๆๆ! :)

ติดตั้งโปรแกรมปรับปรุง

ตรวจสอบให้แน่ใจว่าคุณอัปเดตไคลเอนต์และเซิร์ฟเวอร์ Windows ด้วยการอัปเดตความปลอดภัยที่ Microsoft จัดหาให้ซึ่งเผยแพร่ทุกเดือนไมโครซอฟต์อัพเดต,บริการอัพเดตเซิร์ฟเวอร์ Windows,ตัวจัดการการกำหนดค่าจุดสิ้นสุดของ Microsoft,แค็ตตาล็อกการอัปเดตของ Microsoft) และการจัดการการอัปเดต Azure. การอัปเดตความปลอดภัยเป็นการป้องกันที่ดีที่สุดต่อช่องโหว่ SMB ที่ทราบ และคุณควรใช้ทันทีที่กระบวนการทดสอบและควบคุมการเปลี่ยนแปลงอนุญาต เช่นเดียวกับผลิตภัณฑ์ของบริษัทอื่นที่ใช้ SMB ติดต่อผู้จำหน่ายเพื่อขอวิธีการอัพเดตและแก้ไขอุปกรณ์และซอฟต์แวร์เหล่านั้น

(Video) ประเมินความเสี่ยงทางด้าน Cyber ด้วย Security Rating - SecurityScoreCard

สังเกตว่าฉันไม่ได้พูดว่า “ถ้าคุณไม่แพทช์วันอังคารนั้น คุณก็จะงี่เง่า” ฉันกำลังพูดว่าแพทช์เป็นเร็วๆ นี้เท่าที่จะทำได้ การป้องกันเชิงลึกจะทำให้คุณมีพื้นที่ว่างในการรับมือกับการปะทุ กองเรือขนาดใหญ่ และหนี้ทางเทคนิค สังเกตว่าฉันเป็นอย่างไรก็ไม่เช่นกัน พูดว่า“รอหกเดือนเสมอ” เพราะฉันไม่ได้ขึ้นอยู่กับการคลิกโฆษณาจึงจะใช้งานได้

ลบ SMB1

ใครจะได้เห็นสิ่งนี้มา? ภาษาถิ่น SMB1 ย้อนกลับไปในทศวรรษ 1980 ด้วย IBM และ Microsoft DOS ซึ่งเป็นช่วงเวลาที่ระบบรักษาความปลอดภัยคอมพิวเตอร์ไม่มีอยู่จริง มีปัญหาทางสถาปัตยกรรมที่สำคัญเกี่ยวกับการโจมตีแบบสกัดกั้น:

  • SMB1 ขึ้นอยู่กับเซิร์ฟเวอร์ในการบอกไคลเอ็นต์ว่าควรใช้ความสามารถด้านความปลอดภัยใด เซิร์ฟเวอร์ที่เป็นอันตรายซึ่งแอบอ้างเป็นเซิร์ฟเวอร์ของคุณสามารถตอบกลับว่า "ไม่ปลอดภัย" และไคลเอ็นต์จะเชื่อมต่ออย่างไม่ปลอดภัย
  • SMB1 ไม่ได้หยุดผู้ไม่ประสงค์ดีจากการเปลี่ยนแปลงการตอบสนองความสามารถด้านความปลอดภัย แม้ว่าจะมาจากเซิร์ฟเวอร์ที่ถูกต้องก็ตาม
  • SMB1 จะพยายามตรวจสอบข้อมูลประจำตัวผู้ใช้เสมอ แต่ถ้ามีความล้มเหลวก็จะลองแขกข้อมูลรับรอง เซิร์ฟเวอร์ที่เป็นอันตรายซึ่งแอบอ้างว่าเป็นขององค์กรของคุณ - และไม่มีข้อมูลประจำตัวของคุณตั้งแต่แรก - สามารถอนุญาตการเชื่อมต่อแล้วขโมยไฟล์ของคุณหรือรันโค้ดที่เป็นอันตรายจากไฟล์ที่เซิร์ฟเวอร์จัดเตรียมไว้ให้
  • SMB2 และใหม่กว่ามีคุณสมบัติความปลอดภัยที่มีประสิทธิภาพมากมาย ผู้ประสงค์ร้ายที่สามารถสกัดกั้นการสนทนา SMB Dialect เริ่มต้นสามารถตอบกลับด้วย "เซิร์ฟเวอร์นี้รองรับเฉพาะ SMB1" จากนั้นไคลเอนต์จะเจรจาโปรโตคอลที่ไม่ปลอดภัยนั้น

ถ้าคุณไม่รู้ ฉันคือยมทูตแห่ง SMB1

สารละลาย:ถอนการติดตั้งหรือปิดใช้งานไคลเอ็นต์ SMB1 บนอุปกรณ์ทุกเครื่องในองค์กรของคุณ โดยไม่คำนึงถึงระบบปฏิบัติการ สำหรับอุปกรณ์ Windows ให้ตรวจสอบวิธีตรวจจับ เปิดใช้งาน และปิดใช้งาน SMBv1, SMBv2 และ SMBv3 ใน Windows และ Windows Server. นอกจากนี้ คุณควรลบหรือปิดใช้งานเซิร์ฟเวอร์ SMB1 ในทุกอุปกรณ์เพื่อเป็นแนวทางปฏิบัติที่ดีที่สุด เนื่องจากเซิร์ฟเวอร์มีปัญหาด้านความปลอดภัยทางสถาปัตยกรรมของตัวเอง เริ่มต้นใน Windows 10 และ Windows Server 2019 โปรโตคอล SMB1 คือไม่ได้ติดตั้งตามค่าเริ่มต้นอีกต่อไปในรุ่นส่วนใหญ่และจะถูกถอนการติดตั้งโดยอัตโนมัติหากไม่ได้ใช้กับอุปกรณ์ผู้บริโภคและธุรกิจขนาดเล็ก รีวิวสำนักหักบัญชี SMB1เพื่อดูว่าคุณเป็นเจ้าของผลิตภัณฑ์ของบริษัทอื่นที่ต้องใช้ SMB1 หรือไม่ ให้อัปเกรดหรือเปลี่ยนใหม่

ลบการรับรองความถูกต้องของผู้เยี่ยมชมและทางเลือกสำรอง

ในการใช้งาน Windows และการใช้งาน SMB1 อื่นๆ หากข้อมูลประจำตัวล้มเหลวเนื่องจากรหัสผ่านไม่ถูกต้อง ไคลเอ็นต์ SMB จะพยายามเข้าถึงแบบผู้เยี่ยมชม นี่เป็นอีกหนึ่งสิ่งประดิษฐ์ดั้งเดิมในยุคก่อนโดเมน NT และ Active Directory ซึ่งกลุ่มงานมักใช้การเข้าถึงแบบผู้เยี่ยมชม สำหรับการโจมตีแบบสกัดกั้น ผู้ประสงค์ร้ายจะสร้างเซิร์ฟเวอร์และหลอกให้ผู้ใช้เข้าถึงเซิร์ฟเวอร์ รหัสผ่านผู้ใช้จะล้มเหลว แต่ข้อมูลประจำตัวของแขกจะทำงานและผู้ใช้เชื่อมต่อและเข้าถึงไฟล์ที่เป็นอันตราย SMB2 และใหม่กว่ายังอนุญาตพฤติกรรมนี้ แต่แตกต่างจาก SMB1 ตรงที่คุณสามารถปิดการใช้งานได้ และเราได้ทำเช่นนั้นตามค่าเริ่มต้นในระบบปฏิบัติการเวอร์ชันใหม่กว่า

สารละลาย:ปิดใช้งานการใช้ทางเลือกสำรองของแขก SMB ผ่าน Windows 10 และ Windows Server 2016 และระบบปฏิบัติการใหม่กว่า

หากต้องการหยุดการใช้ทางเลือกของแขกบนอุปกรณ์ Windows ให้กำหนดค่านโยบายกลุ่มต่อไปนี้:

การกำหนดค่าคอมพิวเตอร์\เทมเพลตการดูแลระบบ\เครือข่าย\เวิร์กสเตชัน Lanman

"เปิดใช้งานการเข้าสู่ระบบของผู้เยี่ยมชมที่ไม่ปลอดภัย" = ปิดใช้งาน

วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (2)

หรือตั้งค่ารีจิสทรี DWORD ต่อไปนี้:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters
"AllowInsecureGuestAuth"=0

เริ่มต้นใน Windows 10 เวอร์ชัน 1709 Enterprise Edition และ Windows Server เวอร์ชัน 1709ทางเลือกสำรองของแขกปิดอยู่ตามค่าเริ่มต้น. Windows 10 และ Windows Server 2016 เป็นรุ่นแรกที่รองรับตัวเลือกนี้

Windows เองไม่ได้เปิดใช้งานการรับรองความถูกต้องของผู้เยี่ยมชมในส่วนประกอบเซิร์ฟเวอร์ SMB ตั้งแต่ Windows 2000 และการเชื่อมต่อกับเซิร์ฟเวอร์ Windows จะไม่ใช้ผู้เยี่ยมชมเว้นแต่ผู้ดูแลระบบจะเปิดใช้งานโดยเจตนา การใช้งานเซิร์ฟเวอร์และอุปกรณ์ SMB ของบริษัทอื่นหลายรายทำให้เกิดพฤติกรรมของแขกได้ แต่ที่แย่กว่านั้นคือ อุปกรณ์จัดเก็บข้อมูลสำหรับผู้บริโภคจำนวนมากตั้งใจที่จะพึ่งพาแขกในเรื่อง "ความสะดวกในการใช้งาน" ไม่มีอะไรที่เหมือนกับโฟลเดอร์รูปภาพของใครบางคนบน Wi-Fi ที่ไม่ปลอดภัยและไม่มีรหัสผ่าน SMB

ปิดใช้งานโปรโตคอล WebDAV

ที่การเขียนและการกำหนดเวอร์ชันแบบกระจายเว็บ (WebDAV)protocol เป็นส่วนขยายของ HTTP ในปี 1990 สำหรับการเข้าถึงไฟล์ที่กำหนดไว้IETF RFC 4918. Windows ใช้ WebDAV ผ่านบริการ "WebClient" เมื่อใช้ WebDAV การเข้าถึงเส้นทาง UNC จะถูกแปลงเป็น HTTP เพื่อให้สามารถเข้าถึงเว็บเซิร์ฟเวอร์ โดยเปิดเผยไฟล์ เซิร์ฟเวอร์อาจใช้ HTTPS WebDAV แต่หลายเครื่องไม่ได้ใช้ และโดยค่าเริ่มต้น Webclient จะเชื่อมต่อกับ HTTP/80 แทน HTTPS/443 เว้นแต่ผู้ใช้จะระบุ "@SSL" ที่ส่วนท้ายของชื่อเซิร์ฟเวอร์ในเส้นทาง UNC

ไม่สามารถอัปเกรดการเชื่อมต่อเป็น TLS ได้อย่างน่าเชื่อถือ เนื่องจากเซิร์ฟเวอร์จำนวนมากไม่มีการกำหนดค่าใบรับรอง หรือแม้แต่รองรับ WebDAV ผ่าน HTTPS ซึ่งหมายความว่าการเชื่อมต่อ WebDAV ส่วนใหญ่สำหรับเส้นทาง UNC จะไม่ถูกเข้ารหัส นอกจากนี้ยังเป็นไปได้ที่ไคลเอนต์จะได้รับการกำหนดค่าให้ต้องมีการลงนามหรือการเข้ารหัส SMB จากนั้นพบกับเซิร์ฟเวอร์ที่เปิดใช้งาน WebDAV บนเครือข่ายท้องถิ่นซึ่งไม่อนุญาตอย่างใดอย่างหนึ่ง ซึ่งจะบังคับให้ไคลเอนต์ Windows ปรับลดรุ่นเป็นการเชื่อมต่อ WebDAV ที่ไม่ได้เข้ารหัส

สารละลาย:ปิดใช้งานบริการ WebClient ใน Windows

หากต้องการหยุดการใช้ WebDAV บนอุปกรณ์ Windows ให้กำหนดค่าการกำหนดลักษณะนโยบายกลุ่มต่อไปนี้:

การกำหนดค่าคอมพิวเตอร์\การตั้งค่า\การตั้งค่าแผงควบคุม\บริการ

ชื่อบริการ: Webclient

เริ่มต้น: ปิดการใช้งาน

การดำเนินการบริการ: หยุดบริการ

หรือคุณสามารถใช้เซสชัน PowerShell ที่ยกระดับได้:

ตั้งค่าบริการ WEBCLIENT - ประเภทการเริ่มต้นถูกปิดใช้งาน
หยุดบริการ WEBCLIENT

บนเซิร์ฟเวอร์ Windows นั้น WebClient เป็นคุณสมบัติที่ถอดออกได้ เรียกว่า "ตัวเปลี่ยนเส้นทาง WebDAV" คุณสามารถถอนการติดตั้งได้ด้วย Windows Admin Center, Server Manager หรือ Powershell ไม่ได้ติดตั้งตามค่าเริ่มต้น

หมายเหตุ: การเปิดใช้งาน UNC hardening (ดูด้านล่าง) ยังป้องกันการใช้ WebDav อีกด้วย นกสองตัวและทั้งหมดนั้น

จำกัดปลายทาง SMB ขาออกด้วยไฟร์วอลล์

เคล็ดลับใดๆ ที่ส่งผู้ใช้ไปยังเซิร์ฟเวอร์ปลายทางที่ชั่วร้าย เช่น การส่งอีเมลลิงก์ UNC หรือการวางทางลัดไปยังการแบ่งปัน SMB ที่เป็นมิตร นับเป็นการโจมตีแบบสกัดกั้นในหนังสือของฉัน หนึ่งในมาตรการป้องกันที่ดีที่สุดที่คุณสามารถทำได้คือทำให้แน่ใจว่าไม่มีทางที่จะถูกเปลี่ยนเส้นทางไปยังเซิร์ฟเวอร์ที่เป็นอันตรายตั้งแต่แรก โดยการควบคุม Defender และไฟร์วอลล์ Edge ของคุณ

สารละลาย:ทำตามคำแนะนำที่ฉันให้ไว้Beyond the Edge: วิธีรักษาความปลอดภัยการรับส่งข้อมูล SMB ใน Windowsเพื่อหยุดการเข้าถึงเซิร์ฟเวอร์ที่ไม่ได้เป็นส่วนหนึ่งขององค์กรของคุณโดยเฉพาะ เพียงเท่านี้ นั่นคือวิธีแก้ปัญหาทั้งหมด :)

ใช้ UNC Hardening เพื่อกำหนดให้มีการลงนาม การเข้ารหัส และการรับรองความถูกต้องร่วมกัน

UNC Hardening เป็นตัวเลือกความปลอดภัย SMB ที่เพิ่มในปี 2558 ให้กับ Windows Vista/Windows Server 2008 และระบบปฏิบัติการเวอร์ชันใหม่กว่าทั้งหมด ได้เปลี่ยนโมเดลการรักษาความปลอดภัยของ SMB เพื่อเริ่มใช้ข้อกำหนดด้านความปลอดภัยที่ไคลเอ็นต์กำหนด แทนที่จะเป็นข้อกำหนดที่เซิร์ฟเวอร์กำหนดแบบเดิม UNC Hardening เพิ่มความสามารถในการตรวจสอบเส้นทาง UNC สำหรับการตั้งค่าความปลอดภัยที่ได้รับคำสั่ง และปฏิเสธที่จะเชื่อมต่อหากเซิร์ฟเวอร์ไม่สามารถตอบสนองได้ มันเป็นเครื่องมือที่มีประสิทธิภาพสูงในการป้องกันการโจมตีด้วยการเปลี่ยนเส้นทาง เนื่องจากไคลเอนต์สามารถตรวจสอบตัวตนของเซิร์ฟเวอร์เพื่อป้องกันการโจมตีด้วยการปลอมแปลง รวมถึงรับประกันว่าเพย์โหลดของ SMB จะไม่ถูกดัดแปลงหรืออ่าน และปฏิเสธที่จะเชื่อมต่อ

สารละลาย:เปิดใช้งาน UNC hardening สำหรับการแชร์ SMB บางส่วนหรือทั้งหมดในสภาพแวดล้อมของคุณ โดยใช้ขั้นตอนในKB3000483ภายใต้หัวข้อ "การกำหนดค่าการเข้าถึง UNC Hardened ผ่านนโยบายกลุ่ม" คุณสามารถระบุรูปแบบเส้นทาง UNC ได้หลากหลาย:

  • \\<เซิร์ฟเวอร์>\<แบ่งปัน> - รายการการกำหนดค่าใช้กับการใช้ร่วมกันที่มีชื่อที่ระบุบนเซิร์ฟเวอร์ที่ระบุ
  • \\*\<แชร์> - รายการการกำหนดค่าใช้กับการใช้ร่วมกันที่มีชื่อที่ระบุบนเซิร์ฟเวอร์ใดๆ
  • \\<เซิร์ฟเวอร์>\* - รายการการกำหนดค่าใช้กับการใช้ร่วมกันบนเซิร์ฟเวอร์ที่ระบุ

สำหรับรายชื่อเซิร์ฟเวอร์ของคุณที่ใช้ SMB คุณอาจต้องการอ้างอิงถึงโพสต์ก่อนหน้าของฉันBeyond the Edge: วิธีรักษาความปลอดภัยการรับส่งข้อมูล SMB ใน Windows.

คุณควรต้องมีการรับรองความถูกต้องซึ่งกันและกัน (Kerberos) และความสมบูรณ์ (การลงนาม SMB) เป็นอย่างน้อย และคุณควรประเมินโดยใช้ความเป็นส่วนตัว (การเข้ารหัส SMB) แทนการลงนาม เฉพาะ SMB 3.x เท่านั้นที่รองรับการเข้ารหัส ไม่ต้องการการเข้ารหัส ยกเว้นว่าเครื่องทั้งหมดของคุณเป็นอย่างน้อย Windows 8 และ Windows Server 2012 หรือเป็นบุคคลที่สามที่มี SMB 3 และรองรับการเข้ารหัส การกำหนดให้ Kerberos ไม่ได้ป้องกันพยายามที่ NTLM ดังนั้นโปรดอ่านด้านล่าง

ไม่จำเป็นต้องกำหนดค่าทั้งการลงนามและการเข้ารหัสใน SMB การเข้ารหัสจะรวมลายเซ็นเหล่านั้นโดยปริยาย และไคลเอ็นต์ SMB จะเพิกเฉยต่อคำสั่งให้ทำทั้งสองอย่าง หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของ UNC Hardening โปรดดู.

บันทึก: Windows 10 และ Windows Server 2016 เปิดใช้งาน UNC Hardening เป็นครั้งแรกตามค่าเริ่มต้นสำหรับการแชร์ทั้งหมดที่ชื่อ "SYSVOL" และ "NETLOGON" ซึ่งจำเป็นต้องมีการรับรองความถูกต้องและความสมบูรณ์ร่วมกันเมื่อเชื่อมต่อ หากไม่มีชื่อหุ้นเหล่านี้มีความหมายอะไรต่อคุณถอดรหัสหนังสือโฆษณาเหล่านั้น.

ใช้ SMB 3.1.1

SMB 3.1.1 จัดส่งครั้งแรกใน Windows 10 และ Windows Server 2016 และมีคุณสมบัติความปลอดภัยบังคับใหม่ที่เรียกว่าความสมบูรณ์ของการรับรองความถูกต้องล่วงหน้า วิธีนี้จะป้องกันการปลอมแปลงข้อความการเจรจาและการตั้งค่าเซสชันโดยใช้การแฮชที่เข้ารหัสลับ ซึ่งช่วยให้ไคลเอนต์และเซิร์ฟเวอร์เชื่อถือคุณสมบัติการเชื่อมต่อและเซสชันร่วมกัน คุณลักษณะใหม่นี้จะเข้ามาแทนที่ "การเจรจาต่อรองภาษาถิ่นที่ปลอดภัย" ที่นำมาใช้ใน SMB 3.0 กล่าวง่ายๆ ก็คือ จะลงนามหรือเข้ารหัสในระยะเริ่มต้นของการเชื่อมต่อ SMB ที่จะกำหนดความสามารถด้านความปลอดภัยในภายหลัง คุณไม่สามารถปิดความสมบูรณ์ของการตรวจสอบสิทธิ์ล่วงหน้าได้ แต่หากไคลเอ็นต์ใช้ภาษาถิ่นที่เก่ากว่า ก็จะไม่ถูกนำมาใช้

สารละลาย:รับประกันอุปกรณ์และเครื่องเสมือนทั้งหมดของคุณในองค์กรของคุณสนับสนุนSMB 3.1.1 เป็นก้าวแรก Windows จะเจรจากับโปรโตคอลสูงสุดที่มีอยู่เสมอ และจะใช้ 3.1.1 หากเซิร์ฟเวอร์อนุญาต

แต่คุณสามารถดำเนินการต่อไปได้การมอบอำนาจภาษาถิ่นล่าสุด ฉันอธิบายสิ่งนี้ในการควบคุมภาษา SMBซึ่งหมายถึงการตั้งค่ารีจิสทรี DWORD สองค่า:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters
MinSMB2Dialect: 0x000000311
MaxSMB2Dialect: 0x000000311

วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (3)

โปรดจำไว้ว่าสภาพแวดล้อมของคุณไม่ใช่แค่ Windows หากอุปกรณ์หรือซอฟต์แวร์ของบริษัทอื่นในองค์กรของคุณไม่รองรับ SMB 3.1.1 การกำหนดให้ภาษาถิ่นนั้นจะขัดข้อง นี่คือตัวเลือกอื่นสำหรับการกำหนดค่ากำหนดนโยบายกลุ่มของกลุ่มฟลีตของคุณ

จัดทำแผนที่ไดรฟ์ได้ทันทีด้วยการลงนามหรือการเข้ารหัสตามคำสั่ง

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

สารละลาย:แมปไดรฟ์ที่ต้องมีการลงนามหรือการเข้ารหัส คุณสามารถใช้การใช้งานสุทธิคำสั่งหรือใหม่-SmbMappingPowerShell cmdlet เพื่อแมปไดรฟ์โดยระบุ “RequireIntegrity” (การลงนาม) หรือ “RequirePrivacy” (การเข้ารหัส)

วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (4)

วิธีปกป้องผู้ใช้จากการโจมตีแบบสกัดกั้นผ่านการป้องกันไคลเอนต์ SMB (5)

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

บล็อก NTLM และเพิ่มความปลอดภัยของ Kerberos

สุดท้ายนี้ เรามาถึงโซลูชันเดียวที่ไม่เกี่ยวกับ SMB เลย นั่นคือการป้องกันการใช้โปรโตคอล NTLM รุ่นเก่าที่ไม่ปลอดภัยและตัวแปรอื่นๆ ทั้งหมด จากนั้นจึงเพิ่มความปลอดภัยเริ่มต้นของ Kerberos หากคุณต้องการหยุดการเก็บเกี่ยวข้อมูลประจำตัว การส่งผ่านแฮช การส่งต่อ SMB และการโจมตีทั้งระดับที่เกี่ยวข้องกับผู้ให้บริการความปลอดภัยจริงๆ ไม่ใช่โปรโตคอลเครือข่ายที่ใช้ คุณจะต้องยุติการใช้ NTLM มันไม่ง่ายเสมอไป แต่ตอนนี้ง่ายกว่าตอนที่ฉันพูดคุยเรื่องนี้ครั้งแรกอย่างแน่นอนตัวเลือกเมื่อ 11 ปีที่แล้ว. นอกจากนี้ หากคุณต้องการป้องกันการโจมตีที่ซับซ้อนมากขึ้น เช่น pass-the-ticket และการคั่วแบบเคอร์เบอโรสต์คุณจะต้องเพิ่มค่าเริ่มต้นการรักษาความปลอดภัยของ Kerberos

11 ปีที่แล้ว โอ้โห ฉันแก่มากแล้ว

สารละลาย:จำกัดหรือหยุดการใช้ NTLM จากนั้นเพิ่มความปลอดภัยของ Kerberos

สำหรับ NTLM หมายถึงการตรวจสอบสภาพแวดล้อมของคุณเพื่อค้นหาว่าไคลเอนต์และแอปพลิเคชันใดกำลังใช้ NTLM และกำหนดค่าใหม่ให้ใช้ Kerberos (เนื่องจากเป็นข้อผิดพลาด เช่น การใช้ที่อยู่ IP) หรืออัปเกรด Windows มีกลไกการตรวจสอบบันทึกเหตุการณ์เต็มรูปแบบสำหรับการใช้งาน NTLM ของไคลเอ็นต์ เซิร์ฟเวอร์ และตัวควบคุมโดเมน คุณสามารถประเมินการใช้งานของคุณได้โดยเปิดใช้งานโหมดการตรวจสอบนั้นตรวจสอบบันทึก และเริ่มปิด NTLM ในรูปแบบที่มีการควบคุมและจัดฉาก ตัวเลือกหนึ่งที่ไม่สามารถใช้ได้เมื่อฉันเขียนสิ่งนั้นโพสต์บล็อกในปี 2552 คือAzure Sentinel และแดชบอร์ดโปรโตคอลที่ไม่ปลอดภัย. หากคุณมีสัญญาระดับพรีเมียร์กับเรา โปรดพิจารณาตัวเลือกนั้นแทนการทำงานด้วยมือ และก็พบ SMB1 ด้วย!

สำหรับ Kerberos นี่หมายถึงการเพิ่มชั้นการป้องกันที่มีประสิทธิภาพมากขึ้นสำหรับการโจมตีแบบออฟไลน์และการส่งผ่านตั๋ว:

  1. รหัสผ่านและวลีที่ยาวขึ้น: อักขระ 15 ตัวขึ้นไปโดยไม่มีคำในพจนานุกรมจะทำให้การใช้กำลังแบบออฟไลน์ใช้เวลานานมาก การหลีกเลี่ยงการโจมตีด้วยพจนานุกรมด้วยวลีรหัสผ่านจะทำให้สิ่งนั้นดียิ่งขึ้น ยากที่จะบังคับใช้หรือฝึกอบรมผู้ใช้แต่การป้องกันรหัสผ่าน Azure ADสามารถช่วยได้ที่นี่ การเพิ่มความยาวและความซับซ้อนของรหัสผ่านด้วย NTLMv2 ก็ช่วยได้เช่นกัน แต่... อิ๊ก
  2. Windows Hello สำหรับธุรกิจ/สมาร์ทการ์ด: การรับรองความถูกต้องด้วยสองปัจจัยด้วยWindows Hello สำหรับธุรกิจหรือสมาร์ทการ์ดจะเพิ่มการป้องกันอีกชั้นหนึ่งรวมถึงการสลับไปใช้การเข้ารหัสคีย์สาธารณะสำหรับการตรวจสอบสิทธิ์เบื้องต้น (PKINIT)ในโปรโตคอล Kerberos แทนที่จะใช้เพียงรหัสผ่าน หากคุณสนใจว่าโซลูชันไร้รหัสผ่านของ Windows Hello ทำงานอย่างไรกับ AD และ Kerberos โปรดดูที่มันทำงานอย่างไร เอกสารหรือชมวิดีโอสั้น ๆ ของพวกเขา

หากคุณยังไม่ได้วางแผนการเปิดตัว Windows Hello ก็ถึงเวลาร้อนแรงแล้ว

  1. (gMSA: การใช้บัญชีบริการที่มีการจัดการกลุ่มสำหรับบริการทำให้การโจมตีแบบดุร้ายและพจนานุกรมเพื่อถอดรหัสรหัสผ่านเป็นไปไม่ได้อย่างมีประสิทธิภาพ ด้วยการสร้างอักขระแบบสุ่ม 127 ตัว ไม่ได้ช่วยเหลือผู้ใช้ปลายทางของคุณ)
  2. เร็ว: เกราะ Kerberos (การรับรองความถูกต้องที่ยืดหยุ่น Secure Tunneling) ป้องกัน Kerberoasting เนื่องจากข้อมูลการตรวจสอบสิทธิ์ล่วงหน้าของผู้ใช้ได้รับการปกป้องและไม่ต้องถูกโจมตีแบบออฟไลน์หรือการโจมตีด้วยพจนานุกรมอีกต่อไป นอกจากนี้ยังป้องกันการโจมตีดาวน์เกรดจาก KDC ที่ปลอมแปลง และตอนนี้กำหนดให้คุณต้องประนีประนอมคอมพิวเตอร์ในเครื่องเพื่อใช้การโจมตีตั๋วแทนที่จะดึงพวกมันออกจากสาย การเพิ่มข้อมูลประจำตัวยามสามารถทำที่การประนีประนอมตั๋วในท้องถิ่นนั้นยากยิ่งขึ้นเนื่องจากการขโมยตั๋วที่ออกตั๋วและตั๋วบริการที่แคชไว้ถูกบล็อกแล้ว FAST ต้องการการยกระดับการทำงานของโดเมน AD ของคุณและรับรองว่าคอมพิวเตอร์ทุกเครื่องของคุณเป็นอย่างน้อย Windows 8 และ Windows Server 2012 คุณสามารถควบคุมได้ทั้งหมดผ่านนโยบายกลุ่ม เช่นเดียวกับ Windows Hello สำหรับธุรกิจ คุณต้องเริ่มต้นการวางแผนอีกระดับหนึ่ง
  3. สคริล:ต้องใช้สมาร์ทการ์ดสำหรับการเข้าสู่ระบบแบบโต้ตอบเป็นทางเลือกสุดท้าย แต่จริงๆ แล้ว ปรับใช้ได้ยาก เมื่อคุณกำหนดค่าผู้ใช้ด้วย SCRIL AD จะเปลี่ยนรหัสผ่านของผู้ใช้เป็นชุดสุ่ม 128 บิต ผู้ใช้ไม่สามารถใช้รหัสผ่านเพื่อเข้าสู่ระบบแบบโต้ตอบได้อีกต่อไปและไม่รู้รหัสผ่านด้วยซ้ำ มันอาจมีบิตที่ไม่สามารถพิมพ์ได้ สมาร์ทการ์ดของพวกเขาซึ่งมี PIN การป้องกันในเครื่องจะกลายเป็นรหัสผ่านของพวกเขา และนั่นหมายความว่าเมื่อใดก็ตามที่ใครก็ตามจำเป็นต้องรู้รหัสผ่านเพื่อทำบางสิ่งบางอย่าง โดยเฉพาะอย่างยิ่งหากพวกเขาเป็นผู้ดูแลระบบ พวกเขาจะโชคไม่ดี กิจการทุกประเภทมักจะไม่พอใจกับเรื่องนี้มาก

ความคิดสุดท้าย

เช่นเดียวกับแผนความปลอดภัยอื่นๆ คุณกำลังอยู่ในการเดินทางที่ไม่มีวันสิ้นสุด เป้าหมายของคุณคือการได้รับความปลอดภัยเพียงพอทำให้สภาพแวดล้อมของคุณไม่น่าถูกโจมตี SMB เป็นโปรโตคอลที่สำคัญอย่างยิ่งผ่าน Windows, Mac, Linux, พื้นที่จัดเก็บข้อมูล อุปกรณ์ และอุปกรณ์เคลื่อนที่ เป็นการขนส่งสิ่งเดียวที่องค์กรของคุณใส่ใจในการประมวลผล: ข้อมูล คุณรู้ไหมว่า “ฉัน” ใน “เทคโนโลยีสารสนเทศ” การรักษาความปลอดภัยจากที่สุดการโจมตีสกัดกั้นมีแนวโน้มที่จะปลอดภัยใช้ได้จริงการโจมตีทั้งหมดยกเว้นรูปแบบภัยคุกคามที่มีความต้องการมากที่สุด

หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับวิธีการทำงานของการเซ็นชื่อและการเข้ารหัส SMB ฉันขอแนะนำ Edgar Olougouna เป็นอย่างยิ่งความปลอดภัย SMB 2 และ SMB 3 ใน Windows 10: ลักษณะทางกายวิภาคของการลงนามและคีย์การเข้ารหัสและSMB 3.1.1 ความสมบูรณ์ของการรับรองความถูกต้องล่วงหน้าใน Windows 10. Edgar เป็นผู้นำทีมเอกสารโปรโตคอลของเรา และเขาลืมไปมากกว่านั้นเกี่ยวกับวิธีการทำงานของโปรโตคอลมากกว่าที่ฉันเคยรู้มา

ขอบคุณมากสำหรับสตีฟ ไซฟูห์สสำหรับการแบ่งปันความรู้เชิงลึกเกี่ยวกับ Kerberos และถึงฌอน เมตคาล์ฟเพื่อความยอดเยี่ยมของพระองค์เสมอมาความปลอดภัยของ ADบล็อก สองสามคน.

ฉันหวังว่าคุณจะพบว่าสิ่งนี้มีประโยชน์ งั้นไปอ่านเลยBeyond the Edge: วิธีรักษาความปลอดภัยการรับส่งข้อมูล SMB ใน Windows

- เน็ด ไพล์

References

Top Articles
Latest Posts
Article information

Author: Madonna Wisozk

Last Updated: 10/11/2023

Views: 5918

Rating: 4.8 / 5 (48 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Madonna Wisozk

Birthday: 2001-02-23

Address: 656 Gerhold Summit, Sidneyberg, FL 78179-2512

Phone: +6742282696652

Job: Customer Banking Liaison

Hobby: Flower arranging, Yo-yoing, Tai chi, Rowing, Macrame, Urban exploration, Knife making

Introduction: My name is Madonna Wisozk, I am a attractive, healthy, thoughtful, faithful, open, vivacious, zany person who loves writing and wants to share my knowledge and understanding with you.