ขอบเขตการรั่วไหลขึ้นอยู่กับชนิดของกุญแจและระยะเวลาที่ผู้โจมตีเข้าถึงได้ แรตเชตไม่ได้รับประกันว่าจะมีเพียงข้อความเดียวที่เสี่ยง
การเข้ารหัสที่แข็งแกร่งต้องอาศัยการทำงานบนอุปกรณ์ที่ถูกต้องด้วย ช่องโหว่ในระบบปฏิบัติการ การนำการเข้ารหัสไปใช้ หรือฮาร์ดแวร์อาจเปิดทางให้เข้าถึงข้อมูลอ่อนไหวได้ แต่การมีงานวิจัยเกี่ยวกับการโจมตีหน่วยประมวลผลไม่ได้หมายความว่าโทรศัพท์หรือแอปส่งข้อความทุกตัวจะถูกบุกรุกด้วยวิธีเดียวกันได้
คำถามที่มีประโยชน์คือ ผู้โจมตีมีสิทธิ์เข้าถึงอะไร มองเห็นกุญแจหรือข้อความที่ไม่เข้ารหัสส่วนใดได้ และการเข้าถึงนั้นเป็นเพียงชั่วคราวหรือต่อเนื่อง? คำตอบเหล่านี้สำคัญกว่าชื่ออัลกอริทึม
ช่องทางข้างต่างจากการดึงข้อมูลหน่วยความจำอย่างไร?
ในการดึงข้อมูลหน่วยความจำโดยตรง ผู้โจมตีอาจอ่านบางส่วนของพื้นที่หน่วยความจำของโพรเซสหรืออุปกรณ์ได้ ส่วนการโจมตีช่องทางข้างใช้เบาะแส เช่น เวลาที่ใช้ทำงานหรือพฤติกรรมของแคช เพื่ออนุมานข้อมูล ทั้งสองวิธีไม่จำเป็นต้องมีเงื่อนไขตั้งต้นหรือผลลัพธ์เหมือนกัน
งานวิจัยต้นฉบับ FLUSH+RELOAD ศึกษาพฤติกรรมของแคชและเพจหน่วยความจำที่ใช้ร่วมกันในสภาพแวดล้อมทดลองเฉพาะ และแสดงการดึงกุญแจจาก GnuPG รุ่นหนึ่ง ผลดังกล่าวไม่ใช่การทดสอบความปลอดภัยของ Livara หรือหลักฐานว่าหน่วยประมวลผลของโทรศัพท์ทุกรุ่นมีช่องโหว่
| ประเภทการเข้าถึง | คำถามที่จำเป็นต่อการประเมิน |
|---|---|
| เรียกใช้แอปทั่วไปบนอุปกรณ์เดียวกัน | การแยกโพรเซสและเงื่อนไขตั้งต้นของการโจมตีเปิดให้สังเกตข้อมูลได้หรือไม่? |
| เข้าถึงด้วยสิทธิ์ระดับสูงของระบบปฏิบัติการ | ผู้โจมตีเข้าถึงข้อมูลหรือการทำงานกับกุญแจใดได้บ้าง? |
| เข้าถึงตัวอุปกรณ์หรือในห้องปฏิบัติการ | สถานะการล็อก รุ่นฮาร์ดแวร์ และการป้องกันกุญแจเป็นอย่างไร? |
| เข้าถึงแอปอย่างต่อเนื่อง | ผู้โจมตีสามารถเก็บข้อความที่ไม่เข้ารหัสหรือกุญแจใหม่ซ้ำได้หรือไม่? |
คำกว้าง ๆ ว่า “แฮ็ก RAM” ไม่ใช่คำอธิบายทางเทคนิคที่เพียงพอหากขาดรายละเอียดเหล่านี้
Keystore และฮาร์ดแวร์ที่ปลอดภัยช่วยอะไรได้บ้าง?
Android Keystore สามารถจำกัดการใช้กุญแจ และบนอุปกรณ์ที่เหมาะสม สามารถทำงานโดยมีฮาร์ดแวร์รองรับได้ ในการออกแบบนี้ การดึงกุญแจออกมาไม่ได้ไม่ใช่เรื่องเดียวกับการที่ผู้โจมตีใช้กุญแจไม่ได้ แอปที่ติดมัลแวร์อาจนำการทำงานกับกุญแจที่ได้รับอนุญาตไปใช้ในทางมิชอบได้ในบางเงื่อนไข แม้จะนำไบต์ของกุญแจออกมาไม่ได้ก็ตาม คู่มือ Android Keystore
กุญแจและอัลกอริทึมทุกชนิดก็ไม่ได้ถูกวางไว้ในฮาร์ดแวร์ที่ปลอดภัยโดยอัตโนมัติ ต้องระบุชนิดกุญแจ การรองรับของอุปกรณ์ และวิธีที่แอปใช้งาน การบอกเพียงว่า “กุญแจอยู่บนอุปกรณ์” ไม่ได้พิสูจน์ตำแหน่งหรือระดับการป้องกันของมัน
กุญแจที่รั่วไหลหนึ่งดอกเปิดเผยเพียงข้อความเดียวหรือไม่?
บางครั้งการรั่วไหลของ กุญแจข้อความที่เป็นอิสระ อาจมีขอบเขตจำกัด แต่ถ้าผู้โจมตีได้กุญแจสายโซ่ สถานะเซสชัน กุญแจยืนยันตัวตน ประวัติที่อ่านได้ หรือบัฟเฟอร์หลายชุด ผลลัพธ์ย่อมต่างออกไป ดังนั้นจึงกล่าวไม่ได้ว่าเสี่ยง “อย่างมากหนึ่งข้อความ” โดยไม่ระบุว่าข้อมูลใดรั่วไหล
นอกจากนี้ การเปลี่ยนกุญแจสำหรับทุกข้อความไม่จำเป็นต้องตัดการเข้าถึงของผู้โจมตี หากกุญแจถัดไปอนุมานมาจากสถานะที่ผู้โจมตีมี หรือผู้โจมตียังคงอยู่บนอุปกรณ์ ก็อาจเข้าถึงข้อความถัดไปได้ด้วย การปกป้องอดีตและการฟื้นความปลอดภัยในอนาคตเป็นคุณสมบัติคนละอย่างที่มีข้อสมมติชัดเจนของตนเอง
แรตเชตและการล้างหน่วยความจำมีข้อจำกัดอะไร?
แรตเชตสามารถพัฒนากุญแจไปตลอดการสนทนา การฟื้นตัวหลังการรั่วไหลต้องมีข้อมูลใหม่ที่ผู้โจมตีเข้าถึงไม่ได้เข้ามา การส่งข้อความเพียงหนึ่งข้อความไม่ได้พิสูจน์ว่าเงื่อนไขนี้เป็นจริง ข้อกำหนด Double Ratchet อธิบายทั้งการฟื้นตัว ความเสี่ยงจากการเข้าถึงอย่างต่อเนื่อง และการกู้คืนข้อมูลที่ลบแล้ว
การลดอายุของข้อมูลอ่อนไหวและการล้างบัฟเฟอร์มีประโยชน์ แต่ไม่อาจสรุปเป็นคำกล่าวทั่วไปว่าสำเนาทั้งหมดใน RAM ถูกลบแล้ว ต้องตรวจสอบไลบรารี ภาษาโปรแกรม และเส้นทางการแสดงผลด้วย
เรากล่าวอะไรเกี่ยวกับ Livara ได้บ้าง?
หน้าความปลอดภัยของ Livara อธิบายโครงสร้างแบบไฮบริดและการพัฒนากุญแจใน LVR1 บทความนี้ไม่ใช่การทดสอบช่องทางข้าง การตรวจสอบหน่วยความจำ หรือการยืนยันว่ากุญแจทุกดอกใช้ Keystore โดยเฉพาะอย่างยิ่ง เอกสารแบบจำลองภัยคุกคาม ที่เผยแพร่ต่อสาธารณะไม่ได้รับประกันการปกป้องอุปกรณ์ที่ติดมัลแวร์
ดังนั้นจึงไม่ควรผูกคำรับรองว่า “ข้อความถัดไปจะลบล้างการบุกรุกฮาร์ดแวร์” หรือ “รั่วไหลอย่างมากหนึ่งข้อความ” เข้ากับผลิตภัณฑ์ เว้นแต่จะมีหลักฐานเฉพาะสำหรับรุ่นและสถานการณ์เดียวกันนั้น
ทางเลือกในทางปฏิบัติสำหรับผู้ใช้
อัปเดตระบบปฏิบัติการและแอปอยู่เสมอ เลือกอุปกรณ์ที่ยังได้รับการสนับสนุนด้านความปลอดภัย หลีกเลี่ยงการติดตั้งจากแหล่งที่ไม่น่าเชื่อถือและสิทธิ์เข้าถึงที่เกินจำเป็น และตั้งการล็อกที่เหมาะสม หากมีความเป็นไปได้ว่าจะถูกบุกรุกอย่างร้ายแรง การเปลี่ยนแอปส่งข้อความหรือส่งข้อความใหม่ไม่อาจทดแทนการตรวจสอบและทำความสะอาดอุปกรณ์ได้
เมื่ออ่านคำกล่าวด้านความปลอดภัย ให้ขอข้อมูลสี่อย่าง ได้แก่ รุ่นที่ทดสอบ สิทธิ์เข้าถึงของผู้โจมตี ข้อมูลที่รั่วไหล และข้อจำกัดของผลลัพธ์ ชื่อหน่วยประมวลผลหรือมาตรฐานการเข้ารหัสเพียงอย่างเดียวไม่ตอบคำถามทั้งสี่ข้อนี้



