Sunday 9 August 2015

SYN Flood

မြန်မာပြည်မှာရေကြီးတဲ့အကြောင်းတွေဖတ်ရင်းနဲ့ Flooding ဆိုတဲ့စကားလုံးကို အိုင်တီဖက်မှာလည်း အသုံးပြုတာကိုသွားသတိရမိပါတယ်။ Network နဲ့ Security ဖက်ကသူတွေအဖို့တော့ ရင်းနှီးနေတဲ့ စကားလုံးပါ။ ရေကြီးတာကို သဘာ၀ဘေးအန္တရယ်လို့ဆိုကြပေမယ့် အဲဒီလိုဘေးအန္တရယ်တွေ မကြာမကြာဖြစ်ပေါ်လာနေတာကတော့ လူတွေရဲ့ မဆင်မခြင်လုပ်ဆောင်မှုတွေ၊ ပယောဂတွေကြောင့်လည်း ဖြစ်ပါတယ်။ ဖြစ်လာမှ ကယ်ဆယ်ရေးလုပ်ကြတာထက် နည်းစနစ်ကျကျ ကြိုတင်ကာကွယ်မှုနဲ့ သေသေချာချာပြင်ဆင်ထားနိင်မှသာ ဆုံးရှုံးမှုတွေ၊ ဒုက္ခရောက်စရာတွေကနေ သက်သာမှာဖြစ်ပါတယ်။ ရေကြီးတယ်ဆိုတာ ငယ်စဉ်ကလေးဘဝထဲက ကြားဖူးနေတဲ့ကိစ္စပါ၊ အခုထိလဲကြားနေရတုံးပါပဲ။ ပြောင်းလဲလာတဲ့ သဘာဝအခြေအနေကြောင့် ဖြစ်ပေါ်လာနိုင်တဲ့ ဘေးအန္တရယ်တွေကို အတတ်ပညာရှင်တွေရဲ့ အသိပညာ အတတ်ပညာတွေနဲ့ ကြိုတင်ကာကွယ်မှုတွေ လုပ်ဆောင်ထားဖို့လိုအပ်ပါတယ်။

SYN Flooding ဆိုတာကတော့ လူတွေက တမင်တခါ လုပ်ဆောင်ထားတဲ့ တဖက်က ဆာဗာတွေကိုတိုက်ခိုက်ဖို့အတွက် အသုံးပြုတဲ့နည်းပညာတခုပါ။ ဒီနည်းပညာပေါ်နေတာလည်း ဆယ်စုနှစ်မကတော့ ပါဘူး၊ ဒါပေမယ့် သေသေချာချာ ကာကွယ်မှုမရှိတဲ့ Network တွေမှာအခုအချိန်ထိ ကြုံတွေ့နေကြဆဲပါ။ ကာကွယ်မှုရှိတဲ့ Network တွေမှာတောင်တခါတလေ ကြုံနိုင်ပါသေးတယ်။ အခုနောက်ပိုင်း အသုံးပြုတဲ့ Firewall တွေက အဆင့်မြင့်လာတဲ့အတွက် SYN Flood ကိုကာကွယ်ဖို့နည်းပညာတွေပါလာပါပြီ။ ဒါပေမယ့် Firewall ရဲ့အတွင်းက အတွင်းလူတွေ တိုက်ခိုက်ရင်တော့ ကြုံရအုံးမှာပဲ။ ဘာကြောင့်လဲဆိုရင်တော့ Network မှာအဓိကအသုံးပြုတဲ့ TCP ရဲ့အခြေခံအကျဆုံး 3 ways handshake လို့ခေါ်တဲ့ TCP SYN ပေါ်မှာအသုံးပြုပြီး တိုက်ခိုက်နိုင်လို့ဖြစ်ပါတယ်။

TCP မှာ Initiator လို့ခေါ်တဲ့ Client ဖက်ကစတင်လိုက်တဲ့ SYN ကို တဖက်က Listener လို့ခေါ်တဲ့ service ပေးတဲ့ ဆာဗာတွေက SYN,ACK ကိုပြန်ပို့ပါတယ်၊ Client ဖက်က ACK ပြန်ပို့ပြီး Connection တည်ဆောက်လိုက်ပါတယ်။ ဒါမှသာ အချက်အလက်တွေပို့ဆောင်ရေးကို စတင်လုပ်ဆောင် လို့ရမှာဖြစ်ပါတယ်။ တကယ်လို့သာ Client ဖက်က ACK ပြန်မပို့ရင် Connection က တစ်ဝက်တစ်ပျက်နဲ့ Half-Open ဆိုပြီးကျန်နေမှာဖြစ်ပါတယ်။ ဆာဗာဖက်ကလည်း ပြန်များလာလေမလားဆိုပြီးစောင့်ပေါ့၊ နောက်ထပ် Client တခုကအဲဒီလိုထပ်လုပ်ပြန်ရော၊ ဆာဗာကလဲထပ်စောင့်၊ ဒီလိုနဲ့ တစ်ကြိမ်တည်းမှာ တဖြည်းဖြည်းအဲဒီလိုလုပ်တဲ့ Client တွေများလာတဲ့အခါမှာတော့ ဆာဗာခမျာမှာလည်း နောက်ထပ် လက်ခံဖို့အတွက် စွမ်းဆောင်နိုင်ဖို့မတတ်သာတော့ဘူး။ တကယ်အသုံးပြုမဲ့ Client လဲလာရော ဆာဗာက အကြောင်းမပြန်နိုင်တော့ဘူး။ ဒါကို SYN Flooding လို့ခေါ်ကြပါတယ်၊ တနည်းအားဖြင့် ပြောရရင်တော့ လက်မလယ်တော့ဘူးလို့ပြောလို့ရပါတယ်၊ ဒါပေမယ့် လက်မလယ်တာက တကယ်ဈေးဝယ်မယ့် သူတွေကြောင့် မဟုတ်ပဲ ဝယ်နိုးနိုးနဲ့ တောက်ကြည့် မြောက်ကြည့် ဟိုဈေးစစ် ဒီဈေးစစ်တဲ့သူတွေနဲ့ ပြည့်နေတာကြောင့်ပေါ့။ ဒီနည်းနဲ့တိုက်ခိုက်တာကို SYN Flooding Attack လို့ခေါ်ပါတယ်။

