กรณีการแฮ็ก SolarWinds ทำให้คนหันมาสนใจเรื่องความปลอดภัย supply chain ของซอฟต์แวร์กันมากขึ้น แต่ปัญหานี้ไม่ใช่เรื่องใหม่ของวงการ เมื่อไม่นานนี้เพิ่งมี นักวิจัยความปลอดภัยลองสร้างไลบรารีปลอม และมีบริษัทชื่อดังหลายแห่งดาวน์โหลดไปใช้งาน
ล่าสุด Linux Foundation เปิดตัวโครงการ sigstore ที่พยายามแก้ปัญหานี้ โดยกระตุ้นให้โลกโอเพนซอร์สใช้วิธี sign ไฟล์ที่เกี่ยวข้อง (เช่น ซอร์สโค้ด อิมเมจ และไบนารี) ทุกครั้งที่ออกรุ่นใหม่ และนำลายเซ็นเหล่านี้ไปเก็บไว้ใน log ที่แก้ไขไม่ได้ แต่สาธารณะสามารถเข้าถึง (transparency log) เพื่อตรวจสอบข้อมูลย้อนกลับได้ว่าเป็นไฟล์ของจริงจากนักพัฒนาโดยตรง ไม่ถูกแก้ไขหรือดัดแปลงโดยแฮ็กเกอร์ในภายหลัง
โครงการนี้ได้รับการสนับสนุนจากบริษัทใหญ่อย่างกูเกิลและ Red Hat ซึ่งก่อนหน้านี้ กูเกิลเพิ่งบริจาคเงินยกระดับ supply chain ให้กับแพ็กเกจของ Python เช่นกัน
ตอนนี้ sigstore ยังอยู่ในช่วงเริ่มพัฒนาเครื่องมือเก็บ log ชื่อ Rekor ที่มีทั้งฝั่งไคลเอนต์และเซิร์ฟเวอร์ ทางโครงการบอกว่าเลือกใช้ระบบไคลเอนต์-เซิร์ฟเวอร์ธรรมดา แทนการใช้บล็อคเชน เพราะเอาจริงๆ แล้วบล็อคเชนก็มักมีส่วนที่รวมศูนย์อยู่ดี และอัลกอริทึมแบบ consensus ก็มีข้อเสียเรื่อง majority attack ดังนั้นก็ไม่ต้องกระจายศูนย์ไปตั้งแต่ต้นดีกว่า (ตัว Rekor เปิดให้ใครนำไปใช้ตั้งเซิร์ฟเวอร์เองก็ได้ แต่ระบบที่ใช้จริงจะรันโดย Linux Foundation เอง)
ช่องโหว่ในกระบวนการพัฒนาซอฟต์แวร์ ที่อาจเกิด supply chain attack
ที่มา - Linux Foundation , sigstore
Comments
ปรกติมีพวก Hash value ให้ตรวจสอบนี่ใช้ไม่ได้ผลหรอครับ
Hash ทำไฟล์ยัดไส้ hash ใหม่ แปะไฟล์ลงไป จบ แต่ตัวนี้ใช้ digital signing + chain of trust ช่วยอีกแรง กุญแจสาธารณะไม่ได้แจกที่เว็บโดยตรง แต่จะไปอยู่กับแหล่งผู้ผลิตที่จะ mirror ซอฟต์แวร์ไปที่ต่าง ๆ
และต่อให้เปิด source เอาไปคอมไพล์เองยังได้ hash ไม่เหมือนเลยกันด้วยนี่ครับ
I need healing.