UDP ပက်ကတ်ကို ပေးပို့ခြင်းဖြင့် ပျက်စီးမှုဖြစ်စေနိုင်သော Linux kernel ရှိ အားနည်းချက်

Linux kernel တွင် ဖော်ထုတ်ခဲ့သည်။ အားနည်းချက် (CVE-2019-11683အထူးဒီဇိုင်းထုတ်ထားသော UDP ပက်ကေ့ဂျ်များ (packet-of-death) ပေးပို့ခြင်းဖြင့် ဝန်ဆောင်မှုကို ငြင်းပယ်ခြင်းကို အဝေးမှဖြစ်စေရန် သင့်အား ခွင့်ပြုပေးသော)။ ပြဿနာသည် GRO (Generic Receive Offload) နည်းပညာကို အကောင်အထည်ဖော်ခြင်းဖြင့် udp_gro_receive_segment handler (net/ipv4/udp_offload.c) တွင် အမှားအယွင်းတစ်ခုကြောင့် ဖြစ်ပေါ်လာပြီး UDP ပက်ခ်များကို သုညအကွက်များဖြင့် လုပ်ဆောင်သည့်အခါ kernel memory ဧရိယာများ၏ အကြောင်းအရာများကို ပျက်စီးသွားစေနိုင်သည်။ (အလွတ်ပေးဆောင်မှု)။

ပြဿနာသည် kernel ကိုသာအကျိုးသက်ရောက်သည်။ 5.0UDP sockets များအတွက် GRO ပံ့ပိုးမှုဖြစ်ခဲ့သည်။ အကောင်အထည်ဖော်ခဲ့သည်။ ပြီးခဲ့သည့်နှစ်နိုဝင်ဘာလတွင်နောက်ဆုံးထွက်တည်ငြိမ်သော kernel ထွက်ရှိမှုသို့သာဝင်ရောက်နိုင်ခဲ့သည်။ GRO နည်းပညာသည် ပက်ကေ့ခ်ျတစ်ခုစီ၏ သီးခြားလုပ်ဆောင်မှုမလိုအပ်သော ကြီးမားသောအကွက်များအဖြစ် အစုလိုက်အစည်းလိုက်ပေါင်းလိုက်ခြင်းဖြင့် အဝင်အထုပ်အများအပြားကို အရှိန်မြှင့်လုပ်ဆောင်နိုင်စေပါသည်။
TCP အတွက်၊ ဤပရိုတိုကောသည် payload မပါဘဲ packet ပေါင်းစည်းခြင်းကို မပံ့ပိုးနိုင်သောကြောင့် ပြဿနာမဖြစ်ပွားပါ။

အားနည်းချက်ကို ယခုအချိန်အထိ ပုံစံဖြင့်သာ ပြင်ဆင်ထားပါသည်။ ဖာထေးခြင်း။မှန်ကန်သောအပ်ဒိတ်ကို မထုတ်ဝေရသေးပါ (မနေ့က အပ်ဒိတ် 5.0.11 ပြင်ဆင်မှု မပါဝင်ပါ။) ဖြန့်ချီရေးကိရိယာများမှ၊ kernel 5.0 တွင် ထည့်သွင်းနိုင်ခဲ့သည်။ Fedora 30, Ubuntu ကို 19.04, Arch Linux ကို, Gentoo နှင့် အခြားသော စဉ်ဆက်မပြတ် မွမ်းမံထားသော ဖြန့်ဝေမှုများ။ debian, Ubuntu 18.10 နှင့် အထက်, RHEL/CentOS и SUSE/openSUSE ပြဿနာက မထိခိုက်ပါဘူး။

ရလဒ်အဖြစ် ပြဿနာကို တွေ့ရှိခဲ့သည်။ အသုံးပြုမှု Google မှ ဖန်တီးထားသော အလိုအလျောက် ပဟေဠိစမ်းသပ်ခြင်းစနစ် syzbot နှင့်ခွဲခြမ်းစိတ်ဖြာမှု ကဆုန် (KernelAddressSanitizer) သည် မမ်မိုရီနှင့် မှားယွင်းနေသော မမ်မိုရီဝင်ရောက်မှုဆိုင်ရာ အချက်အလက်များနှင့် လုပ်ဆောင်သောအခါတွင် အမှားအယွင်းများကို ခွဲခြားသတ်မှတ်ရန် ရည်ရွယ်၍ လွတ်နေသောမှတ်ဉာဏ်နေရာများကို ဝင်ရောက်ကြည့်ရှုခြင်းနှင့် ထိုသို့သောခြယ်လှယ်မှုများအတွက် ရည်ရွယ်ခြင်းမရှိသော မန်မိုရီဧရိယာများတွင် ကုဒ်ထည့်ခြင်းကဲ့သို့သော မှားယွင်းနေသောမမ်မိုရီဝင်ရောက်မှုဆိုင်ရာ အချက်အလက်များကို ဖော်ထုတ်ရန် ရည်ရွယ်သည်။

source: opennet.ru

မှတ်ချက် Add