หากถูกโจมตี ข้อบกพร่องเหล่านี้อาจทำให้ผู้โจมตีเข้าถึงข้อมูลที่ละเอียดอ่อนโดยไม่ได้รับอนุญาต หรือก่อให้เกิดปัญหาโดยทั่วไป
เมื่อไม่นานมานี้กลุ่มนักวิจัยจากมหาวิทยาลัยแคลิฟอร์เนียที่เดวิสได้วิเคราะห์ความเป็นไปได้ในการใช้ Rowhammer (วิธีการทำลายบิต DRAM) เพื่อสร้างลายนิ้วมือที่ไม่ซ้ำกัน
ระหว่างการวิเคราะห์ พวกเขาได้กล่าวว่าสังเกตเห็นว่าลักษณะของความผิดเพี้ยนที่เกิดจากการโจมตีแบบ Rowhammer นั้นมีลักษณะเฉพาะสำหรับชิป DRAM แต่ละตัวและไม่เปลี่ยนแปลงไปตามเวลา ส่งผลให้มีการพัฒนาเทคนิค Centauri ขึ้น ซึ่งช่วยให้สามารถระบุระบบได้ด้วยความแม่นยำเฉลี่ย 99,91%
ในการสร้างตัวระบุใน Centauri นั้น เพียงแค่รันโค้ดเป็นเวลาไม่กี่วินาทีหรือนาทีโดยแลกกับความแม่นยำที่ลดลงเล็กน้อย (เหลือ 0,64) การระบุตัวตนจะสามารถทำได้โดยลดเวลาลง 95% เหลือประมาณ 9.92 วินาที ความแม่นยำสูงสุดจะเกิดขึ้นเมื่อการตรวจสอบใช้เวลาประมาณสามนาที
กระบวนการระบุตัวตนดำเนินการในสามขั้นตอน :
- ใช้วิธี Blacksmith (ตัวแปร RowHammer) เพื่อกำหนดกลยุทธ์การป้องกัน (TRR) ที่ใช้ในชิปต่อการบิดเบือนของเซลล์หน่วยความจำ
- การใช้รหัสนำไปสู่การบิดเบือน
- การกำหนดตำแหน่งสัมพัทธ์และจำนวนตัวเก็บประจุที่มีการเปลี่ยนแปลงค่าของประจุ
ตัวระบุถูกสร้างขึ้นบนพื้นฐานของการสร้างการกระจายเชิงประจักษ์ของความน่าจะเป็นในการเปลี่ยนประจุของตัวเก็บประจุในบล็อกหน่วยความจำ 2 เมกะไบต์
สำหรับผู้ที่ไม่ทราบถึงการโจมตีคลาส RowHammer คุณควรทราบว่าการโจมตีเหล่านี้อนุญาตให้คุณบิดเบือนเนื้อหาของหน่วยความจำแต่ละบิตโดยการอ่านข้อมูลจากเซลล์หน่วยความจำข้างเคียงเป็นวงจร
“Centauri เป็นเทคนิคแรกที่สาธิตการแยกลายนิ้วมือที่มีลักษณะเฉพาะและมีความเสถียรในระดับที่ใหญ่ที่สุดโดยใช้ Rowhammer ในขณะที่เอาชนะข้อจำกัดในทางปฏิบัติที่กำหนดโดยระบบปฏิบัติการและโดยการบรรเทาของ Rowhammer เช่น TRR”
เนื่องจาก DRAM เป็นเซลล์สองมิติ แต่ละเซลล์ประกอบด้วยตัวเก็บประจุและทรานซิสเตอร์ การอ่านพื้นที่หน่วยความจำเดียวกันอย่างต่อเนื่องส่งผลให้เกิดความผันผวนของแรงดันไฟฟ้าและความผิดปกติที่ทำให้มีการสูญเสียประจุเล็กน้อยในเซลล์ข้างเคียง หากความเข้มของการอ่านสูง เซลล์ข้างเคียงอาจสูญเสียประจุในปริมาณที่มากพอ และรอบการสร้างใหม่ครั้งต่อไปจะไม่มีเวลาคืนค่าสถานะดั้งเดิม ซึ่งจะทำให้ค่าของข้อมูลที่เก็บไว้ในเซลล์เปลี่ยนแปลง .
กระบวนการผลิตชิปมีความไม่สม่ำเสมอ ดังนั้นชิปหน่วยความจำแต่ละตัวจึงมีโครงสร้างทางกายภาพที่ไม่ซ้ำกันเนื่องจากค่าความคลาดเคลื่อนที่เกี่ยวข้อง ความแตกต่างเหล่านี้หมายความว่าการกระจายความน่าจะเป็นของการบิดเบือนบิตที่เกิดจากการโจมตีแบบ Rowhammer ก็มีเอกลักษณ์เฉพาะสำหรับโมดูลหน่วยความจำที่ผลิตขึ้นแต่ละตัว ซึ่งเป็นสิ่งที่ผู้สร้างวิธีการ Centauri ใช้ประโยชน์
กลไก TRR (Target Row Refresh) ที่ผู้ผลิตหน่วยความจำใช้ ซึ่งป้องกันการโจมตีแบบ Rowhammerโดยการบล็อกการบิดเบือนของเซลล์ในแถวที่อยู่ติดกันไม่ส่งผลกระทบต่อความแม่นยำในการระบุโดยวิธี Centauri
ในทางปฏิบัติวิธีนี้สามารถนำไปใช้ได้ เช่น ตรวจจับการเปลี่ยนอุปกรณ์ หรือระบุระบบที่คอมพิวเตอร์เครื่องเดียวปลอมตัวเป็นอุปกรณ์หลายเครื่อง อย่างไรก็ตาม ไม่น่าจะขยายขอบเขตไปไกลกว่างานวิจัยทางวิชาการ เนื่องจากวิธีการใช้วิธีนี้จะทำให้ชิปหน่วยความจำสึกหรอมากขึ้น และอาจทำให้ซอฟต์แวร์ทำงานผิดพลาดเนื่องจากความผิดเพี้ยนในเนื้อหาของเซลล์
ไม่เป็นที่แน่ใจว่าวิธีการนี้จะไม่สามารถปรับใช้ได้ในเบราว์เซอร์เพื่อระบุผู้เยี่ยมชมเว็บไซต์ โดยใช้การใช้งาน Rowhammer ที่เตรียมไว้ล่วงหน้าใน JavaScript เป็นพื้นฐาน
วิธีการนี้ได้รับการทดสอบกับโมดูล DRAM ประมาณ 98 โมดูล (ชิปเซ็ตที่เหมือนกัน 6 ชิปเซ็ตจากผู้ผลิตสองราย) การทดลองซ้ำที่ดำเนินการภายใน 10 วันไม่ได้แสดงว่าความแม่นยำในการระบุตัวตนลดลง
สุดท้ายนี้ หากคุณสนใจเรียนรู้เพิ่มเติม สามารถดูรายละเอียดได้ที่ลิงก์ต่อไปนี้