ကျွန်တော်ကြုံတုန်းကတော့ လွန်ခဲ့တဲ့ဆယ်နှစ်ခန့်ကဖြစ်ပါတယ်။ Application aware/ NGN Firewall တွေပေါ်ကာစဖြစ်ပေမယ့် အများစုက Transport Layer မှာသာ အသုံးပြုကြတဲ့ Firewall တွေကိုပဲ သုံးနေကြတုန်းပါပဲ။ ဘယ်လိုဖြစ်လဲဆိုရင် Firewall ကမကြာခဏရပ်ရပ်သွားပြီးတော့ Management access တောင်ဝင်လို့မရတော့ပါဘူး၊ Reboot လုပ်လိုက်ရင် ခဏလောက်ပြန်ကောင်းသွားပေမယ့် ပြီးရင်ရပ်သွားပြန်ရော။ Firewall ကညံ့တာလဲပါတာပေါ့။ Log တွေကိုသေချာကြည့်မှ Firewall ကအသုံးပြုထားတဲ့ NAT IP တခုကိုအပြင်က IP ဆယ်ခုလောက်က Half-Open sessions တွေ(ထောင်ဂဏန်းလောက်) အများကြီး ဖြစ်နေတာကိုတွေ့ရပါတယ်။ အဲဒီအချိန်ကဖြေရှင်းခဲ့တာတော့ Time-Out ကိုလျော့ချ၊ အပြင်က အဲဒီ IP တွေကို Block List ထဲထည့်ရင်းနဲ့တော့ အဆင်ပြေသွားပါတယ်။ ကျွန်တော်တို့ဖုံးပြောသလိုပေါ့၊ ဟလိုဆိုပြီး ဘာမှပြန်မပြော၊ ဒီဖက်ကလဲစောင့်၊ ပထမတော့ ဆယ်ကြိမ်လောက် ဟလိုဟလိုနဲ့စောင့်၊ နောက်ပိုင်းစိတ်မရှည်တော့ ဟလို၂ ခါလောက်မှ အသံမကြားတာ့ရင် ချလိုက်သလိုပေါ့၊ ဒါကတော့ Time out လျော့လိုက်တဲ့သဘောပါပဲ။ နောက်တခါ ဒီနံပါတ်တခုကပဲ အဲ့ဒီလိုလုပ်နေတယ်၊  နှောင့်ယှက်တယ်လို့ထင်လာရင် အဲ့ဒီနံပါတ်ကို Block လုပ်လိုက်တာပေါ့။ ဒါပေမယ့် IP spoofing နဲ့ Source IP အများကြီးကနေလာရင်တော့ ဒီနည်းနဲ့ဖြေရှင်းဖို့ ခက်ခဲပါလိမ့်မယ်။ Time-out ကတော့အသုံးဝင်ပါလိမ့်မယ်။

 အခုနောက်ပိုင်းမှာ SYN Flood ကိုတွေ့ရနဲလာပေမယ့် ဗဟုသုတအနေနဲ့ သိသလောက် ဝေမျှပေးလိုက်ပါတယ်။ TCP ရဲ့ 3 ways handshake ကိုသိထားရင်တော့ ပိုပြီးနားလည် နိုင်ပါလိမ့်မယ်။သေချာတာကတော့ Flooding ဆိုရင် Call Flooding ကော၊ SYN Flooding ကော၊ အပြင်ကလူတွေကြုံရတဲ့ Flooding ကောအကုန်ဒုက္ခရောက်စရာတွေပါပဲ။ တတ်နိင်သလောက် ကြိုတင်ကာကွယ်ထားနိုင်ရင်တော့ အကောင်းဆုံးပါ။ ကြိုတင်ကာကွယ်မှု၊ ဖြစ်လာရင် အကောင်းဆုံး အထိရောက်ဆုံးနည်းလမ်းတွေနဲ့ ကယ်ဆယ်ရေးအစီစဉ်တွေ အသင့်ပြင်ထားရင်းနှင့် Flooding ရန်က ကာကွယ်နိုင်ပါစေ။

ကိုဖြိုး

No comments:

Post a Comment