CDIC 2023

นักวิจัยพบช่องโหว่ Speculative Execution ใหม่ ‘Retbleed’ กระทบชิปจาก Intel และ AMD

นักวิจัยจากมหาวิทยาลัยของสวิสเซอร์แลนด์ได้เปิดแผลใหม่ให้ฟีเจอร์ Speculative Execution ซึ่งเคยได้ถูกแพตช์ไปแล้วช่วงปี 2018

credit : comsec

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

Intel ได้เพิ่มการป้องกันระดับฮาร์ดแวร์ที่เรียกว่า indirect branch restricted speculation (IBRS) และเวอร์ชันพัฒนากว่าที่ชื่อว่า enhanced indirect branch restricted speculation (eIBRS) ในขณะที่ฝั่ง AMD คือ CSV2 ทั้งนี้ก็มีการป้องกันระดับซอฟต์แวร์จาก Google ออกมาช่วยด้วยเหมือนกันที่ชื่อ Retpoline ที่ก็คือต้นตอของช่องโหว่ใหม่ล่าสุดที่ชื่อ ‘Retbleed’

นักวิจัยจากซูริกส์ชี้ว่าการแก้ปัญหาของ Google คือเมื่อมีความพยายามทำ Branch Target Speculation ด้วย indirect jump หรือ calls จะมีการแทนที่ด้วย Return ซึ่งมันอาจได้ผลในปี 2018 เพราะเมื่อก่อนในสถานการณ์ปกติการใช้ Return ดูเหมือนเป็นเรื่องที่เป็นไปได้ยากที่จะใช้ในการโจมตีแต่ล่าสุดนักวิจัยเหล่านี้พบเงื่อนไขในการโจมตีแล้ว

ในฝั่ง Intel คำสั่ง Returns จะประพฤติตัวคล้ายกับ Indirect jumps ในส่วนของ Stack Buffer ที่คืนค่า Target Prediction โดยเกิดขึ้นในการประมวลผล Stack ลึกๆ ซึ่งเราพบว่ามีเงื่อนไขนับพันจากการใช้ System Call ที่จะทำให้เกิดผลนั้นได้” เช่นกันในฝั่ง AMD นักวิจัยพบว่า Returns จะประพฤติตัวคล้ายกับ Indirect jumps โดยไม่สนสถานะของ Address Stack ที่ Return กล่าวคือพวกเขาสามารถ Poison คำสั่ง Return เป็น Indirect jump ได้เพราะ Branch Predictor ของ AMD คิดว่าตัวเองจะเจอกับ Indirect jump ทำให้นำไปสู่การทำนาย Indirect Branch Target และเช่นกันมี System Call มากมายที่นักวิจัยสามารถใช้สร้างการโจมตีได้

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

ในฝั่ง Intel ช่องโหว่ Retbleed หมายเลข CVE-2022-29901 กระทบกับซีพียู Gen 6,7,8 แต่ก็ขึ้นกับการป้องกันระดับระบบปฏิบัติการด้วยอย่าง Windows จะมีการเปิด IBRS ที่ Intel แนะนำโดยพื้นฐานอยู่แล้วจึงรอดตัว แต่ในฝั่งลีนุกซ์ตอนนี้กำลังทำงานกับผู้เกี่ยวข้องอยู่

Retbleed บน AMD หมายเลข CVE-2022-29900 กระทบกับ Zen 1, 1+ และ Zen 2 มีการออกคำแนะนำไว้ที่ https://www.amd.com/system/files/documents/technical-guidance-for-mitigating-branch-type-confusion_v7_20220712.pdf ท่านใดสนใจวีดีโอสาธิตติดตามได้จากวีดีโอด้านล่างเลยครับ หรือตามเข้าไปที่ GitHub ของผู้เชี่ยวชาญเพื่อดูโค้ดสาธิต

ที่มา : https://www.bleepingcomputer.com/news/security/new-retbleed-speculative-execution-cpu-attack-bypasses-retpoline-fixes/ และ https://www.csoonline.com/article/3667271/new-speculative-execution-attack-retbleed-impacts-intel-and-amd-cpus.htm


About nattakon

จบการศึกษา ปริญญาตรีและโท สาขาวิศวกรรมคอมพิวเตอร์ KMITL เคยทำงานด้าน Engineer/Presale ดูแลผลิตภัณฑ์ด้าน Network Security และ Public Cloud ในประเทศ ปัจจุบันเป็นนักเขียน Full-time ที่ TechTalkThai

Check Also

[โปรพิเศษรอบ Early Bird] คอร์สเรียน ‘Incident Response’ จาก Sosecure เรียนออนไลน์ เน้นลงมือจริง 3 วันเต็ม

Incident Response เป็นหนึ่งในหัวข้อหลักของแผนการที่ทุกองค์กรควรมือ คำถามคือทุกวันนี้องค์กรหรือบริษัทที่ท่านมีส่วนรวมมีแผนรับมือเหล่านี้ได้ดีเพียงใด ครอบคลุมความเสี่ยงและเคยผ่านสถานการณ์จริงมาได้ดีแค่ไหน ซึ่งหากปฏิบัติตามแผนได้ดีก็อาจจะช่วยลดผลกระทบของความเสียหายได้อย่างมีนัยสำคัญ ด้วยเหตุนี้เองจึงอยากขอเชิญชวนผู้สนใจทุกท่านมาเพิ่มพูนความรู้ในคอร์สสุดพิเศษจาก Sosecure โดยเนื้อหาจะกล่าวถึง Framework, Incident Response และ Incident Handling …

[โปรพิเศษรอบ Early Bird] คอร์สเรียน ‘Threat Hunting’ จาก Sosecure เรียนออนไลน์ เน้นลงมือจริง 3 วันเต็ม

การต่อกรกับภัยคุกคามทางไซเบอร์ไม่จำเป็นที่จะต้องเป็นฝ่ายตั้งรับเท่านั้น และหากทำได้ดีเราก็สามารถลงมือตอบสนองก่อนเกิดเหตุได้เช่นกัน ยิ่งทำได้เร็วเท่าไหร่ยิ่งดี ซึ่งทีม Threat Hunting มีบทบาทอย่างมากในการทำงานร่วมกับระบบ SoC ซึ่งสามารถใช้ข้อมูลภัยคุกคามจากทั่วทุกมุมโลกมาช่วยตรวจจับการโจมตีที่เกิดขึ้นได้  คำถามคือแล้วในงานเหล่านี้ควรมีทักษะเกี่ยวข้องในด้านไหนบ้าง Sosecure ขอชวนผู้สนใจในสายงานด้าน Cybersecurity ที่ต้องการรู้ลึก ทำได้จริง …