သင့်ကုဒ်ကိုအဝေးမှလုပ်ဆောင်နိုင်စေမည့် Linux kernel ၏ ksmbd module တွင် အားနည်းချက်၊

သင့်ကုဒ်ကို kernel အခွင့်အရေးများဖြင့် အဝေးထိန်းစနစ်ဖြင့် လုပ်ဆောင်နိုင်စေမည့် SMB ပရိုတိုကောကို အခြေခံ၍ Linux kernel တွင် တည်ဆောက်ထားသော SMB ပရိုတိုကောကို အခြေခံ၍ အကောင်အထည်ဖော်မှု ပါဝင်သော ksmbd module တွင် အရေးကြီးသော အားနည်းချက်ကို ဖော်ထုတ်ထားပါသည်။ တိုက်ခိုက်မှုကို စစ်မှန်ကြောင်းအထောက်အထားမပြဘဲ လုပ်ဆောင်နိုင်သည်၊ ksmbd module ကို system ပေါ်တွင်အသက်သွင်းရန်လုံလောက်ပါသည်။ 5.15 ခုနှစ် နိုဝင်ဘာလတွင် ထွက်ရှိခဲ့သော kernel 2021 မှစတင်၍ ပြဿနာပေါ်လာပြီး 5.15.61 ခုနှစ် သြဂုတ်လတွင် ထွက်ရှိသည့် အပ်ဒိတ် 5.18.18၊ 5.19.2 နှင့် 2022 တို့တွင် တိတ်တဆိတ် ဖြေရှင်းခဲ့ပါသည်။ CVE identifier ကို ပြဿနာအတွက် သတ်မှတ်ထားခြင်း မရှိသေးသောကြောင့်၊ ဖြန့်ဝေမှုများတွင် ပြဿနာကို ဖြေရှင်းနည်းနှင့် ပတ်သက်၍ အတိအကျ အချက်အလက် မရှိပါ။

အားနည်းချက်ကို အသုံးချခြင်းနှင့်ပတ်သက်၍ အသေးစိတ်အချက်အလက်များကို ထုတ်ဖော်ပြောဆိုခြင်းမရှိသေးပါ၊ လုပ်ဆောင်ချက်များမလုပ်ဆောင်မီ အရာဝတ္တုတစ်ခု၏တည်ရှိမှုကို စစ်ဆေးခြင်းမရှိခြင်းကြောင့် လွတ်မြောက်ပြီးသားမမ်မိုရီဧရိယာ (Use-After-Free) သို့ ဝင်ရောက်ခြင်းကြောင့် အားနည်းချက်ဖြစ်ရခြင်းဖြစ်သည်ဟုသာ သိရှိရပါသည်။ အဲဒီအပေါ်မှာ ပြဿနာမှာ ksmbd_tree_disconnect() လုပ်ဆောင်ချက်သည် ksmbd_tree_connect ဖွဲ့စည်းပုံအတွက် ခွဲဝေချထားပေးသည့် မမ်မိုရီကို လွှတ်ပေးလိုက်သောကြောင့်၊ သို့သော် ၎င်းနောက်တွင် SMB2_TREE_DISCONNECT ညွှန်ကြားချက်များ ပါဝင်သော ပြင်ပတောင်းဆိုမှုများကို လုပ်ဆောင်ရာတွင် အသုံးပြုသည့် ညွှန်ပြချက်တစ်ခု ရှိနေသေးသည်။

