อินเทล
จากปัญหาที่ระบุโดยนักวิจัยจากมหาวิทยาลัยเทคนิคแห่งกราซ (ออสเตรีย)
-
ZombieLoad (รูปแบบไฟล์ PDF ) - ช่วยให้คุณสามารถดึงข้อมูลที่เป็นความลับจากกระบวนการอื่น ระบบปฏิบัติการ เครื่องเสมือน และเครือข่ายที่มีการป้องกัน (TEE, Trusted Execution Environment) ตัวอย่างเช่น ความสามารถในการกำหนดประวัติการเปิดเพจในเบราว์เซอร์ของ Tor ที่ทำงานอยู่ในเครื่องเสมือนอื่นนั้นแสดงให้เห็น เช่นเดียวกับการกำหนดคีย์การเข้าถึงและรหัสผ่านที่ใช้ในแอปพลิเคชัน
-
ริดเดิ้ล (รูปแบบไฟล์ PDF ) - ช่วยให้ข้อมูลรั่วไหลระหว่างพื้นที่แยกต่างๆ ในโปรเซสเซอร์ Intel เช่น บัฟเฟอร์การเติม บัฟเฟอร์การจัดเก็บข้อมูล และพอร์ตโหลด ตัวอย่างของการโจมตีจะแสดงเพื่อจัดระเบียบการรั่วไหลจากกระบวนการอื่น ระบบปฏิบัติการ เครื่องเสมือน และเครือข่ายที่ได้รับการป้องกัน ตัวอย่างเช่น แสดงวิธีค้นหาเนื้อหาของแฮชรหัสผ่านรูทจาก /etc/shadow ในระหว่างความพยายามตรวจสอบสิทธิ์เป็นระยะ (การโจมตีใช้เวลา 24 ชั่วโมง)นอกจากนี้ ตัวอย่างของการโจมตีโดยใช้ JavaScript และ WebAssembly จะแสดงขึ้นเมื่อเปิดเพจที่เป็นอันตรายในเอ็นจิ้น SpiderMonkey (ในเบราว์เซอร์รุ่นใหม่ที่ทันสมัย การโจมตีดังกล่าวไม่น่าเป็นไปได้เนื่องจากความแม่นยำของตัวจับเวลาที่จำกัดและมาตรการในการป้องกัน Spectre)
-
ออกมาเสีย (รูปแบบไฟล์ PDF ) - ทำให้สามารถอ่านข้อมูลที่ระบบปฏิบัติการเขียนเมื่อเร็ว ๆ นี้และกำหนดรูปแบบหน่วยความจำระบบปฏิบัติการเพื่อลดความซับซ้อนของการโจมตีอื่น ๆ -
การส่งต่อจากร้านค้าสู่การรั่วไหล — ใช้ประโยชน์จากการเพิ่มประสิทธิภาพ CPU สำหรับการทำงานกับบัฟเฟอร์การจัดเก็บข้อมูล และสามารถใช้เพื่อข้ามกลไกการสุ่มพื้นที่ที่อยู่เคอร์เนล (KASLR) เพื่อตรวจสอบสถานะของระบบปฏิบัติการ หรือสำหรับองค์กร การรั่วไหลร่วมกับอุปกรณ์ตามวิธี Spectre
ระบุ
- CVE-2018-12126 - MSBDS (Microarchitectural Store Buffer Data Sampling) การกู้คืนเนื้อหาของบัฟเฟอร์การจัดเก็บข้อมูล ใช้ในการโจมตี Fallout ระดับความเป็นอันตรายกำหนดไว้ที่ 6.5 คะแนน (CVSS)
- CVE-2018-12127 - MLPDS (การสุ่มตัวอย่างข้อมูลพอร์ตโหลดสถาปัตยกรรมไมโคร) การกู้คืนเนื้อหาพอร์ตโหลด ใช้ในการโจมตี RIDL ซีวีเอสเอส 6.5;
- CVE-2018-12130 - MFBDS (การสุ่มตัวอย่างข้อมูลบัฟเฟอร์การเติมสถาปัตยกรรมไมโคร) การกู้คืนเนื้อหาบัฟเฟอร์การเติม ใช้ในการโจมตี ZombieLoad และ RIDL ซีวีเอสเอส 6.5;
- CVE-2019-11091 – MDSUM (Microarchitectural Data Sampling Uncacheable Memory) การกู้คืนเนื้อหาหน่วยความจำที่ไม่สามารถแคชได้ ใช้ในการโจมตี RIDL ซีวีเอสเอส 3.8.
การโจมตีช่องทางด้านข้างบนโครงสร้างไมโครสถาปัตยกรรมนั้นทำได้ยากกว่ามากเมื่อเทียบกับวิธีการกู้คืนเนื้อหาแคช และต้องมีการติดตามและวิเคราะห์ข้อมูลจำนวนมากเพื่อระบุการเชื่อมต่อกับที่อยู่บางแห่งในหน่วยความจำ (โดยพื้นฐานแล้ว ผู้โจมตีไม่สามารถดักจับข้อมูลบางอย่างโดยเจตนาได้ แต่อาจถึงเวลาสะสมการรั่วไหลและใช้วิธีการทางสถิติเพื่อสร้างข้อมูลบางประเภทขึ้นมาใหม่) นอกจากนี้ การโจมตีจะส่งผลต่อข้อมูลบนแกน CPU ทางกายภาพเดียวกันกับโค้ดของผู้โจมตีเท่านั้น
วิธีการที่เสนอในการกำหนดเนื้อหาของโครงสร้างไมโครสถาปัตยกรรมนั้นขึ้นอยู่กับข้อเท็จจริงที่ว่าโครงสร้างเหล่านี้ถูกใช้ในระหว่างการจัดการข้อยกเว้น (ข้อบกพร่อง) หรือการดำเนินการโหลดและจัดเก็บแบบเก็งกำไร
ในระหว่างการดำเนินการเก็งกำไร เนื้อหาของโครงสร้างภายในจะถูกเปลี่ยนเส้นทางไปยังรีจิสเตอร์หรือแคชเพื่อการประมวลผล การดำเนินการเก็งกำไรจะไม่สมบูรณ์และผลลัพธ์จะถูกละทิ้ง แต่เนื้อหาที่เปลี่ยนเส้นทางสามารถกำหนดได้โดยใช้เทคนิคการวิเคราะห์แคชช่องทางด้านข้าง
โปรเซสเซอร์ใช้พอร์ตโหลดเพื่อรับข้อมูลจากหน่วยความจำหรือระบบย่อย I/O และให้ข้อมูลที่ได้รับไปยังการลงทะเบียน CPU เนื่องจากคุณลักษณะการใช้งาน ข้อมูลจากการดำเนินการดาวน์โหลดเก่าจะยังคงอยู่ในพอร์ตจนกว่าข้อมูลเหล่านั้นจะถูกเขียนทับด้วยข้อมูลใหม่ ซึ่งทำให้สามารถระบุสถานะของข้อมูลในพอร์ตดาวน์โหลดโดยอ้อมโดยการจัดการข้อยกเว้น (ข้อบกพร่อง) และ SSE/AVX/ คำสั่ง AVX-512 ที่โหลดข้อมูลมากกว่า 64 บิต ภายใต้เงื่อนไขดังกล่าว การดำเนินการโหลดจะเปิดเผยค่าข้อมูลเก่าจากโครงสร้างภายในไปยังการดำเนินการที่ต้องพึ่งพาโดยคาดเดา ในทำนองเดียวกัน การรั่วไหลจะถูกจัดระเบียบผ่านบัฟเฟอร์การจัดเก็บข้อมูลซึ่งใช้เพื่อเพิ่มความเร็วในการเขียนไปยังแคช CPU และรวมถึงตารางที่อยู่ ค่า และแฟล็ก ตลอดจนผ่านบัฟเฟอร์การเติมซึ่งมีข้อมูลที่ ยังไม่อยู่ในแคช L1 (แคชพลาด) ในขณะที่กำลังโหลดจากแคชระดับอื่น
ปัญหา
เคอร์เนล Linux ป้องกัน MDS
4.19.43, 4.14.119 และ 4.9.176 วิธีการป้องกัน
การอัปเดตแพ็คเกจได้เปิดตัวแล้วสำหรับ
การแก้ไขเพื่อป้องกันการรั่วไหลของข้อมูลจากเครื่องเสมือนด้วย
ที่มา: opennet.ru