MacOS App Sandboxing ปกป้องผู้ใช้อย่างไร

Admin

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

ที่เกี่ยวข้อง: 8 แอปพลิเคชั่นแซนด์บ็อกซ์ที่ดีที่สุดสำหรับ Windows 10 เพื่อให้คุณปลอดภัย

macOS App Sandboxing คืออะไร?

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

เกี่ยวกับแซนด์บ็อกซ์

คิดถึงรถ. ผู้ขับขี่ได้รับการปกป้องด้วยคุณสมบัติด้านความปลอดภัยหลายอย่าง เช่น ระบบป้องกันล้อล็อก ถุงลมนิรภัย โซนยู่ยี่ และอื่นๆ ในปี 2550 ในช่วงเวลาของการแนะนำ App Sandboxing ไม่มีระบบคอมพิวเตอร์ที่คล้ายคลึงกัน ในฐานะที่เป็น การนำเสนอเบื้องต้น ถามว่าเข็มขัดนิรภัยสำหรับคอมพิวเตอร์อยู่ที่ไหน แซนด์บ็อกซ์ปกป้องผู้ใช้เช่นเดียวกับรถยนต์ปกป้องผู้ขับขี่: พบกับความล้มเหลวด้วยระบบลดความเสียหาย ไม่ว่าจะเกิดจากกิจกรรมที่เป็นอันตรายหรือข้อผิดพลาดในการเข้ารหัส ความเสียหายจะลดลง

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

แอปแซนด์บ็อกซ์ทำงานอย่างไร

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

แอปสามารถเข้าถึงนอกแซนด์บ็อกซ์ได้ แต่ต้องได้รับอนุญาตจากระบบปฏิบัติการเท่านั้น ใช้กล่องโต้ตอบ "บันทึกและเปิด" ใน macOS แอปภายในแซนด์บ็อกซ์ไม่สามารถเข้าถึงทรัพยากรระบบไฟล์บนฮาร์ดไดรฟ์ของคุณได้โดยตรง ตัวอย่างเช่น ไม่สามารถวาดแผงเปิดที่ “~/Documents” แอปต้องถาม .แทน Powerbox API กับ NSOpenPanel และ NSSavePanel ชั้นเรียนเพื่อเข้าถึงแผง

macos-app-sandboxing-powerbox-design

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

ฟังก์ชันนั้นเปิดใช้งานโดย an สิทธิ (โดยเฉพาะ com.apple.security.files.user-selected.read-write). นักพัฒนาแอพตั้งค่าการให้สิทธิ์ซึ่งประกาศสิ่งที่แอพทำ ตามการให้สิทธิ์ที่ประกาศไว้ ระบบปฏิบัติการอนุญาตให้แอปพลิเคชันมีระดับการทำงานที่จำกัดอย่างเหมาะสม

กระบวนการคิดนี้รองรับโมเดลและกลไกแซนด์บ็อกซ์ของแอปทั้งหมด: แอปต้องประกาศความตั้งใจและขออนุญาตจากหัวหน้าระดับ OS เพื่อทำสิ่งที่เป็นอันตรายให้สำเร็จ

แอปแซนด์บ็อกซ์กับ แอพที่ไม่ใช่แซนด์บ็อกซ์

ตั้งแต่วันที่ 1 มิถุนายน 2555 แอปพลิเคชันบุคคลที่สามทั้งหมดที่เผยแพร่ผ่าน Mac App Store จะต้องอยู่ในแซนด์บ็อกซ์ แม้ว่าการทำแซนด์บ็อกซ์จะอนุญาตให้มีฟังก์ชันการทำงานของแอปได้หลากหลาย คุณจะพบว่าแอป Mac App Store มักถูกจำกัดมากกว่าส่วนประกอบที่ไม่ใช่แซนด์บ็อกซ์ นักพัฒนาบางคนยังรักษาสองเวอร์ชัน: แอพที่มีคุณสมบัติครบถ้วนสำหรับการดาวน์โหลดโดยตรงและเวอร์ชัน gimped สำหรับ Mac App Store ด้วยความซับซ้อนที่มากขึ้นของการพัฒนาแซนด์บ็อกซ์ การเพิ่มฟังก์ชันการทำงานใหม่ให้กับแอปพลิเคชันจึงทำได้ยากขึ้น หากระบบปฏิบัติการยังอนุญาตให้ใช้ฟังก์ชันนั้นได้

