ZenHammer: การโจมตี Rowhammer บนแพลตฟอร์มที่ใช้ AMD Zen
- แสดงให้เห็นว่าสามารถก่อให้เกิดบิตพลิกของ Rowhammer บนอุปกรณ์ DDR4 ในระบบ AMD Zen 2 และ Zen 3 ได้ แม้จะมีมาตรการบรรเทา TRR ก็ตาม
- ผลลัพธ์นี้พิสูจน์ว่าระบบ AMD มีความเสี่ยงต่อ Rowhammer มากพอ ๆ กับระบบ Intel และเมื่อพิจารณาจากส่วนแบ่งตลาดราว 36% ของ AMD ในตลาดซีพียูเดสก์ท็อป x86 พื้นที่การโจมตีก็เพิ่มขึ้นอย่างมาก
- นอกจากนี้ ZenHammer ยังแสดงให้เห็นเป็นครั้งแรกว่าสามารถก่อให้เกิดบิตพลิกของ Rowhammer บนอุปกรณ์ DDR5 ได้
ทำอย่างไร?
- นำเทคนิค DRAMA มาใช้กับระบบ AMD เพื่อทำวิศวกรรมย้อนกลับฟังก์ชันที่อยู่ DRAM แบบลับ
- พบว่าจำเป็นต้องใช้ physical offset กับ physical address จึงจะกู้คืนฟังก์ชันที่อยู่ DRAM ได้อย่างสมบูรณ์
- แสดงให้เห็นว่าใน AMD Zen 2 และ Zen 3 สามารถใช้ฟังก์ชันที่อยู่เพื่อก่อให้เกิดบิตพลิกได้ด้วยจำนวนที่น้อยมาก
- ศึกษาการซิงโครไนซ์การรีเฟรช และพิสูจน์ว่าการวัดเวลาแบบต่อเนื่องโดยใช้แถวที่ไม่ทำซ้ำมีประสิทธิภาพสำหรับการซิงโครไนซ์การรีเฟรชที่แม่นยำและเชื่อถือได้บน AMD
- พบว่าอัตราการเปิดใช้งานของแพตเทิร์น Rowhammer แบบไม่สม่ำเสมอบนระบบ AMD Zen+/3 ต่ำกว่า Intel Coffee Lake อย่างมีนัยสำคัญ
- ศึกษาผลกระทบของชนิดของ fence และนโยบายการจัดตาราง fence ที่หลากหลายต่อแพตเทิร์น Rowhammer บนระบบ AMD Zen
ร้ายแรงแค่ไหน?
- ทำการประเมินกับอุปกรณ์ DDR4 DRAM จำนวน 10 ตัว
- ZenHammer fuzzer สามารถก่อให้เกิดบิตพลิกได้ในอุปกรณ์ DDR4 DRAM 7 จาก 10 ตัว (Zen 2) และ 6 ตัว (Zen 3)
- ประเมินความเป็นไปได้ของการโจมตีจริงของบิตพลิกเหล่านี้โดยอ้างอิงจากการโจมตี 3 แบบจากงานวิจัยก่อนหน้า
แล้ว DDR5 ล่ะ?
- ทำวิศวกรรมย้อนกลับฟังก์ชัน DRAM บน AMD Zen 4 และประเมินอุปกรณ์ DDR5 จำนวน 10 ตัว
- ZenHammer สามารถก่อให้เกิดบิตพลิกได้ราว 42,000 ครั้งในอุปกรณ์หนึ่งตัว แต่ไม่สามารถก่อให้เกิดบิตพลิกได้ในอีก 9 ตัวที่เหลือ
- สรุปว่าจำเป็นต้องมีการวิจัยเพิ่มเติมเพื่อค้นหาแพตเทิร์นที่มีประสิทธิภาพมากขึ้นสำหรับอุปกรณ์ DDR5
ข้อมูลเพิ่มเติม
- รายละเอียดและข้อมูลเพิ่มเติมของงานวิจัยนี้สามารถดูได้จากงานตีพิมพ์ที่จะนำเสนอในงาน USENIX Security เดือนสิงหาคม 2024
- ZenHammer fuzzer ใช้งานได้บน Github
คำถามที่พบบ่อย
- สาเหตุที่ก่อนหน้านี้มีความสนใจต่อระบบ AMD น้อยกว่า เพราะงานวิจัย Rowhammer ดั้งเดิมแสดงให้เห็นบิตพลิกจำนวนมากกว่าบนระบบ Intel
- แทบไม่มีอุปกรณ์ DDR4 ที่ปลอดภัยอย่างแท้จริง และคาดว่าหากปรับแต่ง fuzzer เพิ่มเติม ก็อาจก่อให้เกิดบิตพลิกได้ในอุปกรณ์เหล่านี้เช่นกัน
- เหตุผลที่ประเมินเพียง 10 อุปกรณ์ เพราะในห้องแล็บมีเครื่อง AMD Zen 2/3 จำนวนจำกัด และการทดลองบางอย่างใช้เวลานาน
- วิธีตรวจสอบว่า DRAM มีความเปราะบางหรือไม่ คือสามารถใช้โค้ดของ ZenHammer fuzzer ได้จาก Github
- สาเหตุที่ JEDEC ยังไม่แก้ปัญหานี้ เพราะการแก้ Rowhammer เป็นเรื่องยากแต่ไม่ใช่ว่าเป็นไปไม่ได้ และระบบราชการภายใน JEDEC จำนวนมากทำให้จัดการปัญหาได้ยากอย่างเหมาะสม
- การป้องกันบน DIMM ที่มี ECC ตามงานวิจัยก่อนหน้าใน DDR3 ไม่สามารถให้การป้องกันต่อ Rowhammer ได้ และเนื่องจากในอุปกรณ์ DDR4 ปัจจุบันเกิดบิตพลิกมากขึ้น จึงไม่สามารถให้การป้องกันได้อย่างสมบูรณ์
- หากระบบทำงานด้วยอัตรารีเฟรชเป็นสองเท่า ไม่เพียงเพิ่มภาระด้านประสิทธิภาพและการใช้พลังงานเท่านั้น แต่จากงานวิจัยก่อนหน้ายังชี้ว่านี่เป็นวิธีแก้ที่อ่อนแอและไม่ได้ให้การป้องกันอย่างสมบูรณ์
การเปิดเผยอย่างรับผิดชอบ
- Rowhammer เป็นปัญหาที่อุตสาหกรรมรับรู้กันโดยทั่วถึงอยู่แล้ว และจึงเห็นว่าไม่จำเป็นต้องผ่านกระบวนการเปิดเผยทั่วไป
- อย่างไรก็ตาม ได้แจ้งข้อมูลให้ AMD ทราบเมื่อวันที่ 26 กุมภาพันธ์ 2024 และตามคำขอของบริษัทจึงไม่เปิดเผยต่อสาธารณะจนถึงวันที่ 25 มีนาคม 2024
- หน้านี้เคยออนไลน์ชั่วคราวโดยไม่ได้ตั้งใจเมื่อวันที่ 21 มีนาคม 2024
คำขอบคุณ
- งานวิจัยนี้ได้รับการสนับสนุนจาก NCCR Automation ของ Swiss National Science Foundation (SNSF), โครงการ ERC-StG PROMISE และ Microsoft Swiss JRC
ความเห็นของ GN⁺
- งานวิจัย ZenHammer เป็นคำเตือนสำคัญต่อชุมชนความมั่นคงปลอดภัยคอมพิวเตอร์ โดยค้นพบวิธีใหม่ที่สามารถก่อให้เกิดบิตพลิกได้ด้วยการหลบเลี่ยงกลไกความปลอดภัยของ DRAM ที่มีอยู่เดิม สิ่งนี้เตือนผู้ผลิต DRAM และผู้ออกแบบระบบให้ทบทวนและเสริมความแข็งแกร่งให้กับกลไกป้องกันที่ใช้อยู่
- เมื่อพิจารณาผลกระทบหากนำผลวิจัยไปใช้กับระบบจริง ผู้ใช้และองค์กรควรประเมินว่าระบบของตนเปราะบางต่อการโจมตีนี้มากเพียงใด และดำเนินมาตรการด้านความปลอดภัยเมื่อจำเป็น
- เหตุผลที่เทคโนโลยีหรืองานวิจัยนี้น่าสนใจ คือมันแสดงให้เห็นว่าการโจมตี Rowhammer สามารถทำได้บนระบบ AMD แล้ว ซึ่งเป็นข้อมูลสำคัญสำหรับผู้ใช้ระบบที่ใช้ AMD ที่มีส่วนแบ่งตลาดเพิ่มขึ้น
- ในอีกมุมมองหนึ่ง งานวิจัยนี้มีข้อจำกัดตรงที่สามารถก่อให้เกิดบิตพลิกได้เฉพาะในอุปกรณ์ DRAM บางตัว และไม่สามารถได้ผลลัพธ์ที่สม่ำเสมอในทุกอุปกรณ์ ซึ่งบ่งชี้ว่ายังต้องมีการวิจัยเพิ่มเติมเพื่อประเมินความเสี่ยงจริงของการโจมตี Rowhammer
- งานวิจัยที่คล้ายกันมีเช่นงานวิจัย Rowhammer ของ Google Project Zero ซึ่งอาจช่วยให้นักวิจัยด้านความปลอดภัยประเมินและป้องกันช่องโหว่ของระบบได้
ยังไม่มีความคิดเห็น