အားနည်းချက်သုံးခုကို Linux TCP stacks တွင်တွေ့နိုင်သည်

linux crash

မကြာသေးမီက Linux TCP stacks များတွင်အရေးကြီးသောအားနည်းချက်များကိုဖော်ထုတ်နိုင်သည့်သတင်းကိုထုတ်ပြန်ခဲ့သည် နှင့် FreeBSD တိုက်ခိုက်သူတစ် ဦး kernel ကိုပျက်ကွက်အစပျိုးရန်ခွင့်ပြုသည် သို့မဟုတ်အထူးပြုလုပ်ထားသော TCP packets မ်ား (packet of death) ကိုပြုပြင်ခြင်းဖြင့်သယံဇာတအလွန်အကျွံသုံးစွဲခြင်းကိုဖြစ်စေသည်။

အဆိုပါပြblockနာများအချက်အလက်ပိတ်ပင်တားဆီးမှုအများဆုံးအရွယ်အစား၏ကိုင်တွယ်အတွက်အမှားအယွင်းများကြောင့်ဖြစ်ရတဲ့နေကြသည် အဆိုပါ TCP packet ကို (MSS, အများဆုံး segment ကိုအရွယ်အစား) နှင့်ရွေးချယ်ဆက်သွယ်မှုအသိအမှတ်ပြုမှု (SACK, ရွေးချယ် TCP အသိအမှတ်ပြုမှု) အတွက်ယန္တရား၌တည်၏။

တစ် ဦး ရွေးချယ်အသိအမှတ်ပြုမှုကဘာလဲ?

ရွေးချယ်သော TCP အသိအမှတ်ပြုမှု (SACK) ၎င်းသည် data လက်ခံသူသည်အောင်မြင်သောလက်ခံထားသော segments များအားလုံးကိုပေးပို့သူအားအကြောင်းကြားနိုင်သောယန္တရားတစ်ခုဖြစ်သည်။

ပေးပို့သူအားပျောက်ဆုံးနေသော stream အစိတ်အပိုင်းများအားပြန်လည်ပို့ရန်ခွင့်ပြုသည် မိမိအ '' လူသိများ '' set ကနေ။ TCP SACK ကိုပိတ်ထားပါက sequence တစ်ခုလုံးကိုပြန်လည်ပို့ဆောင်ရန်အတွက်ပိုမိုကြီးမားသော retransmissions တစ်ခုလိုအပ်သည်။

Linux kernel တွင်ပြtheနာများသည် version 4.4.182, 4.9.182, 4.14.127, 4.19.52 နှင့် 5.1.11 ။ FreeBSD အတွက်ဖြေရှင်းချက်ကို patch တစ်ခုအနေနဲ့ရနိုင်သည်။

Kernel package update များကို Debian၊ RHEL, SUSE / openSUSE, ALT, Ubuntu, Fedora နှင့် Arch Linux တို့အတွက်ဖြန့်ချိသည်။

CVE-2019-11477 (SACK ထိတ်လန့်)

ပြဿနာ 2.6.29 အဖြစ် Linux kernels တွင်ပြသပြီးသင့်အား kernel ကို crash ခွင့်ပြုသည် (ထိတ်လန့်တုန်လှုပ်ခြင်း) သည် Controller တွင်ကိန်းပြည့်များပြားခြင်းကြောင့် SACK packets များကိုစီးသည့်အခါ။

တိုက်ခိုက်မှုတစ်ခုအတွက် TCP ဆက်သွယ်မှုအတွက် MSS တန်ဖိုး ၄၈ bytes သတ်မှတ်ရန်လုံလောက်သည် နှင့်အချို့သောလမ်းအတွက်စီစဉ်ပေး SACK packets တွေကိုတစ် sequence ကိုပေးပို့ခြင်း။

ပြtheနာ၏အနှစ်သာရမှာဖွဲ့စည်းပုံဖြစ်သည် tcp_skb_cb (Socket Buffer) 17 အပိုင်းအစများသိုလှောင်ရန်ဒီဇိုင်းပြုလုပ်ထားသည် ("Define MAX_SKB_FRAGS (65536 / PAGE_SIZE + 1) => 17") ။

packet တစ်ခုပို့ခြင်းလုပ်ငန်းစဉ်၌၎င်းသည် send Queue ထဲတွင်နေရာချထားသည်။ network card ဘက်မှအစိတ်အပိုင်းများကိုလုပ်ဆောင်ရန် controller (TSO, Segment Segment Download) အား segmentation information ကိုပေးသည်။

packet ဆုံးရှုံးမှုသို့မဟုတ် selet packet retransmission ဖြစ်ပေါ်လာပါက SACK ကို enable လုပ်ပြီး TSO ကို driver မှထောက်ပံ့သည်ဆိုပါက Chunk များကိုသိမ်းဆည်းသည်။

အကာအကွယ်အတွက်ဖြေရှင်းရန်အနေဖြင့် SACK processing ကို disable လုပ်နိူင်ပြီး MSS သေးသေးလေးနှင့်ဆက်သွယ်မှုများကိုပိတ်ဆို့နိုင်သည်။

CVE-2019-11478 (နှေးနှေးခြင်းအိတ်)

ဒီပျက်ကွက် အဆိုပါ SACK ယန္တရားတစ်ခုပြတ်တောက်ဖြစ်ပေါ်စေသည် (၄.၁၅ တွင် Linux kernel ကိုသုံးသောအခါ) သို့မဟုတ်အရင်းအမြစ်အလွန်အကျွံသုံးစွဲမှု။

