เครื่องมือสำหรับนักพัฒนา · Docker เรียกใช้ตัวแปลงการเขียน Docker
--privileged, --cap-add และ --device: ความหมายในไฟล์เขียน
· เหตุใดจึงสำคัญ
docker เขียน ความปลอดภัย
แฟล็กหนึ่งปิดการแยกส่วนใหญ่ของ Docker โพสต์นี้อธิบายสิ่งที่ --privileged มอบให้จริง ๆ ทางเลือกที่แคบกว่า และลักษณะที่ปรากฏภายใต้สิทธิพิเศษ:, cap_add: และอุปกรณ์: หลังการแปลง
ฟอรัมกล่าวว่าเพิ่ม --privileged — คอนเทนเนอร์ใช้งานได้แล้ว และการแยกส่วนที่ทำให้คอนเทนเนอร์ดูน่าดึงดูดก็หายไปอย่างมาก
ฟอรัมกล่าวว่าให้เพิ่ม --privileged — คอนเทนเนอร์ใช้งานได้แล้ว และการแยกส่วนที่ทำให้คอนเทนเนอร์ดูน่าดึงดูดหายไปอย่างมาก หลักฐาน: --privileged กลายเป็นสิทธิพิเศษที่แท้จริงโดยไม่มีการรับรองด้านความปลอดภัย สร้างสิทธิพิเศษน้อยที่สุดด้วยตัวอักษรแบบใช้แล้วทิ้ง จับคู่แหล่งที่มาแต่ละรายการกับอุปกรณ์ที่มีความสามารถพิเศษ สงวนการกักขังโฮสต์และการเข้าถึงเพื่อตรวจสอบปลายทาง
เหตุการณ์ด้านความปลอดภัยยังเผยให้เห็นว่า ขอบเขตเหตุการณ์ด้านความปลอดภัยที่แยกต่างหากคือ --device ได้รับการยอมรับ แต่เตือนและละเว้นว่าขึ้นอยู่กับโฮสต์ หลักฐาน: --device ได้รับการยอมรับแต่ถูกเตือนและละเว้นเนื่องจากขึ้นอยู่กับโฮสต์ ข้อจำกัดสิทธิ์ขั้นต่ำนี้เป็นจุดหยุด ตรวจสอบอุปกรณ์ที่มีความสามารถพิเศษโดยไม่มีพฤติกรรมการผลิต จากนั้นบันทึกการตรวจสอบโฮสต์สำหรับการจำกัดโฮสต์และการเข้าถึง
สิ่งที่ --privileged ทำ — ความสามารถทั้งหมด การเข้าถึงอุปกรณ์ทั้งหมด และการผ่อนคลายการจำกัด seccomp และ AppArmor
สิ่งที่ --privileged ทำ — ความสามารถทั้งหมด การเข้าถึงอุปกรณ์ทั้งหมด และการผ่อนคลายการจำกัด seccomp และ AppArmor หลักฐาน: เอฟเฟกต์การกักขังโฮสต์ไม่สามารถระบุได้จากข้อความคำสั่ง ติดตามโทเค็นสิทธิพิเศษน้อยที่สุดในอุปกรณ์ที่มีความสามารถพิเศษ แยกค่าที่เรียงลำดับออกจากฟิลด์ค่าสุดท้าย การกักขังโฮสต์และการเข้าถึงอยู่นอกการรวบรวม
ขอบเขตกลไกความปลอดภัยที่เกี่ยวข้องคือ ขอบเขตไวยากรณ์ความปลอดภัยแยกต่างหากคือการเข้าถึง Zigbee ที่จำเป็นนั้นไม่สามารถอนุมานได้จากคำสั่งสิทธิพิเศษเดิม หลักฐาน: การเข้าถึง Zigbee ที่จำเป็นไม่สามารถอนุมานได้จากคำสั่งสิทธิพิเศษเดิม ใช้ข้อเท็จจริงเกี่ยวกับสิทธิ์ขั้นต่ำนี้เพื่อคาดการณ์สมาชิกหนึ่งรายหรือสเกลาร์ในอุปกรณ์ที่มีความสามารถพิเศษ ตรวจสอบคำเตือนก่อนตัดสินใจใดๆ เกี่ยวกับการจำกัดโฮสต์และการเข้าถึง
ความสามารถแทน — cap_add: โดยมี NET_ADMIN, SYS_TIME หรืออื่นๆ เป็นเวอร์ชันแคบ และ cap_drop: ALL เป็นพื้นฐาน
ความสามารถแทน — cap_add: โดยมี NET_ADMIN, SYS_TIME หรืออื่นๆ เป็นเวอร์ชันแคบ และ cap_drop: ALL เป็นพื้นฐาน หลักฐาน: --cap-add และ --cap-drop กลายเป็นรายการเรียงลำดับที่ชัดเจน ตัดสินการให้สิทธิ์ซีเรียลไลซ์น้อยที่สุดจากโมเดล การอ้างถึงอุปกรณ์ที่มีความสามารถพิเศษจะปกป้องประเภทต่างๆ แต่ไม่มีหลักฐานการดำเนินการสำหรับการจำกัดโฮสต์และการเข้าถึง
การสังเกตการทำให้เป็นอนุกรมความปลอดภัยครั้งที่สองคือ ขอบเขตเอาต์พุตการรักษาความปลอดภัยที่แยกต่างหากคือคีย์สิทธิพิเศษที่มองเห็นได้สนับสนุนการตรวจสอบในขณะที่คำเตือนรักษาช่องว่าง หลักฐาน: คีย์สิทธิพิเศษที่มองเห็นได้รองรับการตรวจสอบ ในขณะที่คำเตือนยังคงรักษาช่องว่างไว้ ผลลัพธ์สิทธิ์ขั้นต่ำนี้จะแยกการตั้งค่าออกจากบริบทที่ไม่พร้อมใช้งาน ให้อุปกรณ์ที่มีความสามารถพิเศษสามารถตรวจสอบได้ และตรวจสอบการจำกัดโฮสต์และการเข้าถึงโดยอิสระ
--device ได้รับการยอมรับแต่ไม่ได้จงใจแปลง เพิ่มรายการอุปกรณ์เฉพาะโฮสต์ด้วยตนเอง
อุปกรณ์แทน — --device /dev/ttyUSB0 กลายเป็นอุปกรณ์: ซึ่งเป็นเหตุผลที่แท้จริงตามปกติที่ผู้คนเข้าถึงเพื่อ --privileged หลักฐาน: --device ได้รับการยอมรับแต่ถูกเตือนและละไว้ว่าขึ้นอยู่กับโฮสต์ --device ได้รับการยอมรับแต่ไม่ได้จงใจแปลง เพิ่มรายการอุปกรณ์เฉพาะโฮสต์ด้วยตนเอง หยุดที่ข้อยกเว้นสิทธิพิเศษน้อยที่สุดแทนที่จะคาดเดา อุปกรณ์เพิ่มเติมใดๆ ที่มีความสามารถใกล้เคียงสิทธิพิเศษจำเป็นต้องมีเหตุผลเฉพาะด้านการปรับใช้ซึ่งเชื่อมโยงกับการจำกัดโฮสต์และการเข้าถึง
ข้อจำกัดข้อยกเว้นด้านความปลอดภัยอีกประการหนึ่งคือ สำหรับส่วนความปลอดภัยนี้ ให้เก็บต้นฉบับสำหรับคำสั่งส่วนความปลอดภัยนี้ และคำเตือนสำหรับส่วนความปลอดภัยนี้ข้างไฟล์ตัวเลือกนี้ หลักฐาน: พื้นที่เก็บข้อมูลไม่ได้ให้รันไทม์หรือข้อพิสูจน์ทางประวัติศาสตร์ที่กว้างขึ้น เก็บคำสั่งสิทธิ์ขั้นต่ำเดิมไว้ข้างคำเตือน การเปรียบเทียบแสดงให้เห็นว่าอุปกรณ์มีความสามารถพิเศษอะไรบ้าง และการตัดสินใจจำกัดโฮสต์และการเข้าถึงใดที่ยังคงเป็นแบบแมนนวล
การแก้ไขที่ยกเลิกสิทธิ์ต้องใช้วิจารณญาณของผู้ปฏิบัติงาน เนื่องจากตัวแปลงนี้ไม่สามารถอนุมานอุปกรณ์หรือความสามารถที่จำเป็นได้
ตัวอย่างการทำงาน: การยกเลิกสิทธิ์คำสั่ง Zigbee Bridge — แทนที่ --privileged ด้วยรายการอุปกรณ์และความสามารถเดียว หลักฐาน: การเข้าถึง Zigbee ที่จำเป็นไม่สามารถอนุมานได้จากคำสั่งสิทธิพิเศษในอดีต การแก้ไขที่ยกเลิกสิทธิ์ต้องใช้วิจารณญาณของผู้ปฏิบัติงาน เนื่องจากตัวแปลงนี้ไม่สามารถอนุมานอุปกรณ์หรือความสามารถที่จำเป็นได้ สร้างตัวอย่างสิทธิ์ขั้นต่ำจากชื่อสังเคราะห์ ทำให้ทุกรายการอุปกรณ์ที่มีความสามารถพิเศษสามารถตรวจสอบย้อนกลับได้ โดยไม่เปิดเผยการจำกัดโฮสต์ที่ใช้งานจริงและรายละเอียดการเข้าถึง
ตัวอย่างตัวอย่างการรักษาความปลอดภัยเดียวกันนี้แสดงให้เห็นว่าสำหรับส่วนการรักษาความปลอดภัยนี้ ให้เก็บต้นฉบับสำหรับคำสั่งส่วนการรักษาความปลอดภัยนี้และคำเตือนสำหรับส่วนการรักษาความปลอดภัยนี้ไว้ข้างๆ ไฟล์ตัวเลือกนี้ ข้อเท็จจริงเกี่ยวกับสิทธิพิเศษที่จับคู่น้อยที่สุดควรปรากฏในอุปกรณ์ที่มีความสามารถพิเศษ บันทึกบรรทัดนั้นและหลีกเลี่ยงสมมติฐานเกี่ยวกับการจำกัดและการเข้าถึงโฮสต์
การอ่าน YAML ที่แปลงแล้วเป็นการทบทวน - สิทธิพิเศษ: true โดดเด่นในความแตกต่างในลักษณะที่การตั้งค่าสถานะในบรรทัดเชลล์ไม่ได้
การอ่าน YAML ที่แปลงแล้วเป็นการทบทวน - สิทธิพิเศษ: true โดดเด่นในความแตกต่างในแบบที่แฟล็กในเชลล์ไม่มี แปลผลที่ตามมาของสิทธิพิเศษน้อยที่สุดให้เป็นอุปกรณ์ที่มีความสามารถพิเศษที่สังเกตได้ข้อแตกต่าง นักเทียบท่าเป็นเจ้าของการกักขังโฮสต์ในภายหลังและคำตัดสินในการเข้าถึง
การใช้งานผลการรักษาความปลอดภัยยังแสดงขอบเขตผลการรักษาความปลอดภัยที่แยกต่างหากคือ --privileged กลายเป็นสิทธิพิเศษจริงโดยไม่มีการรับรองด้านความปลอดภัย แบ่งหน้าที่รับผิดชอบสิทธิ์ให้น้อยที่สุด: การแปลงเขียนอุปกรณ์ที่มีความสามารถพิเศษ พื้นที่เก็บข้อมูลจะลบความลับออก และผู้ปฏิบัติงานตรวจสอบการจำกัดโฮสต์และการเข้าถึง
สิ่งนี้ไม่ครอบคลุม — การเข้าถึง GPU โปรไฟล์ seccomp ที่กำหนดเอง และบริบทความปลอดภัยของ Kubernetes
สิ่งนี้ไม่ครอบคลุมถึง — การเข้าถึง GPU โปรไฟล์ seccomp ที่กำหนดเอง และบริบทความปลอดภัยของ Kubernetes หลักฐาน: GPU ไม่ได้สร้างการจองและโปรไฟล์ที่กำหนดเอง จำกัดขอบเขตสิทธิ์ขั้นต่ำให้กับสาขาอุปกรณ์ที่มีความสามารถพิเศษที่แสดงที่นี่ แบบฟอร์มใกล้เคียงและค่าเริ่มต้นไม่สามารถตอบคำถามการกักขังโฮสต์และคำถามในการเข้าถึงได้
ขีดจำกัดขอบเขตความปลอดภัยอีกประการหนึ่งตามมาจากขอบเขตขีดจำกัดความปลอดภัยที่แยกต่างหากคือเอฟเฟกต์การจำกัดโฮสต์ไม่สามารถระบุได้จากข้อความคำสั่ง ถือว่าขอบเขตสิทธิ์ขั้นต่ำนี้เป็นข้อยกเว้น ต้องการอุปกรณ์ที่มีความสามารถพิเศษที่แม่นยำมากกว่าการเดาเกี่ยวกับการจำกัดโฮสต์และการเข้าถึง
สิทธิ์จะปรากฏให้เห็นเมื่อแมป แต่การเข้าถึงอุปกรณ์ที่ไม่รองรับยังคงเป็นคำเตือนแทนที่จะเป็นคีย์ที่สร้างขึ้น
ประเด็นสำคัญ: สิทธิ์ควรมีความชัดเจนและน้อยที่สุด และตัวแปลงจะทำให้มองเห็นเป็นคีย์ที่คุณสงสัยได้ หลักฐาน: สิทธิพิเศษขั้นต่ำต้องอาศัยการออกแบบของมนุษย์นอกเหนือจากการเปลี่ยนใจเลื่อมใส สิทธิ์จะปรากฏให้เห็นเมื่อแมป แต่การเข้าถึงอุปกรณ์ที่ไม่รองรับยังคงเป็นคำเตือนแทนที่จะเป็นคีย์ที่สร้างขึ้น ตรวจสอบสิทธิ์ขั้นต่ำเป็นตัวเลือกแหล่งที่มา ฟิลด์โมเดล บรรทัดอุปกรณ์ที่มีความสามารถพิเศษ และคำเตือน ลบความลับก่อนตรวจสอบการจำกัดโฮสต์และการเข้าถึง
สุดท้ายนี้ แหล่งที่มาของการรักษาความปลอดภัยยืนยันว่าเก็บคำสั่งเดิมสำหรับส่วนการรักษาความปลอดภัยนี้ และคำเตือนข้างส่วนการรักษาความปลอดภัยนี้ ไฟล์ผู้สมัครว่าข้อสรุปการรักษาความปลอดภัยจะปรับปรุงความสามารถในการตรวจสอบสำหรับส่วนการรักษาความปลอดภัยนี้โดยไม่มีเชลล์ที่เทียบเท่าที่มีแนวโน้มสำหรับการแยกวิเคราะห์ส่วนการรักษาความปลอดภัยนี้ยังคงอยู่นอกเหนือการรับประกันการนำไปใช้ในการรักษาความปลอดภัย ปิดสิทธิ์ขั้นต่ำอย่างหวุดหวิด: อุปกรณ์ที่มีความสามารถพิเศษคือตัวเลือก ไม่รับประกันการจำกัดโฮสต์และการเข้าถึงและความเท่าเทียมของเชลล์