ความปลอดภัยของดิสก์โวลุ่มระบบที่ลงชื่อ
Apple ได้เปิดตัวดิสก์โวลุ่มระบบแบบอ่านอย่างเดียว ซึ่งเป็นดิสก์โวลุ่มแยกเฉพาะสำหรับเนื้อหาระบบสำหรับ macOS 10.15 และมีการเพิ่มการป้องกันการเข้ารหัสที่รัดกุมให้กับเนื้อหาระบบด้วย ดิสก์โวลุ่มระบบที่ลงชื่อ (SSV) สำหรับ macOS 11 ขึ้นไป SSV มีกลไกเคอร์เนลที่ตรวจสอบยืนยันความสมบูรณ์ของเนื้อหาระบบในรันไทม์ และปฏิเสธข้อมูลใดๆ เช่น รหัสและไม่ใช่รหัส โดยไม่ต้องมีลายเซ็นการเข้ารหัสที่ถูกต้องจาก Apple ตั้งแต่ iOS 15 และ iPadOS 15 เป็นต้นไป ดิสก์โวลุ่มระบบบน iPhone หรือ iPad ยังได้รับการป้องกันด้วยการเข้ารหัสของดิสก์โวลุ่มระบบที่ลงชื่อ
SSV นอกจากจะช่วยป้องกันการดัดแปลงซอฟต์แวร์ใดๆ ของ Apple ที่เป็นส่วนหนึ่งของระบบปฏิบัติการแล้ว ยังทำให้การอัปเดตซอฟต์แวร์ macOS มีความเสถียรและปลอดภัยมากขึ้นอีกด้วย และเนื่องจาก SSV ใช้สแนปช็อต APFS (Apple File System) ถ้ามีการอัปเดตที่ไม่สามารถดำเนินการได้ เวอร์ชั่นเก่าของระบบจะถูกกู้คืนโดยไม่มีการติดตั้งอีกครั้ง
ตั้งแต่มีการเปิดตัว APFS ได้มอบความสมบูรณ์ให้กับเมตาดาต้าของระบบไฟล์โดยใช้เช็คซัมที่ไม่เข้ารหัสบนอุปกรณ์จัดเก็บข้อมูลภายใน SSV เพิ่มความปลอดภัยให้กลไกความสมบูรณ์โดยเพิ่มแฮชการเข้ารหัส ซึ่งจะขยายกลไกเพื่อรวมทุกไบต์ของข้อมูลไฟล์ ข้อมูลจากอุปกรณ์จัดเก็บข้อมูลภายใน (รวมถึงเมตาดาต้าของระบบไฟล์) จะถูกแฮชแบบเข้ารหัสในเส้นทางการอ่าน และเปรียบเทียบแฮชกับค่าที่คาดไว้ในเมตาดาต้าของระบบไฟล์ ในกรณีที่ไม่ตรงกัน ระบบจะอนุมานว่าข้อมูลถูกดัดแปลง และจะไม่ส่งกลับไปยังซอฟต์แวร์ที่ขอ
แฮช SHA256 ของ SSV แต่ละรายการถูกจัดเก็บไว้ในโครงสร้างเมตาดาต้าของระบบไฟล์หลักซึ่งมีการแฮชเอง และเนื่องจากแต่ละโหนดของโครงสร้างจะตรวจสอบยืนยันความสมบูรณ์ของแฮชของโหนดลูกซ้ำๆ ซึ่งคล้ายกับโครงสร้างแฮชไบนารี (Merkle) ค่าแฮชของโหนดราก หรือที่เรียกว่าตราประทับ จะครอบคลุมทุกไบต์ของข้อมูลใน SSV ซึ่งหมายความว่าลายเซ็นการเข้ารหัสจะครอบคลุมดิสก์โวลุ่มระบบทั้งดิสก์
ระหว่างการติดตั้งและอัปเดต macOS ตราประทับจะถูกคำนวณใหม่จากระบบไฟล์ในอุปกรณ์ และการคำนวณนั้นจะถูกตรวจสอบเทียบกับการคำนวณที่ Apple ลงชื่อไว้ บน Mac ที่มี Apple Silicon ตัวโหลดเริ่มต้นระบบจะตรวจสอบยืนยันตราประทับก่อนถ่ายโอนการควบคุมไปยังเคอร์เนล บน Mac ที่ใช้ Intel ที่มีชิป Apple T2 Security ตัวโหลดเริ่มต้นระบบจะส่งต่อการวัดและลายเซ็นไปยังเคอร์เนล จากนั้นจะตรวจสอบยืนยันตราประทับโดยตรงก่อนต่อเชื่อมกับระบบไฟล์ราก ในกรณีใดกรณีหนึ่งต่อไปนี้ หากดำเนินการตรวจสอบยืนยันไม่สำเร็จ กระบวนการเริ่มต้นระบบจะหยุด และผู้ใช้จะได้รับการแจ้งให้ติดตั้ง macOS อีกครั้ง ขั้นตอนนี้จะดำเนินการซ้ำทุกครั้งที่มีการเริ่มการทำงาน ยกเว้นว่าผู้ใช้ได้เลือกที่จะเข้าสู่โหมดความปลอดภัยต่ำและได้เลือกที่จะปิดใช้งานดิสก์โวลุ่มระบบที่ลงชื่อไว้แยกต่างหาก
ในระหว่างการอัปเดตซอฟต์แวร์ iOS และ iPadOS ดิสก์โวลุ่มของระบบจะถูกจัดเตรียมและคำนวณใหม่ในลักษณะเดียวกัน Bootloader ของ iOS และ iPadOS จะตรวจสอบยืนยันว่าตราประทับไม่เสียหายและตรงกับค่าที่ลงชื่อไว้โดย Apple ก่อนที่จะอนุญาตให้อุปกรณ์เริ่มใช้งานเคอร์เนลได้ ไม่ตรงกันเมื่อการเริ่มการทำงานแจ้งให้ผู้ใช้อัปเดตซอฟต์แวร์ระบบบนอุปกรณ์ ผู้ใช้ไม่ได้รับอนุญาตให้ปิดใช้งานการป้องกันดิสก์โวลุ่มระบบที่ลงชื่อบน iOS และ iPadOS
SSV และการลงชื่อรหัส
การลงชื่อรหัสยังคงมีอยู่และบังคับใช้โดยเคอร์เนล ดิสก์โวลุ่มระบบที่ลงชื่อจะให้การปกป้องเมื่อมีการอ่านไบต์จากอุปกรณ์จัดเก็บข้อมูลภายนอก ในทางกลับกัน การลงชื่อโค้ดจะให้การปกป้องเมื่อวัตถุ Mach ได้รับการเทียบผังหน่วยความจำเป็นสามารถเรียกใช้ได้ ทั้ง SSV และการลงชื่อรหัสจะปกป้องรหัสที่ปฏิบัติงานได้บนเส้นทางการอ่านและปฏิบัติการทั้งหมด
SSV และ FileVault
ใน macOS 11 ขึ้นไป การปกป้องในเครื่องที่เทียบเท่ากันสำหรับเนื้อหาระบบจะมาจาก SSV ดังนั้นดิสก์โวลุ่มระบบไม่จำเป็นต้องเข้ารหัสอีกต่อไป การแก้ไขใดๆ ที่ดำเนินการไปยังระบบไฟล์ขณะพักอยู่จะตรวจพบโดยระบบไฟล์เมื่อมีการอ่าน ถ้าผู้ใช้ได้เปิดใช้ FileVault ไว้ เนื้อหาของผู้ใช้บนดิสก์โวลุ่มข้อมูลจะยังคงเข้ารหัสอยู่ด้วยความลับที่ผู้ใช้กำหนด
ถ้าผู้ใช้เลือกที่จะปิดใช้งาน SSV ระบบที่พักอยู่จะมีช่องโหว่ให้ดัดแปลง และการดัดแปลงนี้อาจช่วยให้ผู้โจมตีดึงข้อมูลผู้ใช้ที่เข้ารหัสเมื่อมีการเริ่มต้นระบบในครั้งถัดไปได้ ดังนั้น ระบบจะไม่อนุญาตให้ผู้ใช้ปิดใช้งาน SSV หากเปิดใช้ FileVault อยู่ การปกป้องขณะพักอยู่ต้องเปิดใช้งานหรือปิดใช้งานอยู่สำหรับดิสก์โวลุมทั้งสองดิสก์ด้วยการทำงานที่สอดคล้องกัน
ใน macOS 10.15 หรือก่อนหน้า FileVault ปกป้องซอฟต์แวร์ของระบบปฏิบัติการขณะที่ซอฟต์แวร์พักอยู่โดยการเข้ารหัสเนื้อหาของผู้ใช้และระบบด้วยกุญแจที่ปกป้องโดยความลับที่ผู้ใช้กำหนด การทำงานนี้จะป้องกันผู้โจมตีที่เข้าถึงอุปกรณ์ทางกายภาพได้ไม่ให้สามารถเข้าถึงหรือแก้ไขระบบไฟล์ที่มีซอฟต์แวร์ระบบได้อย่างมีประสิทธิภาพ
SSV และ Mac ที่มีชิป Apple T2 Security
บน Mac ที่มีชิป Apple T2 Security เฉพาะ macOS เองเท่านั้นที่ได้รับการปกป้องจาก SSV ซอฟต์แวร์ที่ทำงานบนชิป T2 และตรวจสอบยืนยัน macOS ได้รับการปกป้องโดยการเริ่มต้นระบบอย่างปลอดภัย