การควบคุมนโยบายความปลอดภัยดิสก์เริ่มต้นระบบสำหรับ Mac ที่มี Apple Silicon
ภาพรวม
นโยบายความปลอดภัยบน Mac ที่มี Apple Silicon จะมีให้กับระบบปฏิบัติการที่ติดตั้งแต่ละระบบ ซึ่งแตกต่างจากนโยบายความปลอดภัยบน Mac ที่ใช้ Intel สิ่งนี้หมายความว่าอินสแตนซ์ macOS ที่ติดตั้งอยู่หลายรายการซึ่งมีเวอร์ชั่นและนโยบายความปลอดภัยที่แตกต่างกันจะมีการรองรับบน Mac เครื่องเดียวกัน ด้วยเหตุนี้จึงมีการเพิ่มตัวเลือกระบบปฏิบัติการในยูทิลิตี้ความปลอดภัยของการเริ่มต้นระบบ
บน Mac ที่มี Apple Silicon ยูทิลิตี้ความปลอดภัยของระบบจะระบุสถานะความปลอดภัยโดยรวมของ macOS ที่ผู้ใช้กำหนดค่า เช่น การเริ่มการทำงานของ kext หรือการกำหนดค่าของการปกป้องความสมบูรณ์ของระบบ (SIP) ถ้าการเปลี่ยนการตั้งค่าความปลอดภัยจะลดความปลอดภัยลงอย่างมากหรือทำให้ระบบถูกโจมตีได้ง่ายขึ้น ผู้ใช้ต้องเข้าสู่ recoveryOS โดยกดปุ่มเปิด/ปิดค้างไว้ (เพื่อไม่ให้มัลแวร์ทริกเกอร์สัญญาณ และมีเพียงมนุษย์ที่เข้าถึงทางกายภาพเท่านั้นที่จะสามารถทำได้) เพื่อดำเนินการเปลี่ยนแปลง ด้วยเหตุนี้ Mac ที่ใช้ Apple Silicon จึงไม่ใช้ (หรือไม่รองรับ) รหัสผ่านเฟิร์มแวร์ด้วยเช่นกัน การเปลี่ยนแปลงที่สำคัญทั้งหมดมีการปกป้องด้วยการอนุญาตของผู้ใช้อยู่แล้ว โปรดดูที่ การปกป้องความสมบูรณ์ของระบบ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ SIP
ความปลอดภัยแบบเต็มและความปลอดภัยลดลงสามารถตั้งค่าได้โดยใช้ยูทิลิตี้ความปลอดภัยของการเริ่มต้นระบบจาก recoveryOS แต่ความปลอดภัยที่อนุญาตสามารถเข้าถึงได้เฉพาะจากเครื่องมือบรรทัดคำสั่งสำหรับผู้ใช้ที่ยอมรับความเสี่ยงในการทำให้ Mac ของตนเองมีความปลอดภัยลดลงเป็นอย่างมาก
นโยบายความปลอดภัยแบบเต็ม
ความปลอดภัยแบบเต็มเป็นค่าเริ่มต้นและทำงานเหมือนกับ iOS และ iPadOS เมื่อดาวน์โหลดและเตรียมการติดตั้งซอฟต์แวร์ แทนที่จะใช้ลายเซ็นสากลที่มาพร้อมกับซอฟต์แวร์ macOS จะสื่อสารกับเซิร์ฟเวอร์การลงชื่อของ Apple เดียวกับที่ใช้สำหรับ iOS และ iPadOS และขอลายเซ็นใหม่ “โดยเฉพาะ” ลายเซ็นจะได้รับการพิจารณาว่าเป็นแบบสำหรับคุณโดยเฉพาะเมื่อรวม Exclusive Chip Identification (ECID) ซึ่งเป็น ID เฉพาะสำหรับ Apple CPU ในกรณีนี้ เป็นส่วนหนึ่งของคำขอลงชื่อ ลายเซ็นที่ได้รับจากเซิร์ฟเวอร์การลงชื่อนั้นจะไม่ซ้ำใครและสามารถใช้งานได้โดย Apple CPU เฉพาะเท่านั้น เมื่อนโยบายด้านความปลอดภัยแบบเต็มมีผลบังคับใช้ Boot ROM และ LLB จะช่วยทำให้มั่นใจว่าลายเซ็นที่ให้มานั้นไม่ได้เพียงแค่ลงชื่อโดย Apple แต่ลงชื่อสำหรับ Mac เครื่องนี้โดยเฉพาะ แล้วผูก macOS เวอร์ชั่นนั้นกับ Mac เครื่องดังกล่าว
การใช้เซิร์ฟเวอร์การลงชื่อทางออนไลน์ยังให้การป้องกันการโจมตีแบบย้อนกลับได้ดีกว่าการใช้ลายเซ็นสากลทั่วไปอีกด้วย ในระบบการลงชื่อแบบสากล epoch ด้านความปลอดภัยสามารถดำเนินการได้หลายครั้ง แต่ระบบที่ไม่เคยเห็นเฟิร์มแวร์รุ่นล่าสุดจะไม่รู้จักสิ่งนี้ ตัวอย่างเช่น คอมพิวเตอร์ที่เชื่อว่าอยู่ใน epoch ด้านความปลอดภัย 1 จะยอมรับซอฟต์แวร์จาก epoch ด้านความปลอดภัย 2 แม้ว่า epoch ด้านความปลอดภัยที่แท้จริงในปัจจุบันคือ 5 ด้วยระบบการลงชื่อทางออนไลน์ในประเภทของ Apple Silicon เซิร์ฟเวอร์การลงชื่อสามารถปฏิเสธการสร้างลายเซ็นสำหรับซอฟต์แวร์ซึ่งจะมีอยู่ในทุกอย่างยกเว้น epoch ด้านความปลอดภัยล่าสุด
นอกจากนี้ ถ้าผู้โจมตีค้นพบช่องโหว่หลังจากเปลี่ยนแปลง epoch ด้านความปลอดภัยแล้ว ผู้โจมตีรายนั้นจะไม่สามารถรับซอฟต์แวร์ที่มีช่องโหว่จาก epoch ก่อนหน้านี้ออกจากระบบ A และนำไปปรับใช้กับระบบ B เพื่อโจมตีได้ ข้อเท็จจริงที่ว่าซอฟต์แวร์ที่มีช่องโหว่จาก epoch เก่าถูกปรับให้เข้ากับระบบ A นั้นจะช่วยทำให้ซอฟต์แวร์ไม่สามารถถ่ายโอนได้และถูกนำมาใช้เพื่อโจมตีระบบ B กลไกเหล่านี้ทั้งหมดจะทำงานร่วมกันเพื่อให้การรับประกันที่หนักแน่นมากยิ่งขึ้นว่าผู้โจมตีจะไม่สามารถใส่ซอฟต์แวร์ที่มีช่องโหว่ลงใน Mac อย่างจงใจเพื่อหลีกเลี่ยงการปกป้องที่ซอฟต์แวร์เวอร์ชั่นล่าสุดมอบให้ได้ แต่ผู้ใช้ที่ครอบครองชื่อผู้ใช้และรหัสผ่านของผู้ดูแลระบบสำหรับ Mac เครื่องนั้นจะสามารถเลือกนโยบายด้านความปลอดภัยที่ใช้งานได้ดีที่สุดสำหรับกรณีการใช้งานของพวกเขาได้เสมอ
นโยบายความปลอดภัยลดลง
การทำงานของนโยบายความปลอดภัยแบบลดลงจะคล้ายกับนโยบายความปลอดภัยปานกลางบน Mac ที่ใช้ Intel ที่มีชิป T2 ซึ่งผู้จำหน่าย (ในกรณีนี้คือ Apple) จะสร้างลายเซ็นดิจิทัลสำหรับโค้ดเพื่อยืนยันว่ามาจากผู้จำหน่าย การออกแบบนี้จะช่วยป้องกันไม่ให้ผู้โจมตีป้อนโค้ดที่ไม่ได้ลงชื่อได้ Apple เรียกลายเซ็นนี้ว่าเป็นลายเซ็น “สากล” เนื่องจากสามารถใช้บน Mac ได้ทุกเครื่องโดยไม่จำกัดจำนวนครั้ง สำหรับ Mac ที่มีชุดนโยบายความปลอดภัยแบบลดลง ความปลอดภัยลดลงไม่ได้ให้การปกป้องจากการโจมตีแบบย้อนกลับด้วยตัวเอง (แม้ว่าการเปลี่ยนแปลงระบบปฏิบัติการโดยไม่ได้รับอนุญาตอาจส่งผลให้ข้อมูลผู้ใช้ถูกทำให้ไม่สามารถเข้าถึงได้ โปรดดูที่ ส่วนขยายเคอร์เนลใน Mac ที่มี Apple Silicon สำหรับข้อมูลเพิ่มเติม
นอกจากจะทำให้ผู้ใช้สามารถเรียกใช้ macOS เวอร์ชั่นเก่ากว่าได้แล้ว ความปลอดภัยแบบลดลงยังต้องใช้สำหรับการทำงานอื่นที่อาจทำให้ความปลอดภัยของระบบของผู้ใช้มีความเสี่ยงอีกด้วย เช่น การใช้ส่วนขยายเคอร์เนลของบริษัทอื่น (kext) kext มีสิทธิ์เท่าเทียมกันกับเคอร์เนล ช่องว่างใดๆ ใน kext ของบริษัทอื่นจึงสามารถนำไปสู่การโจมตีระบบปฏิบัติการแบบเต็มได้ นี่จึงเป็นเหตุผลที่มีการแนะนำนักพัฒนาเป็นอย่างยิ่งให้ใช้ส่วนขยายระบบก่อนที่จะเอาการรองรับ kext ออกจาก macOS สำหรับ Mac ที่มี Apple Silicon ในอนาคต แม้ว่าจะเปิดใช้งาน kext ของบริษัทอื่น ระบบจะไม่สามารถโหลด kext ลงในเคอร์เนลตามคำร้องขอได้ แต่ kext เหล่านั้นจะถูกผสานเข้ากับคอลเลกชั่นเคอร์เนลเสริม (AuxKC) ซึ่งจะมีแฮชที่จัดเก็บอยู่ใน LocalPolicy ดังนั้นจึงต้องมีการเริ่มการทำงานใหม่ โปรดดูที่ การขยายเคอร์เนลอย่างปลอดภัยใน macOS สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้าง AuxKC
นโยบายความปลอดภัยที่อนุญาต
ความปลอดภัยที่อนุญาตเป็นความปลอดภัยสำหรับผู้ใช้ที่ยอมรับความเสี่ยงในการทำให้ Mac ของตนเองอยู่ในสถานะที่ไม่ปลอดภัยเป็นอย่างมาก โหมดนี้จะแตกต่างจากโหมดไม่มีความปลอดภัยบน Mac ที่ใช้ Intel ที่มีชิป T2 ด้วยความปลอดภัยที่อนุญาต การตรวจสอบยืนยันลายเซ็นยังคงดำเนินการพร้อมกับลำดับการเริ่มต้นระบบอย่างปลอดภัยทั้งหมด ยกเว้นการตั้งค่านโยบายเป็นความปลอดภัยที่อนุญาตเป็นการส่งสัญญาณให้กับ iBoot ว่าควรยอมรับวัตถุการเริ่มการทำงานที่ลงชื่อ Secure Enclave ภายในเครื่อง เช่น คอลเลกชั่นเคอร์เนลการเริ่มการทำงานที่สร้างโดยผู้ใช้ที่สร้างขึ้นจากเคอร์เนล XNU แบบกำหนดเอง ด้วยวิธีนี้ ความปลอดภัยที่อนุญาตยังมีความสามารถในการเรียกใช้เคอร์เนล “ระบบปฏิบัติการที่ไม่ได้รับการเชื่อถือเต็มรูปแบบ” ตามอำเภอใจได้อีกด้วย เมื่อคอลเลกชั่นเคอร์เนลการเริ่มการทำงานหรือระบบปฏิบัติการที่ไม่ได้รับการเชื่อถือเต็มรูปแบบโหลดขึ้นบนระบบ กุญแจการถอดรหัสบางรายการอาจใช้งานไม่ได้ วิธีนี้ได้รับการออกแบบมาเพื่อป้องกันไม่ให้ระบบปฏิบัติการที่ไม่ได้รับการเชื่อถือเต็มรูปแบบเข้าถึงข้อมูลจากระบบปฏิบัติการที่เชื่อถือแล้วได้
สิ่งสำคัญ: Apple ไม่มีหรือไม่รองรับเคอร์เนล XNU แบบกำหนดเอง
ความแตกต่างอีกอย่างระหว่างความปลอดภัยแบบอนุญาตกับไม่มีความปลอดภัยบน Mac ที่ใช้ Intel ที่มีชิป T2: ความปลอดภัยที่อนุญาตเป็นข้อกำหนดเบื้องต้นสำหรับการดาวน์เกรดความปลอดภัยบางรายการที่ในอดีตสามารถควบคุมได้อย่างอิสระ โดยเฉพาะอย่างยิ่งในกรณีที่ต้องการปิดใช้งานการปกป้องความสมบูรณ์ของระบบ (SIP) บน Mac ที่มี Apple Silicon ผู้ใช้จะต้องรับทราบว่าตนกำลังนำระบบเข้าสู่ความปลอดภัยแบบอนุญาต ต้องทำเช่นนี้เนื่องจากการปิดใช้งาน SIP จะทำให้ระบบเข้าสู่สถานะที่ทำให้เคอร์เนลถูกโจมตีได้ง่ายมากยิ่งขึ้นอยู่เสมอ โดยเฉพาะการปิดใช้งาน SIP บน Mac ที่มี Apple Silicon จะปิดใช้งานการบังคับใช้ลายเซ็น kext ในระหว่างช่วงเวลาการสร้าง AuxKC ซึ่งทำให้สามารถโหลด kext ตามอำเภอใจใดๆ ไปยังหน่วยความจำเคอร์เนลได้ การปรับปรุง SIP อีกรายการที่มีการดำเนินการบน Mac ที่มี Apple Silicon คือมีการย้ายการจัดเก็บนโยบายออกจาก NVRAM และย้ายไปยัง LocalPolicy ดังนั้นในตอนนี้ การปิดใช้งาน SIP ต้องใช้การตรวจสอบสิทธิ์โดยผู้ใช้ที่มีสิทธิ์เข้าถึงกุญแจที่ลงชื่อ LocalPolicy จาก recoveryOS (เข้าถึงได้โดยกดปุ่มเปิด/ปิดค้างไว้) ซึ่งทำให้ผู้โจมตีเฉพาะซอฟต์แวร์หรือผู้โจมตีทางกายภาพสามารถปิดใช้งาน SIP ได้ยากมากขึ้น
คุณไม่สามารถดาวน์เกรดความปลอดภัยที่อนุญาตจากแอปยูทิลิตี้ความปลอดภัยของการเริ่มต้นระบบได้ ผู้ใช้จะดาวน์เกรดได้ก็ต่อเมื่อเรียกใช้เครื่องมือบรรทัดคำสั่งจากเทอร์มินัลใน recoveryOS เช่น csrutil
(เพื่อปิดใช้งาน SIP) หลังจากที่ผู้ใช้ดาวน์เกรดแล้ว ข้อเท็จจริงที่สิ่งนี้ได้เกิดขึ้นจะแสดงให้เห็นในยูทิลิตี้ความปลอดภัยของการเริ่มต้นระบบ และด้วยเหตุนี้ ผู้ใช้จึงสามารถตั้งค่าความปลอดภัยเป็นโหมดที่ปลอดภัยยิ่งขึ้นได้อย่างง่ายดาย
หมายเหตุ: Mac ที่มี Apple Silicon ไม่ต้องใช้หรือไม่รองรับนโยบายการเริ่มการทำงานสื่อเนื่องจากในความเป็นจริงนั้น การเริ่มการทำงานทั้งหมดเกิดขึ้นภายในเครื่อง ถ้าผู้ใช้เลือกที่จะเริ่มการทำงานจากสื่อภายนอก เวอร์ชั่นระบบปฏิบัติการนั้นจะต้องมีการปรับให้เป็นส่วนตัวก่อนโดยใช้การเริ่มการทำงานใหม่ที่ตรวจสอบสิทธิ์แล้วจาก recoveryOS การเริ่มการทำงานใหม่นี้จะสร้างไฟล์ LocalPolicy บนไดรฟ์ภายในที่จะใช้ดำเนินการเริ่มการทำงานที่เชื่อถือแล้วจากระบบปฏิบัติการที่จัดเก็บอยู่ในสื่อภายนอก ซึ่งหมายความว่าการกำหนดค่าการเริ่มทำงานจากสื่อภายนอกจะเปิดใช้งานอยู่เสมออย่างชัดเจนโดยขึ้นอยู่กับระบบปฏิบัติการแต่ละระบบ และต้องใช้การอนุญาตของผู้ใช้อยู่แล้ว จึงไม่จำเป็นต้องกำหนดค่าความปลอดภัยเพิ่มเติม