สิ่งที่ใช้ในการทำให้กล่อง Linux แข็งตัว Apparmor, SELinux, grsecurity, SMACK, chroot?


20

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

  • อะไรจะเป็นกลยุทธ์การชุบแข็งที่ดี ฉันควรใช้เครื่องมือใด - Apparmor, SELinux, SMACK, chroot
  • ฉันควรใช้เครื่องมือเดียวเช่น Apparmor หรือการรวมกันของข้างต้น?
  • เครื่องมือเหล่านี้มีข้อดี / ข้อเสียใดบ้าง มีคนอื่นบ้างไหม?
  • ซึ่งมีการกำหนดค่าสติเพื่อความปลอดภัย (ปรับปรุง) อัตราส่วน
  • ฉันจะเลือกใช้อันไหนในระบบเดสก์ท็อป เป็นที่หนึ่งในสภาพแวดล้อมเซิร์ฟเวอร์

มีคำถามมากมาย


7
คำเตือน: ทดลองทุกอย่างที่คุณต้องการ แต่อย่าเปิดระบบความปลอดภัยในระบบการผลิตหากคุณไม่เข้าใจอย่างละเอียด การหาประโยชน์ในโลกแห่งความจริงจำนวนมากนั้นขัดกับการกำหนดค่าที่ผิดมากกว่าข้อบกพร่องของระบบหลัก ด้วยความปลอดภัยฟีเจอร์ที่เพิ่มขึ้นไม่ได้หมายความว่าดีกว่าแน่นอน
Gilles 'หยุดชั่วร้าย'

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

คำตอบ:


9

AppArmour มักจะคิดว่าง่ายกว่า SELinux SELinux ค่อนข้างซับซ้อนและอาจใช้งานได้แม้ในการใช้งานทางทหารในขณะที่ AppArmour มีแนวโน้มที่จะง่ายขึ้น SELinux ดำเนินการในระดับ i-node (เช่นข้อ จำกัด ถูกนำไปใช้ในลักษณะเดียวกับสิทธิ์ ACL หรือ UNIX - ในทางกลับกัน) ในขณะที่ AppArmour ใช้ที่ระดับพา ธ (เช่นคุณระบุการเข้าถึงตามเส้นทางดังนั้นเมื่อเส้นทางเปลี่ยน ) AppArmour ยังสามารถป้องกันโปรแกรมย่อย (เช่น mod_php เท่านั้น) แต่ฉันก็สงสัยเกี่ยวกับการใช้งานจริง AppArmour ดูเหมือนจะหาทางเข้าไปในเคอร์เนลฉีด (มันอยู่ใน -mm IIRC)

ฉันไม่ค่อยรู้เกี่ยวกับ SMACK มากนัก แต่ดูเหมือนว่า SELinux ที่ง่ายขึ้นจากคำอธิบาย นอกจากนี้ยังมี RSBAC หากคุณต้องการดู

chroot มีขอบเขตการใช้งานที่ จำกัด และฉันไม่คิดว่ามันจะใช้งานได้มากนักในสภาพแวดล้อมเดสก์ท็อป (สามารถใช้เพื่อแยก daemons จากการเข้าถึงทั้งระบบ - เช่น daemon DNS)

แน่นอนว่าควรใช้การชุบแข็งแบบ 'ทั่วไป' เช่น PaX, -fstack-protector เป็นต้น Chroot คุณสามารถใช้เมื่อ distro สนับสนุน AppArmour / SELinux ฉันคิดว่า SELinux นั้นเหมาะสำหรับพื้นที่ที่มีความปลอดภัยสูง (มีการควบคุมระบบได้ดีกว่ามาก) และ AppArmour นั้นดีกว่าสำหรับการชุบแข็งแบบง่าย

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


4

ใช้ GRSecurity + PAX ทุกอย่างอื่นเป็นเพียงการตลาด bullsh * t และ / หรือส่วนใหญ่ขึ้นอยู่กับงานของ PAX Team Honcho ผู้พัฒนาหลักของ PAX pipacs เพิ่งได้รับรางวัลความสำเร็จตลอดชีวิตที่ Black Hat 2011 / PWNIE:

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

รับ grsecurity + pax ถ้าคุณต้องการกล่องนิรภัย GRsec ให้การควบคุม RBAC แก่เครื่องของคุณระบบป้องกันตามระบบไฟล์ (chroot) มากมาย PaX ปิดแฮ็กเกอร์เวกเตอร์ที่เป็นไปได้ส่วนใหญ่ที่ใช้ คุณยังสามารถทดสอบกล่องของคุณด้วย paxtest เพื่อดูว่ากล่องของคุณมีการป้องกันและช่องโหว่ประเภทใด

อาจมีผลกระทบด้านประสิทธิภาพ อ่านความช่วยเหลือ :)

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