Red Hat และ Google เปิดตัว Sigstore บริการสำหรับการตรวจสอบรหัสเข้ารหัส

Red Hat และ Google ร่วมกับ Purdue University ก่อตั้งโครงการ Sigstore โดยมีวัตถุประสงค์เพื่อสร้างเครื่องมือและบริการสำหรับการตรวจสอบซอฟต์แวร์โดยใช้ลายเซ็นดิจิทัล และการรักษาบันทึกสาธารณะเพื่อยืนยันความถูกต้อง (บันทึกความโปร่งใส) โครงการนี้จะได้รับการพัฒนาภายใต้การอุปถัมภ์ของมูลนิธิ Linux องค์กรที่ไม่แสวงหาผลกำไร

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

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

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

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

Sigstore มีทั้งบริการสำเร็จรูปที่คุณสามารถใช้อยู่แล้ว และชุดเครื่องมือที่ช่วยให้คุณสามารถปรับใช้บริการที่คล้ายกันบนอุปกรณ์ของคุณเอง บริการนี้เป็นบริการฟรีสำหรับนักพัฒนาและผู้ให้บริการซอฟต์แวร์ทั้งหมด และมีการปรับใช้บนแพลตฟอร์มที่เป็นกลาง - Linux Foundation ส่วนประกอบทั้งหมดของบริการเป็นโอเพ่นซอร์ส เขียนด้วยภาษา Go และเผยแพร่ภายใต้ลิขสิทธิ์ Apache 2.0

ในบรรดาองค์ประกอบที่พัฒนาแล้วเราสามารถสังเกตได้:

  • Rekor เป็นการใช้งานบันทึกสำหรับการจัดเก็บข้อมูลเมตาที่ลงนามแบบดิจิทัลซึ่งสะท้อนข้อมูลเกี่ยวกับโครงการ เพื่อให้มั่นใจในความสมบูรณ์และป้องกันข้อมูลเสียหายภายหลังเหตุการณ์ดังกล่าว จึงมีการใช้โครงสร้างคล้ายต้นไม้ “Merkle Tree” ซึ่งแต่ละสาขาจะตรวจสอบกิ่งและโหนดที่ซ่อนอยู่ทั้งหมด ด้วยการแฮชร่วม (คล้ายต้นไม้) เมื่อมีแฮชสุดท้าย ผู้ใช้สามารถตรวจสอบความถูกต้องของประวัติการดำเนินการทั้งหมดได้ตลอดจนความถูกต้องของสถานะที่ผ่านมาของฐานข้อมูล (แฮชการตรวจสอบรูทของสถานะใหม่ของฐานข้อมูลจะถูกคำนวณโดยคำนึงถึงสถานะที่ผ่านมา ). ในการตรวจสอบและเพิ่มบันทึกใหม่ จะมีการจัดหา Restful API รวมถึงอินเทอร์เฟซ cli
  • Fulcio (SigStore WebPKI) คือระบบสำหรับการสร้างหน่วยงานออกใบรับรอง (Root-CAs) ที่ออกใบรับรองอายุสั้นโดยอิงจากอีเมลที่ได้รับการตรวจสอบสิทธิ์ผ่าน OpenID Connect อายุการใช้งานของใบรับรองคือ 20 นาที ในระหว่างนี้นักพัฒนาจะต้องมีเวลาในการสร้างลายเซ็นดิจิทัล (หากใบรับรองตกไปอยู่ในมือของผู้โจมตีในภายหลัง ใบรับรองนั้นจะหมดอายุแล้ว)
  • Сosign (การลงนามคอนเทนเนอร์) เป็นชุดเครื่องมือสำหรับสร้างลายเซ็นสำหรับคอนเทนเนอร์ การตรวจสอบลายเซ็น และวางคอนเทนเนอร์ที่ลงนามไว้ในที่เก็บที่เข้ากันได้กับ OCI (Open Container Initiative)

ที่มา: opennet.ru

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