ဖော်ပြထားသည့် အားနည်းချက်အပြင်၊ အန္တရာယ်နည်းသော ပြဿနာ ၄ ခုကိုလည်း ksmbd တွင် ပြင်ဆင်ထားပါသည်။

  • ZDI-22-1688 - ဖိုင် attribute လုပ်ဆောင်ခြင်းကုဒ်သည် သီးခြား သီးသန့်ကြားခံတစ်ခုသို့ မကူးယူမီ ပြင်ပဒေတာ၏ အမှန်တကယ်အရွယ်အစားကို မစစ်ဆေးခြင်းကြောင့် kernel အခွင့် အရေးများဖြင့် အဝေးကုဒ်ကို အကောင်အထည်ဖော်ခြင်း ဖြစ်သည်။ တိုက်ခိုက်မှုကို စစ်မှန်ကြောင်းသက်သေပြထားသော အသုံးပြုသူတစ်ဦးသာ လုပ်ဆောင်နိုင်ခြင်းကြောင့် အားနည်းချက်ကို လျော့ပါးစေပါသည်။
  • ZDI-22-1691 - SMB2_WRITE command handler တွင် ထည့်သွင်းမှု ကန့်သတ်ချက်များ မမှန်မကန် စစ်ဆေးခြင်းကြောင့် kernel memory မှ အဝေးမှ အချက်အလက်များ ပေါက်ကြားခြင်း (တိုက်ခိုက်မှုကို စစ်မှန်သော အသုံးပြုသူမှသာ လုပ်ဆောင်နိုင်သည်)။
  • ZDI-22-1687 - SMB2_NEGOTIATE command handler တွင် အရင်းအမြစ်များ မှားယွင်းစွာ ထုတ်လွှတ်မှုကြောင့် စနစ်အတွင်း ရရှိနိုင်သော မှတ်ဉာဏ်များ ကုန်ဆုံးခြင်းကြောင့် ဖြစ်သော ဝန်ဆောင်မှုကို အဝေးထိန်း ငြင်းပယ်ခြင်း (တိုက်ခိုက်မှုကို စစ်မှန်ကြောင်း အတည်ပြုခြင်းမရှိဘဲ လုပ်ဆောင်နိုင်သည်)။
  • ZDI-22-1689 - SMB2_TREE_CONNECT ကွန်မန်း၏ ပါရာမီတာများကို မှန်ကန်စွာ အတည်ပြုနိုင်ခြင်း မရှိခြင်းကြောင့် အဝေးထိန်း kernel ပျက်ယွင်းပြီး ကြားခံပြင်ပ ဧရိယာမှ ဖတ်ရှုခြင်းကို ဖြစ်ပေါ်စေသည် (စစ်မှန်သော အသုံးပြုသူမှသာ လုပ်ဆောင်နိုင်သည်)။

ksmbd မော်ဂျူးကို အသုံးပြု၍ SMB ဆာဗာကို လည်ပတ်ရန်အတွက် ပံ့ပိုးမှုမှာ 4.16.0 ထွက်ရှိကတည်းက Samba ပက်ကေ့ခ်ျတွင် ရှိနေပါသည်။ အသုံးပြုသူနေရာလွတ် SMB ဆာဗာနှင့်မတူဘဲ၊ ksmbd သည် စွမ်းဆောင်ရည်၊ မှတ်ဉာဏ်သုံးစွဲမှုနှင့် အဆင့်မြင့် kernel အင်္ဂါရပ်များနှင့် ပေါင်းစပ်မှုတွင် ပိုမိုထိရောက်သည်။ Ksmbd ကို လိုအပ်သလို လိုအပ်သလို Samba ကိရိယာများနှင့် ဒစ်ဂျစ်တိုက်များနှင့်အတူ ပေါင်းစပ်ထားသည့် စွမ်းဆောင်ရည်မြင့်၊ မြှုပ်သွင်းထားသည့် Samba တိုးချဲ့မှုအဖြစ် ဂုဏ်ယူပါသည်။ ksmbd ကုဒ်ကို Samsung မှ Namjae Jeon နှင့် LG မှ Hyunchul Lee တို့က ရေးသားထားပြီး kernel ကို Linux kernel ရှိ CIFS/SMB2/SMB3 subsystems ၏ ထိန်းသိမ်းသူနှင့် Samba ဖွံ့ဖြိုးတိုးတက်ရေးအဖွဲ့၏ နှစ်ရှည်အဖွဲ့ဝင်တစ်ဦးဖြစ်သည့် Microsoft မှ Steve French မှ ထိန်းသိမ်းထားသည်။ Samba နှင့် Linux ရှိ SMB/CIFS ပရိုတိုကောများ အကောင်အထည်ဖော်ရာတွင် သိသိသာသာ ပံ့ပိုးကူညီပံ့ပိုးပေးခဲ့သူဖြစ်သည်။

source: opennet.ru

မှတ်ချက် Add