มีการสร้างเมธอด RowHammer ใหม่เพื่อหลีกเลี่ยงการป้องกัน ECC

แถวค้อน

กลุ่มนักวิจัยจาก Free University of Amsterdam ได้พัฒนาเวอร์ชันขั้นสูงใหม่ของการโจมตี RowHammer ที่อนุญาตให้เปลี่ยนเนื้อหาของแต่ละบิตในหน่วยความจำโดยใช้ชิป DRAM เพื่อป้องกันความสมบูรณ์ของรหัสแก้ไขข้อผิดพลาด (ECC) ที่ใช้

การโจมตีสามารถดำเนินการได้จากระยะไกลด้วยการเข้าถึงระบบโดยไม่ได้รับสิทธิพิเศษเนื่องจากช่องโหว่ RowHammer สามารถบิดเบือนเนื้อหาของแต่ละบิตในหน่วยความจำได้โดยการอ่านข้อมูลจากเซลล์หน่วยความจำที่อยู่ใกล้เคียง

ช่องโหว่ RowHammer คืออะไร?

สิ่งที่กลุ่มนักวิจัยอธิบายเกี่ยวกับช่องโหว่ RowHammer นั่นคือสิ่งนี้e ขึ้นอยู่กับโครงสร้างของหน่วยความจำ DRAMเพราะโดยพื้นฐานแล้วนี่คือเมทริกซ์สองมิติของเซลล์ซึ่งแต่ละเซลล์เหล่านี้ประกอบด้วยตัวเก็บประจุและทรานซิสเตอร์

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

หากความเข้มของการอ่านมีมากพอเซลล์อาจสูญเสียประจุจำนวนมากพอสมควรและวงจรการสร้างใหม่ครั้งต่อไปจะไม่มีเวลาคืนสภาพเดิมส่งผลให้ค่าของข้อมูลที่จัดเก็บในเซลล์เปลี่ยนแปลงไป

RowHammer รูปแบบใหม่

จนถึงตอนนี้ การใช้ ECC ถือเป็นวิธีที่น่าเชื่อถือที่สุดในการป้องกันปัญหาที่อธิบายไว้ข้างต้น

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

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

ตัวอย่างเช่นในการโจมตี RowHammer ที่แสดงข้างต้นเมื่อผู้โจมตีเข้าถึงเครื่องเสมือนระบบจะดาวน์โหลดการอัปเดตระบบที่เป็นอันตรายผ่านการเปลี่ยนแปลงในกระบวนการ apt ชื่อโฮสต์เพื่อดาวน์โหลดและแก้ไขตรรกะการตรวจสอบชื่อโฮสต์ลายเซ็นดิจิทัล

ตัวแปรใหม่นี้ทำงานอย่างไร

สิ่งที่นักวิจัยอธิบายเกี่ยวกับ การโจมตีครั้งใหม่นี้คือคำแนะนำแบบ ECC อาศัยคุณสมบัติการแก้ไขข้อผิดพลาด- หากมีการเปลี่ยนแปลงหนึ่งบิต ECC จะแก้ไขข้อผิดพลาดหากมีการเพิ่มขึ้นสองบิตข้อยกเว้นจะถูกโยนทิ้งและโปรแกรมจะถูกบังคับให้ยุติ แต่หากมีการเปลี่ยนแปลงสามบิตพร้อมกัน ECC อาจไม่สังเกตเห็นการแก้ไข

ในการกำหนดเงื่อนไขที่การตรวจสอบ ECC ใช้ไม่ได้ มีการพัฒนาวิธีการตรวจสอบที่คล้ายกับการแข่งขันซึ่งช่วยให้สามารถประเมินความเป็นไปได้ของการโจมตีสำหรับที่อยู่เฉพาะในหน่วยความจำ

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

การโจมตีจะลดลงเป็นความพยายามต่อเนื่องในการเปลี่ยนทีละบิตโดยพิจารณาความสำเร็จของการเปลี่ยนแปลงตามลักษณะของความล่าช้าที่เกิดจากการตั้งค่า ECC

ดังนั้นการค้นหาคำเครื่องจะดำเนินการด้วยบิตตัวแปรสามตัว ในขั้นตอนสุดท้ายจำเป็นต้องตรวจสอบให้แน่ใจว่าบิตที่เปลี่ยนแปลงได้ทั้งสามในสองตำแหน่งนั้นแตกต่างกันจากนั้นลองเปลี่ยนค่าในการส่งครั้งเดียว

เกี่ยวกับการสาธิต

ลอส นักวิจัยประสบความสำเร็จในการแสดงให้เห็นถึงความเป็นไปได้ของการโจมตีเซิร์ฟเวอร์ที่แตกต่างกันสี่เซิร์ฟเวอร์ด้วยหน่วยความจำ DDR3 (มีช่องโหว่ในทางทฤษฎีและหน่วยความจำ DDR4) ซึ่งสามในนั้นมาพร้อมกับโปรเซสเซอร์ Intel (E3-1270 v3, Xeon E5-2650 v1, Intel Xeon E5-2620 v1) และ AMD หนึ่งตัว (Opteron 6376)

En การสาธิตแสดงให้เห็นว่าการค้นหาชุดค่าผสมที่ต้องการในห้องทดลองบนเซิร์ฟเวอร์ที่ไม่ได้ใช้งานจะใช้เวลาประมาณ 32 นาที

การโจมตีเซิร์ฟเวอร์ที่ทำงานอยู่นั้นยากกว่ามากเนื่องจากมีสัญญาณรบกวนที่เกิดขึ้นจากกิจกรรมของแอปพลิเคชัน

ในระบบการผลิตอาจใช้เวลาถึงหนึ่งสัปดาห์ในการค้นหาชุดค่าผสมที่ต้องการของบิตที่ใช้แทนกันได้


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. รับผิดชอบข้อมูล: AB Internet Networks 2008 SL
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา