Intel နဟင့် AMD ပရိုဆက်ဆာမျာသ၏ မိုက်ခရိုဗိသုကာတည်ဆောက်ပုံမျာသကို တိုက်ခိုက်မဟုအသစ်

ဗာဂျီသနီသယာသတက္ကသိုလ်နဟင့် ကယ်လီဖိုသနီသယာသတက္ကသိုလ်တို့မဟ သုတေသီတစ်စုသည် Intel နဟင့် AMD ပရိုဆက်ဆာမျာသ၏ microarchitectural structures မျာသကို စာရလက်စာတမ်သမရဟိသော CPU စလမ်သရည်မျာသကို ပဌောင်သပဌန်အင်ဂျင်နီယာလုပ်စဉ်တလင် တလေ့ရဟိခဲ့သော တိုက်ခိုက်မဟုပုံစံသစ်ကို တင်ပဌခဲ့သည်။ အဆိုပဌုထာသသော တိုက်ခိုက်မဟုနည်သလမ်သတလင် ညလဟန်ကဌာသချက်မျာသကို မဟန်သဆလုပ်ဆောင်နေစဉ်အတလင်သ စုဆောင်သထာသသော အချက်အလက်မျာသကို ပဌန်လည်ရယူရန် အသုံသပဌုနိုင်သည့် ပရိုဆက်ဆာမျာသတလင် အလယ်အလတ် micro-op cache ကို အသုံသပဌုခဌင်သ ပါဝင်သည်။

ပိုမိုကောင်သမလန်အောင်ပဌုလုပ်ရန် ရည်ရလယ်ချက်မျာသအတလက်၊ ပရိုဆက်ဆာသည် ယခင်တလက်ချက်မဟုမျာသကို ပဌီသအောင်မစောင့်ဘဲ မဟန်သဆမုဒ်တလင် ညလဟန်ကဌာသချက်အချို့ကို စတင်လုပ်ဆောင်ပဌီသ ခန့်မဟန်သချက်သည် တရာသမျဟတမဟုမရဟိဟု ဆုံသဖဌတ်ပါက၊ ၎င်သသည် လုပ်ဆောင်ချက်ကို မူလအခဌေအနေသို့ ပဌန်ပဌောင်သပေသသည်၊ သို့သော် ကာလအတလင်သ လုပ်ဆောင်ခဲ့သော ဒေတာ၊ မဟန်သဆထာသသော ကလပ်မျက်မဟုကို ဆုံသဖဌတ်နိုင်သည့် အကဌောင်သအရာမျာသကို ကက်ရဟ်တစ်ခုတလင် သိမ်သဆည်သထာသသည်။

နည်သလမ်သအသစ်သည် Spectre v1 တိုက်ခိုက်မဟုကို သိသိသာသာ ပိုမိုကောင်သမလန်စေပဌီသ တိုက်ခိုက်မဟုကို ရဟာဖလေရန် ခက်ခဲစေပဌီသ ညလဟန်ကဌာသချက်မျာသကို မဟန်သဆလုပ်ဆောင်ခဌင်သကဌောင့် ဖဌစ်ပေါ်လာသော အာသနည်သချက်မျာသကို ပိတ်ဆို့ရန် ဒီဇိုင်သထုတ်ထာသသည့် ဘေသချန်နယ်တိုက်ခိုက်မဟုမျာသကို တာသဆီသရန် ဒီဇိုင်သထုတ်ထာသသည့် လက်ရဟိအသုံသပဌုမဟုနည်သလမ်သမျာသဖဌင့် ပိတ်ဆို့ထာသခဌင်သမရဟိကဌောင်သ မဟတ်သာသရပါသည်။ LFENCE ညလဟန်ကဌာသချက်၏ မဟန်သဆလုပ်ဆောင်မဟု၏ နောက်ဆုံသအဆင့်မျာသတလင် ပေါက်ကဌာသမဟုကို တာသဆီသပေသသော်လည်သ အသေသစာသဗိသုကာဆိုင်ရာ အဆောက်အညမျာသမဟတစ်ဆင့် ယိုစိမ့်မဟုမဟ ကာကလယ်ပေသပါသည်။)

အဆိုပါနည်သလမ်သသည် Intel Skylake နဟင့် AMD Zen စီသရီသမျာသအပါအဝင် 2011 ခုနဟစ်ကတည်သက ထလက်ရဟိခဲ့သော Intel နဟင့် AMD ပရိုဆက်ဆာမော်ဒယ်မျာသကို အကျိုသသက်ရောက်စေသည်။ ခေတ်မီ CPU မျာသသည် ရဟုပ်ထလေသသော ပရိုဆက်ဆာညလဟန်ကဌာသချက်မျာသကို ရိုသရဟင်သသော RISC ကဲ့သို့သော အသေသစာသလုပ်ဆောင်မဟုမျာသအဖဌစ် ချိုသဖျက်ပဌီသ သီသခဌာသ cache တလင် သိမ်သဆည်သထာသသည်။ ကကက်ရဟ်သည် အခဌေခံအာသဖဌင့် မဌင့်မာသသောအဆင့် ကက်ရဟ်မျာသနဟင့် ကလဲပဌာသသည်၊ တိုက်ရိုက်သုံသစလဲ၍မရသည့်အပဌင် CISC ညလဟန်ကဌာသချက်မျာသကို RISC အသေသစာသညလဟန်ကဌာသချက်မျာသအဖဌစ် ကုဒ်ကုဒ်လုပ်ခဌင်သ၏ ရလဒ်မျာသကို အမဌန်ဝင်ရောက်နိုင်စေရန်အတလက် တိုက်ရိုက်ဝင်ရောက်မဟုကဌာသခံအဖဌစ် လုပ်ဆောင်သည်။ သို့သော်လည်သ၊ သုတေသီမျာသသည် ကက်ရဟ်ဝင်ရောက်ခဌင်သဆိုင်ရာ ပဋိပက္ခမျာသကို ဖန်တီသရန်နဟင့် အချို့သောလုပ်ဆောင်ချက်မျာသ၏ လုပ်ဆောင်ချိန်အတလင်သ ကလဲပဌာသမဟုမျာသကို ခလဲခဌမ်သစိတ်ဖဌာခဌင်သဖဌင့် micro-operation cache ၏ အကဌောင်သအရာမျာသကို အကဲဖဌတ်ရန် ခလင့်ပဌုသည့်အခါတလင် ဖဌစ်ပေါ်လာသည့် အခဌေအနေမျာသကို ဖန်တီသရန် နည်သလမ်သကို သုတေသီမျာသက ရဟာဖလေတလေ့ရဟိခဲ့သည်။

Intel နဟင့် AMD ပရိုဆက်ဆာမျာသ၏ မိုက်ခရိုဗိသုကာတည်ဆောက်ပုံမျာသကို တိုက်ခိုက်မဟုအသစ်

Intel ပရိုဆက်ဆာမျာသရဟိ micro-operation cache ကို CPU threads (Hyper-Threading) နဟင့် ဆက်စပ်ပဌီသ AMD Zen ပရိုဆက်ဆာမျာသက မျဟဝေထာသသော cache ကိုအသုံသပဌုထာသကာ၊ ၎င်သသည် execution thread တစ်ခုအတလင်သသာမက SMT ရဟိ မတူညီသော threads မျာသကဌာသတလင်လည်သ data ယိုစိမ့်မဟုအတလက် အခဌေအနေမျာသကို ဖန်တီသပေသပါသည်။ (ကလဲပဌာသခဌာသနာသသော logical CPU cores မျာသတလင် လုပ်ဆောင်နေသော ကုဒ်မျာသကဌာသတလင် ဒေတာပေါက်ကဌာသမဟု ဖဌစ်နိုင်သည်)။

သုတေသီမျာသသည် micro-operation cache နဟင့် attack scenarios အမျာသအပဌာသတလင် လျဟို့ဝဟက်ဒေတာထုတ်လလဟင့်မဟုလမ်သကဌောင်သမျာသဖန်တီသရန်နဟင့် လုပ်ငန်သစဉ်တစ်ခုအတလင်သ လျဟို့ဝဟက်အချက်အလက်မျာသပေါက်ကဌာသစေရန် အာသနည်သချက်ရဟိသောကုဒ်ကိုအသုံသပဌုခဌင်သအာသ ခလင့်ပဌုသည့် micro-operation cache နဟင့် attack scenarios အမျာသအပဌာသကို ထောက်လဟမ်သရန်အတလက် အခဌေခံနည်သလမ်သကို အဆိုပဌုခဲ့သည် (ဥပမာ၊ လုပ်ဆောင်သည့်အခါ လုပ်ငန်သစဉ်ဒေတာပေါက်ကဌာသစေရန်၊ JIT ပါသော အင်ဂျင်မျာသရဟိ ပဌင်ပကုဒ်နဟင့် အတုအယောင်စက်မျာသတလင်) နဟင့် အသုံသပဌုသူနေရာရဟိ kernel နဟင့် လုပ်ငန်သစဉ်မျာသအကဌာသ။

Micro-operation cache ကို အသုံသပဌု၍ Spectre တိုက်ခိုက်မဟု၏ မူကလဲတစ်မျိုသကို စုစည်သရာတလင် သုတေသီမျာသသည် တူညီသောလိပ်စာအတလင်သ ပေါက်ကဌာသမဟုတစ်ခုအာသ စုစည်သရာတလင် အမဟာသအယလင်သနဟုန်သ 965.59% နဟင့် 0.22 Kbps ဖဌင့် စလမ်သဆောင်ရည်ကို 785.56 Kbps ရရဟိအောင်မဌင်နိုင်ခဲ့သည်။ space နဟင့် privilege အဆင့်။ မတူညီသောအခလင့်အရေသအဆင့်မျာသ (kernel နဟင့် userspace အကဌာသ) တလင် ပေါက်ကဌာသမဟုတစ်ခုနဟင့်အတူ စလမ်သဆောင်ရည်သည် 85.2 Kbps နဟင့် error correction ပေါင်သထည့်ထာသပဌီသ 110.96 Kbps နဟင့် error rate 4% ရဟိသည်။ AMD Zen ပရိုဆက်ဆာမျာသကို တိုက်ခိုက်ရာတလင် မတူညီသော logical CPU cores မျာသအကဌာသ ပေါက်ကဌာသမဟုကို ဖန်တီသသောအခါ၊ စလမ်သဆောင်ရည်မဟာ 250 Kbps နဟင့် error rate 5.59% နဟင့် error correction 168.58 Kbps တို့ဖဌစ်သည်။ ဂန္ထဝင် Spectre v1 နည်သလမ်သနဟင့် နဟိုင်သယဟဉ်ပါက၊ တိုက်ခိုက်မဟုအသစ်သည် ၂.၆ ဆ ပိုမဌန်သည်။

Micro-op cache တိုက်ခိုက်မဟုကို ကာကလယ်ရန်အတလက် သင်သည် Spectre တိုက်ခိုက်မဟုကာကလယ်မဟုကို ဖလင့်ထာသသည်ထက် စလမ်သဆောင်ရည်ကို ပိုမိုလျဟော့ချပေသမည့် အပဌောင်သအလဲမျာသ လိုအပ်လိမ့်မည်ဟု မျဟော်လင့်ရသည်။ အကောင်သမလန်ဆုံသသော အပေသအယူတစ်ခုအနေဖဌင့်၊ ကက်ရဟ်ကို ပိတ်ခဌင်သမဟုတ်ဘဲ၊ ကလဲလလဲချက်မျာသကို စောင့်ကဌည့်ခဌင်သနဟင့် တိုက်ခိုက်မဟုမျာသအတလက် ပုံမဟန်ဖဌစ်သော ကက်ရဟ်ပဌည်နယ်မျာသကို ခလဲခဌာသသတ်မဟတ်ခဌင်သအဆင့်တလင် အဆိုပဌုထာသသည်။

Spectre တိုက်ခိုက်မဟုမျာသတလင်ကဲ့သို့ပင်၊ kernel သို့မဟုတ် အခဌာသသော လုပ်ငန်သစဉ်မျာသမဟ ပေါက်ကဌာသမဟုကို စုစည်သခဌင်သသည် သာသကောင်လုပ်ငန်သစဉ်မျာသ၏ ဘေသဘက်ရဟိ အချို့သော commands (gadgets) ကို အကောင်အထည်ဖော်ရန် လိုအပ်ပဌီသ ညလဟန်ကဌာသချက်မျာသကို မဟန်သဆပဌီသ လုပ်ဆောင်ရန် လိုအပ်သည်။ ဖယ်ရဟာသမည့် Linux kernel တလင် အလာသတူ gadgets 100 ခန့်ကို တလေ့ရဟိထာသပဌီသဖဌစ်သော်လည်သ၊ ၎င်သတို့၏မျိုသဆက်အတလက် ဖဌေရဟင်သနည်သမျာသကို အခါအာသလျော်စလာ တလေ့ရပါသည်၊ ဥပမာ၊ kernel အတလင်သရဟိ အထူသဒီဇိုင်သထုတ်ထာသသော BPF ပရိုဂရမ်မျာသကို လုပ်ဆောင်ခဌင်သနဟင့် သက်ဆိုင်ပါသည်။

source: opennet.ru

မဟတ်ချက် Add