โปรเซสเซอร์คอมพิวเตอร์มีข้อบกพร่องในการออกแบบขนาดใหญ่และทุกคนต่างก็พยายามแก้ไข สามารถแก้ไขช่องโหว่ด้านความปลอดภัยได้เพียงหนึ่งในสองช่องเท่านั้นและแพตช์จะทำให้พีซี (และ Mac) ที่มีชิป Intel ทำงานช้าลง
อัปเดต : เวอร์ชันก่อนหน้าของบทความนี้ระบุว่าข้อบกพร่องนี้เกิดขึ้นเฉพาะกับชิป Intel แต่นั่นไม่ใช่เรื่องราวทั้งหมด มีในความเป็นจริง สอง ช่องโหว่สำคัญที่นี่ตอนนี้เรียกว่า“ Meltdown” และ“ Spectre” การล่มสลายเป็นเรื่องเฉพาะสำหรับโปรเซสเซอร์ Intel เป็นส่วนใหญ่และมีผลต่อ CPU ทุกรุ่นในช่วงสองสามทศวรรษที่ผ่านมา เราได้เพิ่มข้อมูลเพิ่มเติมเกี่ยวกับข้อบกพร่องทั้งสองนี้และความแตกต่างระหว่างข้อบกพร่องเหล่านี้ในบทความด้านล่าง
Meltdown และ Spectre คืออะไร?
Spectre เป็น“ ข้อบกพร่องพื้นฐานด้านการออกแบบ” ที่มีอยู่ใน CPU ทุกตัวในตลาดรวมถึงจาก AMD และ ARM และ Intel ขณะนี้ยังไม่มีการแก้ไขซอฟต์แวร์และมีแนวโน้มว่าจะต้องมีการออกแบบฮาร์ดแวร์ใหม่ทั้งหมดสำหรับซีพียูทั่วทั้งบอร์ดแม้ว่าจะเป็นการยากที่จะใช้ประโยชน์ได้ยาก เป็นไปได้ที่จะป้องกันการโจมตีของ Spectre โดยเฉพาะและนักพัฒนากำลังดำเนินการอยู่ แต่ทางออกที่ดีที่สุดคือการออกแบบฮาร์ดแวร์ CPU ใหม่สำหรับชิปในอนาคตทั้งหมด
การล่มสลายโดยทั่วไปทำให้ Spectre แย่ลงโดยการทำให้ข้อบกพร่องพื้นฐานหลักง่ายขึ้นมากในการใช้ประโยชน์ โดยพื้นฐานแล้วเป็นข้อบกพร่องเพิ่มเติมที่ส่งผลกระทบต่อโปรเซสเซอร์ Intel ทั้งหมดที่ผลิตในช่วงไม่กี่ทศวรรษที่ผ่านมา นอกจากนี้ยังส่งผลกระทบต่อโปรเซสเซอร์ ARM Cortex-A ระดับไฮเอนด์บางรุ่นด้วย แต่จะไม่มีผลกับชิป AMD Meltdown กำลังได้รับการแก้ไขในระบบปฏิบัติการในวันนี้
แต่ข้อบกพร่องเหล่านี้ทำงานอย่างไร?
ที่เกี่ยวข้อง: เคอร์เนลลินุกซ์คืออะไรและทำอะไร
โปรแกรมที่ทำงานบนคอมพิวเตอร์ของคุณทำงานโดยใช้สิทธิ์การรักษาความปลอดภัยในระดับต่างๆ เคอร์เนลระบบปฏิบัติการ ตัวอย่างเช่นเคอร์เนล Windows หรือเคอร์เนล Linux มีสิทธิ์ระดับสูงสุดเนื่องจากรันการแสดง โปรแกรมเดสก์ท็อปมีสิทธิ์น้อยกว่าและเคอร์เนลจะ จำกัด สิ่งที่ทำได้ เคอร์เนลใช้คุณลักษณะฮาร์ดแวร์ของโปรเซสเซอร์เพื่อช่วยบังคับใช้ข้อ จำกัด บางประการเหล่านี้เนื่องจากทำกับฮาร์ดแวร์ได้เร็วกว่าซอฟต์แวร์
ปัญหาคือ "การดำเนินการเก็งกำไร" ด้วยเหตุผลด้านประสิทธิภาพซีพียูรุ่นใหม่จะเรียกใช้คำสั่งที่พวกเขาคิดว่าอาจจำเป็นต้องเรียกใช้โดยอัตโนมัติและหากไม่เป็นเช่นนั้นพวกเขาก็สามารถกรอกลับและทำให้ระบบกลับสู่สถานะเดิม อย่างไรก็ตามข้อบกพร่องใน Intel และโปรเซสเซอร์ ARM บางตัวทำให้กระบวนการเรียกใช้การดำเนินการที่ปกติไม่สามารถรันได้เนื่องจากการดำเนินการจะดำเนินการก่อนที่โปรเซสเซอร์จะรบกวนการตรวจสอบว่าควรได้รับอนุญาตให้รันหรือไม่ นั่นคือจุดบกพร่องของ Meltdown
ปัญหาหลักของทั้ง Meltdown และ Spectre อยู่ในแคชของ CPU แอปพลิเคชันสามารถพยายามอ่านหน่วยความจำและหากอ่านบางสิ่งในแคชการดำเนินการจะเสร็จสิ้นเร็วขึ้น หากพยายามอ่านสิ่งที่ไม่อยู่ในแคชก็จะทำงานได้ช้าลง แอปพลิเคชันสามารถดูได้ว่าบางสิ่งเสร็จเร็วหรือช้าหรือไม่และในขณะที่ทุกอย่างอื่น ๆ ในระหว่างการดำเนินการเก็งกำไรถูกล้างและลบ แต่เวลาที่ใช้ในการดำเนินการจะไม่สามารถซ่อนได้ จากนั้นจะสามารถใช้ข้อมูลนี้เพื่อสร้างแผนที่ของอะไรก็ได้ในหน่วยความจำของคอมพิวเตอร์ทีละบิต การแคชทำให้สิ่งต่างๆเร็วขึ้น แต่การโจมตีเหล่านี้ใช้ประโยชน์จากการเพิ่มประสิทธิภาพนั้นและทำให้มันกลายเป็นข้อบกพร่องด้านความปลอดภัย
ที่เกี่ยวข้อง: Microsoft Azure คืออะไร?
ดังนั้นในกรณีที่เลวร้ายที่สุดโค้ด JavaScript ที่ทำงานในเว็บเบราว์เซอร์ของคุณจะสามารถอ่านหน่วยความจำได้อย่างมีประสิทธิภาพที่ไม่ควรเข้าถึงเช่นข้อมูลส่วนตัวที่อยู่ในแอปพลิเคชันอื่น ๆ ผู้ให้บริการระบบคลาวด์เช่น Microsoft Azure หรือ Amazon Web Services ผู้ที่โฮสต์ซอฟต์แวร์ของ บริษัท ต่างๆหลายเครื่องในเครื่องเสมือนที่แตกต่างกันบนฮาร์ดแวร์เดียวกันมีความเสี่ยงเป็นพิเศษ ตามทฤษฎีแล้วซอฟต์แวร์ของบุคคลหนึ่งสามารถสอดแนมสิ่งต่างๆในเครื่องเสมือนของ บริษัท อื่นได้ เป็นการแยกรายละเอียดในการแยกระหว่างแอปพลิเคชัน แพตช์สำหรับ Meltdown หมายความว่าการโจมตีนี้จะไม่ง่ายอย่างที่คิด น่าเสียดายที่การดำเนินการตรวจสอบเพิ่มเติมเหล่านี้ทำให้การทำงานบางอย่างช้าลงในฮาร์ดแวร์ที่ได้รับผล
นักพัฒนากำลังทำงานกับแพตช์ซอฟต์แวร์ที่ทำให้การโจมตีของ Spectre ทำได้ยากขึ้น ตัวอย่างเช่น Chrome ใหม่ของ Google คุณลักษณะการแยกไซต์ ช่วยป้องกันสิ่งนี้และ Mozilla ได้ทำไปแล้ว การเปลี่ยนแปลงอย่างรวดเร็วใน Firefox . Microsoft ยังได้ทำการเปลี่ยนแปลงบางอย่างเพื่อช่วยปกป้อง Edge และ Internet Explorer ใน Windows Update ที่พร้อมให้บริการแล้ว
หากคุณสนใจรายละเอียดระดับลึกระดับต่ำเกี่ยวกับทั้ง Meltdown และ Spectre โปรดอ่านคำอธิบายทางเทคนิคจาก Project Zero ของ Google ทีมผู้ค้นพบข้อบกพร่องเมื่อปีที่แล้ว ข้อมูลเพิ่มเติมมีอยู่ในไฟล์ MeltdownAttack.com เว็บไซต์.
พีซีของฉันจะช้าลงแค่ไหน?
อัปเดต : เมื่อวันที่ 9 มกราคม Microsoft ได้เปิดตัวบางส่วน ข้อมูลเกี่ยวกับประสิทธิภาพของโปรแกรมแก้ไข . ตามที่ Microsoft ระบุว่า Windows 10 บนพีซียุค 2016 ที่มี Skylake, Kabylake หรือโปรเซสเซอร์ Intel รุ่นใหม่กว่าแสดงให้เห็นว่า "การชะลอตัวแบบตัวเลขเดียว" ที่ผู้ใช้ส่วนใหญ่ไม่ควรสังเกต Windows 10 บนพีซียุค 2015 ที่มี Haswell หรือ CPU รุ่นเก่าอาจมีการชะลอตัวที่มากขึ้นและ Microsoft“ คาดว่าผู้ใช้บางรายจะสังเกตเห็นประสิทธิภาพของระบบลดลง”
ผู้ใช้ Windows 7 และ 8 ไม่โชคดี Microsoft กล่าวว่าพวกเขา“ คาดหวังว่าผู้ใช้ส่วนใหญ่จะสังเกตเห็นประสิทธิภาพของระบบลดลง” เมื่อใช้ Windows 7 หรือ 8 บนพีซียุค 2015 ที่มี Haswell หรือ CPU รุ่นเก่า Windows 7 และ 8 ไม่เพียง แต่ใช้ซีพียูรุ่นเก่าที่ไม่สามารถรันโปรแกรมแก้ไขได้อย่างมีประสิทธิภาพ แต่“ Windows 7 และ Windows 8 มีการเปลี่ยนเคอร์เนลของผู้ใช้มากขึ้นเนื่องจากการตัดสินใจในการออกแบบแบบเดิมเช่นการแสดงผลแบบอักษรทั้งหมดที่เกิดขึ้นในเคอร์เนล” และยังทำให้สิ่งต่างๆช้าลงอีกด้วย
Microsoft วางแผนที่จะทำการวัดประสิทธิภาพของตนเองและเปิดเผยรายละเอียดเพิ่มเติมในอนาคต แต่เรายังไม่ทราบแน่ชัดว่าแพตช์ของ Meltdown จะส่งผลต่อการใช้พีซีในแต่ละวันมากน้อยเพียงใด Dave Hansen ผู้พัฒนาเคอร์เนล Linux ที่ทำงานที่ Intel เดิมเขียนว่าการเปลี่ยนแปลงที่เกิดขึ้นในเคอร์เนล Linux จะส่งผลกระทบต่อทุกสิ่ง ตามที่เขากล่าวปริมาณงานส่วนใหญ่เห็นการชะลอตัวของตัวเลขหลักเดียวโดยคร่าวๆ การชะลอตัว 5% เป็นปกติ สถานการณ์ในกรณีที่เลวร้ายที่สุดคือการทดสอบระบบเครือข่ายช้าลง 30% ดังนั้นจึงแตกต่างกันไปในแต่ละงาน อย่างไรก็ตามตัวเลขเหล่านี้เป็นตัวเลขสำหรับ Linux ดังนั้นจึงไม่จำเป็นต้องใช้กับ Windows การแก้ไขทำให้การเรียกระบบช้าลงดังนั้นงานที่มีการเรียกระบบจำนวนมากเช่นการคอมไพล์ซอฟต์แวร์และการเรียกใช้เครื่องเสมือนมักจะช้าลงมากที่สุด แต่ซอฟต์แวร์ทุกชิ้นใช้การเรียกระบบบางอย่าง
อัปเดต : ณ วันที่ 5 มกราคม TechSpot และ Guru3D ได้ทำการวัดประสิทธิภาพสำหรับ Windows ทั้งสองไซต์สรุปได้ว่าผู้ใช้เดสก์ท็อปไม่ต้องกังวลมากนัก เกมพีซีบางเกมมีการชะลอตัวเล็กน้อย 2% ด้วยแพตช์ซึ่งอยู่ในขอบเขตของข้อผิดพลาดในขณะที่เกมอื่น ๆ ดูเหมือนจะทำงานเหมือนกัน การเรนเดอร์ 3 มิติซอฟต์แวร์เพิ่มประสิทธิภาพเครื่องมือบีบอัดไฟล์และยูทิลิตี้การเข้ารหัสไม่ได้รับผลกระทบ อย่างไรก็ตามเกณฑ์มาตรฐานการอ่านและเขียนไฟล์แสดงความแตกต่างที่เห็นได้ชัดเจน ความเร็วในการอ่านไฟล์ขนาดเล็กจำนวนมากอย่างรวดเร็วลดลงประมาณ 23% ในเกณฑ์มาตรฐานของ Techspot และ Guru3D พบสิ่งที่คล้ายกัน ในทางกลับกัน, ฮาร์ดแวร์ของทอม พบว่าประสิทธิภาพการทำงานลดลงโดยเฉลี่ยเพียง 3.21% จากการทดสอบพื้นที่เก็บข้อมูลแอปพลิเคชันของผู้บริโภคและเป็นที่ถกเถียงกันอยู่ว่า "เกณฑ์มาตรฐานสังเคราะห์" ที่แสดงความเร็วที่ลดลงอย่างมีนัยสำคัญมากกว่าไม่ได้แสดงถึงการใช้งานจริง
คอมพิวเตอร์ที่มีโปรเซสเซอร์ Intel Haswell หรือใหม่กว่ามีคุณสมบัติ PCID (Process-Context Identifiers) ที่จะช่วยให้แพตช์ทำงานได้ดี คอมพิวเตอร์ที่ใช้ CPU Intel รุ่นเก่าอาจมีความเร็วลดลงมากขึ้น การวัดประสิทธิภาพข้างต้นใช้กับ CPU Intel รุ่นใหม่ที่มี PCID ดังนั้นจึงไม่มีความชัดเจนว่า CPU ของ Intel รุ่นเก่าจะทำงานได้ดีเพียงใด
Intel กล่าวว่าการชะลอตัว“ ไม่ควรมีนัยสำคัญ” สำหรับผู้ใช้คอมพิวเตอร์โดยทั่วไปและจนถึงตอนนี้ดูเหมือนจะเป็นจริง แต่การดำเนินการบางอย่างพบว่าการชะลอตัว สำหรับระบบคลาวด์ Google , Amazon และ ไมโครซอฟต์ โดยพื้นฐานแล้วทุกคนพูดในสิ่งเดียวกัน: สำหรับปริมาณงานส่วนใหญ่พวกเขาไม่เห็นผลกระทบด้านประสิทธิภาพที่มีความหมายหลังจากเปิดตัวแพตช์ Microsoft กล่าวว่า“ ลูกค้า [Microsoft Azure] กลุ่มเล็ก ๆ อาจได้รับผลกระทบด้านประสิทธิภาพเครือข่ายบางอย่าง” ข้อความเหล่านี้ทำให้มีพื้นที่ว่างสำหรับภาระงานบางส่วนเพื่อดูการชะลอตัวที่สำคัญ เกมมหากาพย์ กล่าวโทษว่าแพตช์ Meltdown ทำให้เซิร์ฟเวอร์มีปัญหากับเกม Fortnite และโพสต์กราฟแสดงการใช้งาน CPU ที่เพิ่มขึ้นอย่างมากบนเซิร์ฟเวอร์คลาวด์หลังจากติดตั้งโปรแกรมแก้ไขแล้ว
แต่สิ่งหนึ่ง คือ clear: คอมพิวเตอร์ของคุณจะไม่เร็วขึ้นด้วยแพตช์นี้อย่างแน่นอน หากคุณมี CPU Intel ก็จะช้าลงเท่านั้นแม้ว่าจะเป็นเพียงเล็กน้อยก็ตาม
ฉันต้องทำอย่างไร?
ที่เกี่ยวข้อง: วิธีตรวจสอบว่าพีซีหรือโทรศัพท์ของคุณได้รับการป้องกันจากการล่มสลายและ Spectre หรือไม่
การอัปเดตบางอย่างเพื่อแก้ไขปัญหา Meltdown พร้อมใช้งานแล้ว Microsoft ได้ออกไฟล์ การอัปเดตฉุกเฉิน ไปยัง Windows เวอร์ชันที่รองรับผ่าน Windows Update ในวันที่ 3 มกราคม 2018 แต่ยังไม่ได้ทำกับพีซีทุกเครื่อง Windows Update ที่แก้ปัญหา Meltdown และเพิ่มการป้องกันบางอย่างกับ Spectre นั้นมีชื่อว่า CP 4056892 .
แอปเปิ้ลแล้ว แก้ไขแล้ว ปัญหาเกี่ยวกับ macOS 10.13.2 ซึ่งเปิดตัวเมื่อวันที่ 6 ธันวาคม 2017 Chromebook ที่ใช้ Chrome OS 63 ซึ่งเปิดตัวในช่วงกลางเดือนธันวาคมได้รับการปกป้องแล้ว นอกจากนี้ยังมีแพตช์สำหรับเคอร์เนล Linux
นอกจากนี้ ตรวจสอบว่าพีซีของคุณมีอัพเดต BIOS / UEFI หรือไม่ . ในขณะที่การอัปเดต Windows แก้ไขปัญหา Meltdown การอัปเดตไมโครโค้ด CPU จาก Intel ที่จัดส่งผ่านการอัปเดต UEFI หรือ BIOS เป็นสิ่งจำเป็นเพื่อให้สามารถป้องกันการโจมตีของ Spectre ได้อย่างเต็มที่ คุณควรอัปเดตเว็บเบราว์เซอร์ตามปกติเนื่องจากเบราว์เซอร์กำลังเพิ่มการป้องกันบางอย่างจาก Spectre ด้วยเช่นกัน
อัปเดต : วันที่ 22 มกราคม Intel ประกาศ ผู้ใช้ควรหยุดใช้การอัปเดตเฟิร์มแวร์ UEFI เริ่มต้นเนื่องจาก "การรีบูตสูงกว่าที่คาดไว้และพฤติกรรมของระบบอื่น ๆ ที่คาดเดาไม่ได้" Intel กล่าวว่าคุณควรรอแพตช์เฟิร์มแวร์ UEFI ขั้นสุดท้ายที่ผ่านการทดสอบอย่างเหมาะสมและจะไม่ทำให้ระบบเกิดปัญหา ณ วันที่ 20 กุมภาพันธ์ Intel ได้ การเผยแพร่ การอัปเดตไมโครโค้ดที่เสถียรสำหรับ Skylake, Kaby Lake และ Coffee Lake ซึ่งเป็นแพลตฟอร์ม Intel Core เจนเนอเรชั่นที่ 6, 7 และ 8 ผู้ผลิตพีซีควรเริ่มเปิดตัวการอัปเดตเฟิร์มแวร์ UEFI ใหม่ในเร็ว ๆ นี้
แม้ว่าประสิทธิภาพจะไม่ดีเราขอแนะนำอย่างยิ่งให้ติดตั้งโปรแกรมแก้ไขเหล่านี้ นักพัฒนาระบบปฏิบัติการจะไม่ทำการเปลี่ยนแปลงขนาดใหญ่เช่นนี้เว้นแต่ว่านี่จะเป็นข้อบกพร่องที่เลวร้ายและมีผลกระทบร้ายแรง
แพตช์ซอฟต์แวร์ที่เป็นปัญหาจะแก้ไขข้อบกพร่อง Meltdown และซอฟต์แวร์แพตช์บางตัวสามารถช่วยบรรเทาข้อบกพร่องของ Spectre ได้ แต่ Spectre มีแนวโน้มที่จะยังคงส่งผลต่อซีพียูสมัยใหม่ทั้งหมดอย่างน้อยก็ในบางรูปแบบจนกว่าฮาร์ดแวร์ใหม่จะออกมาเพื่อแก้ไข ยังไม่มีความชัดเจนว่าผู้ผลิตจะจัดการกับสิ่งนี้อย่างไร แต่ในระหว่างนี้สิ่งที่คุณทำได้คือใช้คอมพิวเตอร์ของคุณต่อไปและปลอบใจในความจริงที่ว่า Spectre ใช้ประโยชน์ได้ยากกว่าและค่อนข้างกังวลเกี่ยวกับการประมวลผลแบบคลาวด์มากกว่าผู้ใช้ปลายทางด้วย พีซีเดสก์ท็อป