CloudFlare เปิดตัวระบบเข้ารหัสข้อมูลต้องถอดรหัสด้วยผู้ถือกุญแจสองคน เลียนแบบการยิงนิวเคลียร์

by lew
25 November 2013 - 23:09

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

Red October คือเซิร์ฟเวอร์เข้ารหัสและถอดรหัส โดยไม่มีข้อมูลที่ต้องการเก็บรักษาอยู่บนเซิร์ฟเวอร์จริง ในตัวเซิร์ฟเวอร์ของ Red October นั้นจะเก็บกุญแจ RSA ของผู้ใช้ทุกคนเอาไว้ เมื่อมีการร้องขอให้เข้ารหัสข้อมูลใดๆ เซิร์ฟเวอร์จะ

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

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

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

กระบวนการนี้เลียนแบบการปล่อยอาวุธนิวเคลียร์ที่มีกฎ two-man rule คือ ห้ามมีใครคนใดคนหนึ่งมีสิทธิ์ปล่อยอาวุธนิวเคลียร์ด้วยตัวเอง

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

ทาง CloudFlare เปิดให้ดาวน์โหลด Red October ไปใช้งานได้ฟรี รวมถึงนำซอร์สโค้ดไปตรวจสอบความปลอดภัยกันได้

ที่มา - CloudFlare

Blognone Jobs Premium