အထူးပြုလုပ်ထားသော SACK packets မ်ားကို process လုပ်သောအခါပြသနာသည်ထင်ရှားပါသည်။ ၎င်းသည် retransmission Queue (TCP retransmission) ကို fragment နိုင်သည်။ ကာကွယ်မှုအတွက်ဖြေရှင်းနည်းများသည်ယခင်အားနည်းချက်များနှင့်ဆင်တူသည်

CVE-2019-5599 (နှေးနှေးခြင်းအိတ်)

SACK sequence ကိုလုပ်ဆောင်စဉ်ပေးပို့လိုက်သော packet map ၏အပိုင်းအစကိုဖြစ်ပေါ်စေသည် TCP connection တစ်ခုအတွင်း၌အရင်းအမြစ်များစွာ အသုံးပြု၍ စာရင်းရှာဖွေမှုလည်ပတ်မှုကိုပြုလုပ်ရန်။

ပြBSနာသည် FreeBSD 12 တွင် RACK packet loss detect လုပ်ခြင်းယန္တရားနှင့်အတူပေါ်လာသည်။ ပြသနာကိုကျော်လွှားနိုင်စေရန်အတွက် RACK module ကိုသင် disable လုပ်နိုင်သည်။ (၎င်းသည်ပုံမှန်အားဖြင့်တင်မထားပါ၊ sysctl net.inet.tcp.functions_default = freebsd) ကိုသတ်မှတ်ခြင်းဖြင့်ပိတ်ထားသည်။

CVE-2019-11479

အားနည်းချက်ကတိုက်ခိုက်သူအား Linux kernel မှတုန့်ပြန်မှုများကို TCP segments များအဖြစ်ခွဲခြားစေသည်။ တစ်ခုချင်းစီတွင် data 8 bytes သာပါ ၀ င်ပြီး၎င်းသည်အသွားအလာသိသိသာသာတိုးလာခြင်း၊ CPU ဝန်တိုးခြင်းနှင့်ပိတ်ဆို့ထားသောဆက်သွယ်ရေးလမ်းကြောင်းသို့ ဦး တည်နိုင်သည်။

ထို့အပြင်၎င်းသည်အပိုအရင်းအမြစ်များကိုစားသုံးသည် (ပရိုဆက်ဆာပါဝါနှင့်ကွန်ယက်ကဒ်) ။

ဒီတိုက်ခိုက်မှုကိုတိုက်ခိုက်သူဘက်မှစဉ်ဆက်မပြတ်ကြိုးပမ်းအားထုတ်မှုလိုအပ်သည်။ တိုက်ခိုက်သူသည်အသွားအလာပေးပို့ခြင်းကိုရပ်တန့်ပြီးနောက်မကြာမီတွင်တိုက်ခိုက်မှုများသည်အဆုံးသတ်လိမ့်မည်။

ဒီတိုက်ခိုက်မှုတိုးတက်နေချိန်မှာ system ဟာစွမ်းဆောင်ရည်နိမ့်ကျနေပြီးသုံးစွဲသူတချို့အတွက် ၀ န်ဆောင်မှုကိုငြင်းပယ်ခံရလိမ့်မယ်။

ဝေးလံခေါင်ဖျားသောအသုံးပြုသူတစ် ဦး သည်အများဆုံးအရွယ်အစားကိုသတ်မှတ်ခြင်းဖြင့်ဤပြtriggerနာကိုဖြစ်ပေါ်စေသည် ၎င်း၏အနိမ့်ဆုံးကန့်သတ်ချက်ရှိသည့် TCP ဆက်သွယ်မှု (MSS) (48 bytes) နှင့်အထူးပြုလုပ်ထားသော SACK packets မ်ားကိုပေးပို့သည်။

ပြသနာကိုကျော်လွှားနိုင်ရန်အတွက် MSS နည်းသောဆက်သွယ်မှုများကိုပိတ်ဆို့ရန်အကြံပြုသည်။


ဆောင်းပါး၏ပါ ၀ င်မှုသည်ကျွန်ုပ်တို့၏အခြေခံမူများကိုလိုက်နာသည် အယ်ဒီတာအဖွဲ့ကျင့်ဝတ်။ အမှားတစ်ခုကိုသတင်းပို့ရန်ကလစ်နှိပ်ပါ ဒီမှာ.

မှတ်ချက်ပေးရန်ပထမဦးဆုံးဖြစ်

သင်၏ထင်မြင်ချက်ကိုချန်ထားပါ

သင့်အီးမေးလ်လိပ်စာပုံနှိပ်ထုတ်ဝေမည်မဟုတ်ပါ။

*

*

  1. အချက်အလက်အတွက်တာဝန်ရှိသည် - Miguel ÁngelGatón
  2. အချက်အလက်များ၏ရည်ရွယ်ချက်: ထိန်းချုပ်ခြင်း SPAM, မှတ်ချက်စီမံခန့်ခွဲမှု။
  3. တရားဝင်: သင်၏ခွင့်ပြုချက်
  4. အချက်အလက်များ၏ဆက်သွယ်မှု - ဒေတာများကိုဥပဒေအရတာ ၀ န်ယူမှုမှ လွဲ၍ တတိယပါတီများသို့ဆက်သွယ်မည်မဟုတ်ပါ။
  5. ဒေတာသိမ်းဆည်းခြင်း: Occentus ကွန်ယက်များ (အီးယူ) မှလက်ခံသည့်ဒေတာဘေ့စ
  6. အခွင့်အရေး - မည်သည့်အချိန်တွင်မဆိုသင်၏အချက်အလက်များကိုကန့်သတ်၊