แม้ว่าแอพที่แซนด์บ็อกซ์จะได้รับประโยชน์จากการแจกจ่าย Mac App Store คุณก็ทำได้ ให้ทายว่าเราคิดว่ามันมีค่าแค่ไหน. แซนด์บ็อกซ์สามารถขยายได้ด้วยการอนุญาตด้านความปลอดภัย ในขณะที่แอปไม่สามารถเปิดได้ สิทธิ์การเข้าถึง สำหรับตัวเองก็สามารถขอให้ผู้ใช้ทำเช่นนั้นได้

macos-ความปลอดภัย-ความเป็นส่วนตัว-สิทธิ์-ฮีโร่

หากต้องการดูว่าแอปใดอยู่ในแซนด์บ็อกซ์ ให้เปิดตัวตรวจสอบกิจกรรม แล้วคลิกขวาที่ชื่อคอลัมน์เพื่อเพิ่ม "แซนด์บ็อกซ์" ลงในหน้าต่าง

macos-app-sandboxing-activity-monitor-view

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

บทสรุป

ในขณะที่มีแนวโน้มว่าการทำแซนด์บ็อกซ์ของแอพ macOS นั้นทำงานได้ไม่ดี มันจำกัดจุดขายที่เป็นเอกลักษณ์ของแอพ Mac เช่น ความเร็วและฟังก์ชันที่ได้รับการปรับปรุง แอพที่ทำงานนอกแซนด์บ็อกซ์นั้นมีความสามารถและเร็วกว่าเกือบทุกครั้ง จากมุมมองของผู้ใช้ระดับสูงรายนี้ แอปที่ใช้บ่อยที่สุดของฉันจะไม่อยู่ในแซนด์บ็อกซ์ แอปอย่าง TextExpander, SnagIt และ TotalFinder ล้วนมีความสำคัญต่อการทำงานประจำวันของฉัน เพื่อหลีกเลี่ยงการหลีกเลี่ยงที่คล้ายคลึงกันอย่างกว้างขวาง ระบบรักษาความปลอดภัยในอนาคตจึงต้องการความยืดหยุ่นและพลังที่สมดุลกับความโปร่งใส

เครดิตภาพ: แอปเปิล

การเปิดเผยข้อมูลพันธมิตร: ทำให้เทคโนโลยีง่ายขึ้นอาจได้รับค่าคอมมิชชั่นสำหรับผลิตภัณฑ์ที่ซื้อผ่านลิงก์ของเรา ซึ่งสนับสนุนงานที่เราทำเพื่อผู้อ่านของเรา

วิธีการลบไฟล์จาก Mac ของคุณที่จะไม่ลบ
วิธีการลบไฟล์จาก Mac ของคุณที่จะไม่ลบ

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

วิธีปรับขนาดรูปภาพโดยอัตโนมัติโดยใช้ Automator ใน Mac
วิธีปรับขนาดรูปภาพโดยอัตโนมัติโดยใช้ Automator ใน Mac

เราเขียนเกี่ยวกับ ตัวคูณอัตโนมัติครั้ง ที่ Make Tech Easier ไม่เพียงเพราะเราคิดว่าเป็นเครื่องมือท...

วิธีทำให้งาน macOS ซ้ำ ๆ เป็นอัตโนมัติด้วย Automator
วิธีทำให้งาน macOS ซ้ำ ๆ เป็นอัตโนมัติด้วย Automator

คุณพบว่าตัวเองทำงานซ้ำซากจำเจซ้ำแล้วซ้ำเล่าหรือไม่? ในบทช่วยสอนนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีใช้ ...