TUF 1.0 พร้อมใช้งานแล้ว ซึ่งเป็นเฟรมเวิร์กสำหรับการจัดระเบียบการส่งมอบการอัปเดตอย่างปลอดภัย

TUF 1.0 (The Update Framework) ได้รับการเผยแพร่แล้ว โดยมีเครื่องมือสำหรับการตรวจสอบและดาวน์โหลดการอัปเดตอย่างปลอดภัย เป้าหมายหลักของโครงการคือการปกป้องไคลเอนต์จากการโจมตีพื้นที่เก็บข้อมูลและโครงสร้างพื้นฐานโดยทั่วไป รวมถึงการตอบโต้การส่งเสริมโดยผู้โจมตีเกี่ยวกับการอัปเดตสมมติที่สร้างขึ้นหลังจากเข้าถึงคีย์สำหรับการสร้างลายเซ็นดิจิทัลหรือประนีประนอมพื้นที่เก็บข้อมูล โครงการนี้ได้รับการพัฒนาภายใต้การอุปถัมภ์ของ Linux Foundation และใช้เพื่อปรับปรุงความปลอดภัยของการส่งมอบการอัปเดตในโครงการต่างๆ เช่น Docker, Fuchsia, Automotive Grade Linux, Bottlerocket และ PyPI (การรวมการตรวจสอบการดาวน์โหลดและข้อมูลเมตาใน PyPI คาดว่าจะรวมอยู่ใน อนาคตอันใกล้). โค้ดการใช้งานอ้างอิง TUF เขียนด้วยภาษา Python และเผยแพร่ภายใต้ลิขสิทธิ์ Apache 2.0

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

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

ในบรรดาการโจมตีที่ TUF สามารถตอบโต้ได้คือการแทนที่เวอร์ชันเก่าภายใต้หน้ากากของการอัปเดต เพื่อป้องกันการแก้ไขช่องโหว่ของซอฟต์แวร์ หรือการย้อนกลับของผู้ใช้ไปเป็นเวอร์ชันเก่าที่มีช่องโหว่ เช่นเดียวกับการส่งเสริมการอัปเดตที่เป็นอันตรายที่ลงนามอย่างถูกต้องโดยใช้ช่องโหว่ คีย์ การโจมตี DoS บนไคลเอนต์ เช่น การเติมดิสก์ด้วยการอัพเดตไม่รู้จบ

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

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

TUF 1.0 พร้อมใช้งานแล้ว ซึ่งเป็นเฟรมเวิร์กสำหรับการจัดระเบียบการส่งมอบการอัปเดตอย่างปลอดภัย

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

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

ที่มา: opennet.ru

เพิ่มความคิดเห็น