เหตุใดแพทช์ความปลอดภัยไม่รวมอยู่ในเคอร์เนลของวานิลลา?


22

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

หากนี่เป็นการแลกเปลี่ยน (บางแอพพลิเคชั่นที่คุณต้องการหลีกเลี่ยงมาตรการรักษาความปลอดภัย) ดูเหมือนว่าgrsecurityอาจเป็นตัวเลือกในการเปิดใช้งานในเคอร์เนลวานิลลา

grsecurityมีจำนวนมากดังนั้นสิ่งที่อยู่ในแก่นหลักของวานิลลาผมมีช่วงเวลาที่ยากในการทำความเข้าใจในเหตุผลที่ชุมชนไม่ต้องการที่จะรวมถึง


ดูเหมือนว่าจะเป็นปัญหาทางการเมือง ดูเหมือนว่า Torvalds คิดว่าแพทช์บางตัวของพวกเขาเป็นขยะ โปรดดูคำแนะนำเกี่ยวกับความปลอดภัยของ Qualys - สแต็คแคลชและช่องโหว่ CONFIG_VMAP_STACK เพิ่มเติม refcount_t UAF และเมธอด Secure Boot bypass / rootkit ที่ละเว้นในรายชื่อผู้รับจดหมายของ OSS-Security

จากคำแนะนำที่ผ่านมาในรายการส่งเมลเคอร์เนล crypto ฉันและคนอื่น ๆ ได้ถูกวางไว้ในที่ฝากข้อมูล Torvalds เลเบล "บ้า" ดังนั้นมันจึงไม่ใช่แค่คนที่มีปัญหาด้านความปลอดภัยเท่านั้น ยังเห็นสุ่ม: คำเตือนเงียบคอมไพเลอร์และแก้ไขปัญหาการแข่งขัน เธรดเป็นการสนทนาเกี่ยวกับการจัดเตรียม dmesg สำหรับไดรเวอร์ที่ใช้ {u} แบบสุ่มก่อนที่จะพร้อม (คุณอาจไม่รู้ แต่มีไดรเวอร์จำนวนหนึ่งใช้อุปกรณ์ก่อนที่จะทำการเพาะ

คำตอบ:


23

(ฉันเป็นนักพัฒนาระบบรักษาความปลอดภัย)

คำตอบ jsbillings ของอยู่บนพื้นฐานของการโพสต์อีเมลที่กล่าวถึงในบทความ LWN

บริบทที่สำคัญในที่นี้คือทั้งนักพัฒนาคุณภาพและผู้ให้บริการ PaX ไม่มีส่วนเกี่ยวข้องในการอภิปรายรายชื่อผู้รับจดหมาย ความคิดเห็นของ PaX Team ต่อบทความ LWN จะถูกลบออก เราไม่เคยส่งแพตช์เพื่อรวมการฉีด เหตุผลง่ายๆข้อหนึ่งก็คือเราเป็นคนที่มีความคิดและการใช้งานซึ่งการอัปสตรีมไม่สามารถแก้ไขได้ นอกจากนี้เราต้องมีส่วนร่วมในการโต้แย้งรายชื่อผู้รับจดหมายที่น่าเบื่อกับกลุ่มนักพัฒนาที่ต่อต้านการรักษาความปลอดภัยเป็นอย่างมาก (ดูงานนำเสนอ H2HC ประจำปี 2555 ของฉันสำหรับการอภิปรายเพิ่มเติมนี้) เรามีเวลาและทรัพยากรที่ จำกัด ดังนั้นเราจึงเลือกใช้อย่างมีประสิทธิภาพที่สุด: สร้างเทคโนโลยีความปลอดภัยในวันพรุ่งนี้และทำให้ทุกคนสามารถใช้งานได้ฟรี ในฐานะที่เป็นทีม PaX กล่าวถึงในความคิดเห็นของพวกเขาเรามีมุมมองโดยเฉพาะอย่างยิ่งด้านความปลอดภัยและดังนั้นจึงไม่เชื่อว่ามีบุญมากในการแยกออกและ upstreaming ของคุณลักษณะแต่ละอย่าง


ฉันชอบลิงค์ไปยังบทความ LWN ที่น่าสนใจ ขอขอบคุณ. ฉันยังอยู่ในภาวะสับสนในการอ่านความเห็นว่ากลุ่มผู้พัฒนาเคอร์เนลจะเป็น "การป้องกันความปลอดภัย" ฉันไม่ได้มีความเข้าใจอย่างถ่องแท้ใด ๆ แต่สิ่งนี้น่าเป็นห่วง :( ความสับสนก็คือฉันถือว่าความปลอดภัยเป็นหนึ่งใน "ข้อโต้แย้งที่แข็งแกร่งที่สุด" สำหรับ OpenSource และ Linux ในขณะนี้ฉันรู้สึกว่าถูกคุกคามบนระบบที่ใช้ Ubuntu เหลือไว้เล็กน้อยด้วยจะมีอะไรที่ "ดวงตามากขึ้นสามารถมองเห็น" - ความปลอดภัยของระบบปฏิบัติการถ้าเราไม่รู้ฉันชอบความมั่นคง แต่อย่างใดขอบคุณสำหรับมัน
humanityANDpeace

10

ดูเหมือนว่าผู้พัฒนา grsecurity มีปัญหาในอดีตที่เชื่อว่า Linus ยอมรับการเปลี่ยนแปลงในเคอร์เนล ปัญหาดูเหมือนจะเป็น:

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

สิ่งเหล่านี้เป็นจุดรบกวน ยังคงเรียนรู้ - ฉันไม่ได้ตระหนักถึง BLOB (นั่นคือสิ่งที่เป็นข้อมูลไบนารีขวาสิ่งที่ไม่ได้เปิดโอเพนซอร์สฉันเดา) ข้อมูลก็ดี หากเหตุผลที่ระบุไว้เป็นความจริงก็ยังคงเป็นความอัปยศ ฉันชอบแนวคิดของการปรับปรุงความปลอดภัยที่เกี่ยวข้องกับชุดความปลอดภัยของ grsecurity
HumanityANDpeace

1
@humanityANDpeace "blob" อาจหมายถึง "binary large object" (โดยปกติจะอยู่ในฐานข้อมูล แต่บางครั้งก็อยู่ที่อื่นเช่นกัน) หรืออาจเป็นคำแสลงสำหรับ "กลุ่มก้อนขนาดใหญ่ของอะไรก็ได้" ในกรณีนี้ฉันใช้ jsbillings ซึ่งหมายความว่ามันเป็นตัวย่อ: ซอร์สโค้ดขนาดใหญ่ซึ่งไม่ได้ถูกแบ่งย่อยเพิ่มเติม ในฐานะที่เป็นโปรแกรมเมอร์ฉันรู้ว่าพวกเขาสามารถทำงานด้วยความหงุดหงิดได้อย่างไร
CVn
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.