Linux kernel ၏ AF_PACKET socket အကောင်အထည်ဖော်မှုတွင် အားနည်းချက်

အားနည်းချက်လှိုင်းလုံးကြီးပြီး သုံးနှစ်အကြာ (1, 2, 3, 4, 5) Linux kernel ၏ AF_PACKET စနစ်ခွဲတွင် ဖော်ထုတ်ခဲ့သည်။ နောက်ထပ်ပြဿနာတစ်ခု (CVE-2020-14386) ၊ ဒေသဆိုင်ရာအခွင့်ထူးမခံရသေးသောအသုံးပြုသူတစ်ဦးအား ၎င်းတို့တွင် root ဝင်ရောက်ခွင့်ရှိလျှင် သီးခြားကွန်တိန်နာများကို root သို့မဟုတ် သီးခြားကွန်တိန်နာများအဖြစ် ကုဒ်ကိုလုပ်ဆောင်ရန် ခွင့်ပြုခြင်း။

AF_PACKET socket တစ်ခုကို ဖန်တီးခြင်းနှင့် အားနည်းချက်ကို အသုံးချခြင်း CAP_NET_RAW အထူးအခွင့်အရေးများ လိုအပ်ပါသည်။ သို့သော်၊ အသုံးပြုသူအမည်နေရာလွတ်များကို ပံ့ပိုးမှုဖြင့် စနစ်များပေါ်တွင် ဖန်တီးထားသော ကွန်တိန်နာများတွင် အခွင့်ထူးမခံသောအသုံးပြုသူတစ်ဦးမှ သတ်မှတ်ထားသောခွင့်ပြုချက်ကို ရယူနိုင်သည်။ ဥပမာအားဖြင့်၊ အသုံးပြုသူ namespaces ကို Ubuntu နှင့် Fedora တွင် မူရင်းအတိုင်း ဖွင့်ထားသော်လည်း Debian နှင့် RHEL တွင် ဖွင့်မထားပါ။ Android တွင်၊ မီဒီယာဆာဗာ လုပ်ငန်းစဉ်သည် အားနည်းချက်ကို အသုံးချနိုင်သည့် AF_PACKET sockets များကို ဖန်တီးပိုင်ခွင့်ရှိသည်။

အားနည်းချက်သည် tpacket_rcv လုပ်ဆောင်ချက်တွင် ရှိနေပြီး netoff variable ကို တွက်ချက်ရာတွင် အမှားတစ်ခုကြောင့် ဖြစ်ပေါ်လာခြင်းဖြစ်သည်။ တိုက်ခိုက်သူသည် "macoff = netoff - maclen" ကို တွက်ချက်သည့်အခါ အကျုံးဝင်စေမည့် netoff variable ကို maclen variable ထက်နည်းသော တန်ဖိုးတစ်ခုသို့ ရေးမှတ်ထားသည့် အခြေအနေများကို ဖန်တီးနိုင်ပြီး နောက်ပိုင်းတွင် အဝင်ဒေတာအတွက် ညွှန်ပြသည့်ကြားခံအား မှားယွင်းသတ်မှတ်ပေးသည်။ ရလဒ်အနေဖြင့်၊ တိုက်ခိုက်သူသည် ခွဲဝေချထားပေးသော ကြားခံ၏ နယ်နိမိတ်ကိုကျော်လွန်သည့် ဧရိယာသို့ 1 မှ 10 bytes မှ စတင်ရေးသားနိုင်သည်။ စနစ်တွင် root လုပ်ပိုင်ခွင့်များရယူခွင့်ပြုသည့် exploit တစ်ခုသည် ဖွံ့ဖြိုးတိုးတက်မှုတွင် ရှိနေကြောင်း မှတ်သားရပါသည်။

အဆိုပါပြဿနာသည် 2008 ဇူလိုင်လကတည်းက kernel တွင်ရှိနေခဲ့သည်၊ ဆိုလိုသည်မှာ။ တကယ့် nuclei အားလုံးတွင် သူ့ကိုယ်သူ ထင်ရှားသည်။ အဆိုပါ fix သည်လက်ရှိအဖြစ်ရရှိနိုင်သည်။ ဖာထေးခြင်း။. ဖြန့်ဝေမှုများတွင် ပက်ကေ့ဂျ်အပ်ဒိတ်များရရှိနိုင်မှုကို အောက်ပါစာမျက်နှာများတွင် သင်ခြေရာခံနိုင်သည်- Ubuntu ကို, Fedora, suse, debian, RHEL, မုတ်.

source: opennet.ru

မှတ်ချက် Add