Wednesday, January 16, 2019

သိထားသင့္ေသာ ကြန္ပ်ဴတာအေၾကာင္း....

ကြန္ပ်ဴတာ တစ္လံုး မွာ hardware နဲ႔ software ဆိုၿပီး ႏွစ္ပိုင္း ရွိပါတယ္။

Hardware ဆိုတာက အရွင္းဆံုးေျပာရရင္ လက္နဲ႔ကိုင္တြယ္လုိ႔ရတဲ့ ပစၥည္းေတြျဖစ္ပါတယ္။
ဥပမာ။ ။ monitor၊ mouse   

Software ဆိုတာက လက္နဲ႔ကိုင္တြယ္လုိ႔မရတဲ့ ကြန္ပ်ဴတာအသံုးျပဳ ပစၥည္းလို႔ ေျပာရင္လည္းမွန္ပါတယ္။
program မ်ားကိုု စုေဆာင္းထားတာကို software လို႔ေခၚပါတယ္။ software ဆိုတာ ကြန္ပ်ဴတာကို ဘာလုပ္ရမယ္၊ ဘယ္အခ်ိန္မွာ လုပ္ရမလဲဆိုတာ ထိန္းေက်ာင္းေပးတဲ့ ညြန္ၾကားခ်က္ အစုအေ၀းလည္းျဖစ္ပါတယ္။ software မပါဘဲ ကြန္ပ်ဴတာ ဘာမွလုပ္လုိ႔မရသလို hardware မပါဘဲနဲ႔လည္း ကြန္ပ်ဴတာ ဘာမွ လုပ္လုိ႔ရမွာ မဟုတ္ပါဘူး။

software မွာ ႏွစ္မ်ိဳးထပ္ခြဲပါေသးတယ္။
၁။ application software
၂။ system software

application software

application software ဆိုတာကေတာ့ application ေတြမွာ အသံုးျပဳဖို႔ အလုပ္လုပ္ဖို႔ user (အသံုးျပဳသူ)ေတြကို အကူအညီေပးတဲ့ software ေတြျဖစ္ပါတယ္။

system software

system software ဆိုတာကေတာ့ hardware ေတြ အလုပ္လုပ္ႏိုင္ဖို႔အတြက္နဲ႔ application software ေတြ အသံုးျပဳႏိုင္ရန္အတြက္ maintain လုပ္ေပးပါတယ္။

ေနာက္ျပီး ကြန္ပ်ဴတာမွာ ဂဏန္း ႏွစ္လံုးနဲ႔ဘဲ အလုပ္လုပ္ပါတယ္။ 0 နဲ. 1 ပါ။ Binary number လို႔လဲေခၚပါတယ္။ Binary Digit ကိန္းလို႔လဲေခၚဆိုရပါတယ္။ အတိုေကာက္ကိုေတာ့ Bit လို႔ေခၚပါတယ္။
ဂဏန္းတစ္လုံး၊ စေပ့ဘားတစ္ခ်က္၊ စာတစ္လံုးကိုဆိုရင္ 8 bit လို႔ေခၚပါတယ္။
01010101 ယခုလို 0 နဲ႔ 1 ေတြခ်ည္းပါတဲ့ ဂဏန္း 8 လံုးတြဲကို 8 bit လို႔ေခၚၿပီး 8 Bit ဟာ 1 byte နဲ႔ ညီမွ်ပါတယ္။
1 bit (binary digit*) = the value of 0 or 1
8 bits = 1 byte
1024 bytes = 1 kilobyte
1024 kilobytes = 1 megabyte
1024 megabytes = 1 gigabyte
1024 gigabytes = 1 terabyte
1024 terabytes = 1 petabyte
Abbreviations
1 kilobyte = 1 k
1 megabyte = 1 MB
1 gigabyte = 1 GB
1 terabyte = 1 TB
1 petabyte = 1 PB
Size in "bytes"
Kilobyte (KB) = 1,024
Megabyte (MB) = 1,048,576
Gigabyte (GB) = 1,073,741,824
Terabyte (TB) = 1,099,511,627,776
Petabyte (PB) = 1,125,899,906,842,624


ကြန္ပ်ဴတာသမိုင္း
ေရွးယခင္က ကြန္ပ်ဴတာ ကို သတ္မွတ္ဖို႕ ရန္အလြန္တရာမွခက္ခဲ ခ့ဲ သည္။ယခုအခ်ိန္တြင္မူကြန္ပ်ဴတာကို အမည္အမ်ဳိးမ်ဳိး ေခၚေ၀ၚသတ္မွတ္ခဲ့ၾကျပီျဖစ္သည္။ ယခုအခ်ိန္တြင္မူကိရိယာမ်ား (Devices) ေတာ္ေတာ္မ်ားမ်ားကို ကြန္ပ်ဴတာ တပ္ျပီးေခၚေနၾကျပီျဖစ္သည္။အေစာဆံုး ကြန္ပ်ဴတာ သည္ တြက္ခ်က္မႈပိုင္းကို ေပသီး(Abacus)မ်ားမွ စခဲ့သည္။ ေပသီးသည္ ပထမဆံုးဂဏန္းေပါင္းစက္ ပင္ျဖစ္သည္။ ေပသီးကို တရုတ္ျပည္တြင္ စတင္အသံုးျပဳခဲ့သည္။

အလယ္ေခတ္အေရာက္တြင္ ဥေရာပ သခ်ာၤ ႏွင့္ အင္ဂ်င္နီယာ ပညာရွင္ Wilhelm Schickard က ၁၆၂၃ခုႏွစ္ တြင္ ပထမဆုံး စက္ပစၥည္းႏွင့္တြက္ခ်က္ေသာဂဏန္းေပါင္းစက္(Calculators) တစ္ခုကို တည္ေဆာက္ခဲ့သည္။သို႔ေသာ္လည္းယခုေခတ္တြင္ ၎ ကိရိယာDevice ကို ကြန္ပ်ဴတာ လုိ႕ေခၚဆို၍ မရေတာ့ေပ။အဘယ္ေၾကာင့္ဆို ေသာ္၎ကိရိယာသည္ Programmed ပါဝင္ျခင္းမရွိေသာေၾကာင့္ျဖစ္သည္။ ၁၈၀၁ ခုႏွစ္ တြင္ Joseph Marie Jacquard သည္ Textile ယက္ကန္းစက္ကို အေျခခံျပီး Punched Paper Cards Series ကို အသံုးျပဳျပီး သူ႕၏ ယက္ကန္းစက္ကို အလုိအေလွ်ာက္ အလုပ္လုပ္ေစခဲ့သည္။ Jacquard ၏ ယက္ကန္းစက္မွ ရလဒ္သည္ ကြန္ပ်ဴတာ ျဖစ္ေပၚတိုးတက္လာေစဖို႕ရန္ အေၾကာင္းရင္း တစ္ရပ္ျဖစ္သည္။ ၁၈၃၇ ခုႏွစ္ တြင္ Charles Babbage သည္ Programmable Mechanical Computer ကို စတင္ Design ေရးဆြဲခဲ့သည္။ Analytical Engine ဟုအမည္ေပးခဲ့သည္။ ၁၈၉၀ ခုႏွစ္ အေရာက္ တြင္US Census က Punched Card အတြက္ ၾကီးမားေသာ Scale Automated Data Processing စြမ္းေဆာင္ရည္ရိွေအာင္ Tabulating Machines ကို Herman Hollerith က Designed ေရးဆြဲခဲ့သည္။ Computing Tabulating Recording Corporation ( ယခုအခါ IBM ျဖစ္လာသည္ ) က ထုတ္လုပ္ခဲ့ပါသည္။

၁၉ ရာစု အကုန္အေရာက္ တြင္ကြန္ပ်ဴတာ ေတြဟာ အသံုး၀င္ေသာအရာတစ္ခုျဖစ္လာခဲ့သည္။ ကြန္ပ်ဴတာ သည္ လူတို႔ အတြက္လိုအပ္ေနျပီဆိုတာက သက္ေသျပလိုက္ျပီးျဖစ္သည္။ အဘယ္ေၾကာင့္ဆိုေသာ္ Punched Card, Boolean Algebra , The Vacuum Tube (Thermionic Value) နဲ႕ Teleprinter ေတြဟာ ေပၚေပါက္ခဲ့ေသာေၾကာင့္ျဖစ္သည္။၂၀ ရာစု အေတာအတြင္းတြင္ သိပၸံပညာသည္ မ်ားစြာတိုးတက္မႈရိွလာခဲ့ျပီး Analog Computer မ်ားလည္း တိုးတက္ေပၚေပါက္ခဲ့သည္။ သို႔ေသာ္လည္း၎ ကြန္ပ်ဴတာမ်ားသည္ Programmable မျဖစ္သည္႔အျပင္ အခုေခတ္ Digital ကြန္ပ်ဴတာ မ်ား၏ တိက်ေသာ စြမ္းေဆာင္ရည္ မ်ားလည္းပါဝင္ျခင္း မရိွေသးေပ။


ကြန္ပ်ဴတာ အလုပ္လုပ္ပံု 
ေယဘုယ်သံုး ကြန္ပ်ဴတာ တြင္ အဓိက ေလးမ်ဳိးမွာ ဂဏန္း သခ်ၤာ ႏွင့္ ေလာ့ဂ်စ္ အစိတ္အပိုင္း (arithmetic and logic unit)၊ ထိန္းခ်ဴပ္ အစိတ္အပိုင္း (control unit)၊ မွတ္ဥာဏ္(Memory Device) ႏွင့္ အသြင္း အထုတ္ ကိရိယာ (I/O) မ်ားတုိ႔ ျဖစ္သည္။ ၄င္း အစိတ္အပုိင္း တုိ႔ကုိ ဝါယာႀကိဳးမ်ား အတြဲလုိက္ျဖစ္ေသာ ဘတ္စ္ မ်ား ျဖင့္ တြယ္ခ်ိတ္ထားသည္။

ထိန္းခ်ဳပ္ဌာန

ဗဟိုထိန္းခ်ဴပ္ ဌာန (control unit, often called a control system or CPU) သုိ႔မဟုတ္ စီပီယူ သည္ ကြန္ပ်ဴတာ၏ အစိတ္အပုိင္း မ်ဳိးစံုကုိ လမ္းေဆာင္သည္။ ၄င္းသည္ ပရုိဂရမ္ ၏ ညႊန္ၾကားခ်က္မ်ားကုိ တစ္ေၾကာင္းျခင္း ဖတ္ရွဴ ၿပီး အဓိပၸါယ္ ျပန္သည္။ ထိန္းခ်ဴပ္ ဌာနသည္ အဆင့္ျမင့္ေသာ ကြန္ပ်ဴတာမ်ားတြင္ ၄င္းညႊန္ၾကားခ်က္ အစဥ္မ်ားကုိ ျမန္ဆန္ေစရန္အတြက္ ခုန္ေက်ာ္ ဖတ္ရွဴ ျခင္း လုပ္ေလ့ရွိသည္။

ထိန္းခ်ဴပ္ ဌာန ၏ အဓိက မွာ ပရုိဂရမ္ ေကာင္တာ၊ ေနာက္ ညႊန္းၾကားခ်က္ ကုိ ဘယ္ေနရာမွ ဖက္ရွဴမည္ ကုိ မွတ္သားထားေသာ အထူး သုိေလွာင္ရာ ရာဂ်စ္စတာ တုိ႔ျဖစ္သည္။
MIPS architecture ၏ ညႊန္ၾကားခ်က္ ကုိ ထိန္းခ်ဴပ္ ဌာနမွ ဖတ္ရွဴပံု ေဖာ္ျပေသာ ပံုၾကမ္း


ထိန္းခ်ဴပ္ ဌာန၏ အလုပ္မ်ားမွာ ေနာက္ စီပီယူမ်ားတြင္ ကြာျခားႏုိင္ေသာ္လည္း အေျခခံမွာ ေအာက္ပါအတုိင္းျဖစ္သည္။
  1. ပရုိဂရမ္ ေကာင္တာ ညႊန္ျပေသာ အခန္းမွ လာမည့္ ညႊန္ၾကားခ်က္ (instruction) ကုဒ္ကုိ ဖက္ပါ။
  2. ၄င္းညႊန္ၾကားခ်က္ ကုဒ္ကုိ အဓိပၸါယ္ ျပန္ၿပီး အမိန္႔ေပးခ်က္ (command) မ်ား သုိ႔မဟုတ္ အျခားစက္မ်ား၏ အဝင္လႈိင္း (signal) မ်ား အျဖစ္ လုပ္ေဆာင္ပါ။
  3. ညႊန္ၾကားခ်က္ အသစ္ေရးရန္ ပရုိဂရမ္ ေကာင္တာကုိ တစ္ခုျမင့္ပါ။
  4. ညႊန္ၾကားခ်က္ ပါလွ်င္ မွတ္ဥာဏ္(Memory Device) အခန္းမ်ားမွ အခ်က္အလက္မ်ားကုိ ဖက္ပါ။ မ်ားေသာအားျဖင့္ ၄င္းဖက္ရွဴရမည့္ အခန္းနံပါတ္ကုိ ညႊန္ၾကားခ်က္ ကုဒ္ ထည္မွာပင္ သိမ္းဆီးေလ့ရွိသည္။
  5. ညႊန္ၾကားခ်က္ သည္ ေအအယ္လ္ယူ သုိ႔မဟုတ္ အထူးစက္မ်ားမွ လုပ္ေဆာင္ခ်က္မ်ား လုိအပ္လွ်င္ ၄င္းစက္အား ေမာင္းႏွင္ပါ။
  6. ေအအယ္လ္ယူမွ အေျဖကုိ မွတ္ဥာဏ္(Memory Device)တြင္းသုိ႔ ျပန္လည္သိမ္းဆည္းပါ သုိ႔မဟုတ္ ပရင့္တာ ကဲ့သုိ႔ ပံုႏွိပ္စက္ မ်ားတြင္ ထုတ္ပါ။
  7. အစ အဆင့္ (၁) သုိ႔ ျပန္သြားပါ။
ဂဏန္း သခ်ၤာ ႏွင့္ ေလာ့ဂ်စ္ ဌာန 
Main articles: Arithmetic logic unit and ေအယ္လ္ယူ
ဂဏန္း သခ်ၤာ ႏွင့္ ေလာ့ဂ်စ္ အစိတ္အပိုင္း (Arithmetic and logic unit, ALU) ေခၚ ေအယ္လ္ယူ သည္ ဂဏန္း သခ်ၤာ ႏွင့္ ေလာ့ဂ်စ္ ေဆာင္ရြက္မႈ အပုိင္း ႏွစ္ခု ကုိလုပ္ေဆာင္သည္။
ဂဏန္း သခ်ၤာ လုပ္ေဆာင္မႈတြင္ ALU သည္ အေျခခံမ်ားျဖစ္သည့္ အေပါင္း၊ အႏုတ္၊ အေျမႇာက္၊ အစား၊ ႀတီဂိုႏိုေမႀတီ ဖန္ရွင္မ်ား ႏွင့္ square root တုိ႔ လုပ္ေဆာင္သည္။ အခ်ဳိေသာ လုပ္ေဆာင္မႈ မ်ားမွာ ကိန္းျပည့္မ်ားတုိတာ လုပ္ေဆာင္ႏုိင္ၿပီး အခ်ဳိမွာ တိက်မႈ ေရာ့က်ႏုိင္ေသာ္လည္း ဒႆမ ကိန္း (floating point) မွ ကိန္းစစ္ (real number) မ်ားအထိ လုပ္ေဆာင္ႏုိင္သည္။ သုိ႔ေသာ္၊ မည္သည့္ ကြန္ပ်ဴတာမဆုိ မည္မွ်ပင္ ခက္ခဲေသာ အလုပ္ျဖစ္ပါေစ တစ္ဆင့္ျခင္း လြယ္ကူေသာ အဆင့္မ်ားအျဖစ္ ေျပာင္းလည္းေစျခင္းျဖင့္ စြမ္းေဆာင္ႏုိင္သည္။ ထုိ႔ေၾကာင့္ မည္သည့္ ကြန္ပ်ဴတာမဆုိ ဘယ္လုိ ဂဏန္းသခ်ၤာျပႆနာမဆုိ ေျဖရွင္းႏုိင္ၿပီး ၄င္း၏ ေအယ္လ္ယူ က တုိက္ရုိက္ ေျဖရွင္၍မရပါက သြယ္ဝုိက္ေသာ္နည္းျဖင့္ ေျဖရွင္းႏုိင္သည္ ။

#C_M_H

IT ေလာကႀကီးကို ၿခိမ္းေျခာက္ေနေသာ DDOS attack အေၾကာင္း

DoS ဆုိတဲ႔ တုိက္ခုိက္မႈဟာ ယေန႔ေခတ္မွာ အင္တာနက္ တုိက္ခုိက္ေရးသမားတုိ႔ အသုံးၿပဳတဲ႔ နည္းလမ္းတစ္ခုလည္းၿဖစ္ပါတယ္.. Denial of Service ဆုိတဲ႔အတုိင္း အတုိက္ ခုိက္ခံရသူရဲ႕ Computer သုိ႔မဟုတ္ Webserver ရဲ႕ Bandwidth , CPU, Memory အသုံးၿပဳမႈေတြက သာမာန္ေပးစြမ္းႏုိင္တဲ႔ ပမာဏထက္ ပုိၿပီးလုိအပ္တဲ႔အတြက္ Out of Service ေတြ ၿဖစ္ကုန္တာပါ။ ၾကားၿဖတ္၍ Resource အားလုံးကုိ စားသုံးလုိက္ၿခင္းပဲ ၿဖစ္ပါတယ္။ ထပ္ၿပီး ရွင္းေအာင္ေၿပာရမယ္ဆုိရင္ ကၽြန္ေတာ္တုိ႔ကwww.planetcreator.net ဆုိၿပီး Browser မွာရုိက္ထည့္လုိက္ရင္ ေနာက္မွာ အလုပ္ လုပ္ေပးတာကwww.planetcreator.net တင္ထားတဲ႔ Webserver က အလုပ္လုပ္ ေၿဖၾကား၊ ေဖာ္ေဆာင္ေပးရတာၿဖစ္ပါတယ္။ ဒီေတာ့ သာမာန္ေတာင္းဆုိမႈနဲ႔ ပုိတဲ႔ Fade Request ေတြကုိ server ကၿပန္လည္ေၿဖၾကား ေပးေနရတဲ႔အတြက္ Over Load ၿဖစ္ကာ Server က ဆက္သြယ္မႈရပ္တန္႔သြားရၿခင္းၿဖစ္ပါတယ္။


DoS တုိက္ခုိက္မႈမွာ သတ္မွတ္ထားတဲ႔ Targeted System (Victim) နဲ႔ ၄င္း System ရဲ႕ Port, network component, firewall ကုိ အတိအက်ေရြးခ်ယ္ တုိက္ခုိက္တာၿဖစ္တဲ႔ အၿပင္ printer ေတြ Alarm System ေတြၿပတ္ေတာက္သြားေအာင္ တုိက္ခုိက္တာလည္းရွိပါတယ္....

ဒါေၾကာင့္ DoS အတုိက္ခံရၿပီဆုိရင္
* Network ရဲ႕ စြမ္းရည္က်ဆင္းလာၿခင္း (ေႏွးေကြးလာၿခင္း)
* Website မ်ားကုိ အသုံးၿပဳတဲ႔အခါ အသုံးၿပဳ၍ မရၿခင္း (တုိက္ခုိက္တဲ႔သူက http server ကုိ request အေၿမာက္အမ်ားေတာင္းဆုိၿခင္းေၾကာင့္)
* spam mail ေတြ အ၀င္မ်ားလာၿခင္း ( Mail Server ပ်က္စီးမယ္/တုိက္ခုိက္သူက အခ်ိန္တုိအတြင္းမွာ ေမးလ္ေတြ ေထာင္ေပါင္းမ်ားစြာကုိ victim အားပုိ႔ေဆာင္ေသာေၾကာင့္)
* Computer or Webserver မ်ားရဲ႕ CPU & Memory Usage ေတြ ၿမင့္တက္ေနၿခင္းတုိ႔ကုိေတြ႔ရႏုိင္ပါတယ္။


တုိက္ခုိက္ပုံ

DoS ရဲ႕ တုိက္ခုိက္ပုံကေတာ့ Peer to Peer တုိက္ခိုက္သလုိပါပဲ... အထူးၿပဳလုပ္ထားတဲ႔ DoS Tool ေတြနဲ႔ Vitim ရဲ႕ host သုိ႔မဟုတ္ ip address and port ေတြကုိ အခ်ိန္တုိ အတြင္းမွာ request ေပါင္းမ်ားစြာေတာင္းဆုိ အသုံးၿပဳၿခင္းပဲၿဖစ္ပါတယ္။

တုိက္ခုိက္တဲ႔ မႈကြဲေတြကေတာ့
* ICMP Flood
* Teardrop Attack
* Peer-to-Peer Attack
* Permanent Denial of Service
* Application Level Floods (IRC Floods)
* Nuke
* Distributed Attack
* Reflected Attack
* Degradation-of-Service
* Unintentional Denial of Service
* Denial of Service Level II
* Blind Denial of Service

DDoS ( Distributed Denial of Service) ဆုိတာ DoS ရဲ႕ Advanced Version တစ္ခုလုိ႔ ဆုိႏုိင္ပါတယ္။ ပစ္မွတ္ Server တစ္ခုကုိ flooding packets ေပါင္းမ်ားစြားအာ
single network တစ္ခုကတင္ မဟုတ္ပဲနဲ႔ Multiple host or network ေတြကေနတုိက္ခုိက္တာပါ။ DDoS က ယေန႔ေခတ္အတြက္ ကုရာ နတၳိေဆးမရွိသလုိၿဖစ္ေနၿပီး မိမိသုံး
တဲ႔ Server ရဲ႕ Security အားနည္းတာလည္း ၿဖစ္နိင္သလုိ site ရဲ႕ security ေစာင့္ၾကည့္မူ႔ေတြအားနည္းမူ႔ေၾကာင့္လည္း ၿဖစ္ပါတယ္။


ဘယ္လုိပဲၿဖစ္ေစ DoS နဲ႔ DDoS ကုိကၽြန္ေတာ္တုိ႔ ထပ္ၿပီး အနည္းငယ္ အက်ယ္ခ်ဲ႕ ၾကည့္ရေအာင္.. ကၽြန္ေတာ္က လူတစ္ေယာက္ကုိ စိတ္ပုိင္းဆုိင္ရာ ေႏွာက္ယွက္ခ်င္တယ္ဆုိရင္ အဲ႔လူရဲ႕ ဖုန္းနံပါတ္ကုိေကာက္ႏုိပ္လုိက္မယ္.. ၿပီးရင္ အဲ႔လူနားေထာင္ေလာက္တဲ႔ အခ်ိန္က်မွ ဖုန္းကုိ ေကာက္ခ်လုိက္မယ္.. ဒီလုိအၾကိမ္အေရအတြက္ မ်ားလာခဲ႔မယ္ဆုိရင္ တစ္ဖက္ကလူလည္းအေႏွာက္အယွက္ၿဖစ္မယ္... စိတ္ညစ္မယ္ေပါ႔.. ဒါဟာ Attacker to Victim တုိက္ရုိက္ ဆက္ႏြယ္တဲ႔ DoS နည္းလမ္းပဲ... ဒါေပမဲ႔ Victim က နည္းပညာေကာင္းၿပီး Attacker ရဲ႕ ဖုန္းနံပါတ္ေလးတစ္ခုတည္းကုိပဲ Block လုပ္ထားလုိက္မယ္ဆုိရင္ Attacker က ေခၚလုိ႔ရမွာမဟုတ္ေတာ့ဘူး ... ဒီလုိအခ်ိန္မွာ Attacker က ထပ္ေလာင္း၍ တစ္ၿခားနည္းလမ္းကုိသုံးလာလိမ့္မယ္.. အဲ႔ဒါကေတာ့ Radio Station ေတြကေနၿပီးေတာ့ လာမည့္ဘယ္ေန႔ ဘယ္အခ်ိန္မွာ ဘယ္ပြဲအတြက္ လက္မွတ္ေတြကုိ ေစ်းႏႈန္းခ်ဳိသာစြာေရာင္းခ်ေနတယ္... ေနာက္ထပ္ ဘယ္ေနရာမွာ အႏၱရာယ္နဲ႔ေတြ႔ေနတယ္.. ဒီလုိ Fade ေတြကုိ Victim နဲ႔ သတ္ဆုိင္တဲ႔သူေတြကုိ သတင္းေပးလုိက္မယ္ဆုိရင္ Victim ရဲ႕ မိတ္ေဆြအေပါင္းအသင္းေတြကလည္း Victim ကုိ တစ္ေယာက္ၿပီးတစ္ေယာက္ ဖုန္းဆက္ အေၾကာင္းၾကား အသိေပးေနေတာ့မွာပါပဲ.. ဒါက Distributed လုပ္တယ္လုိ႔ ေခၚတယ္.. တစ္နည္းအားၿဖင့္ DDoS ေပါ႔...

Distributed လုပ္တဲ႔ေနရာမွာ Attacker (Hacker) ေတြက Malware, Virus ေတြနဲ႔ၿဖစ္ေစ Fade Mail, Social Engineering နဲ႔ၿဖစ္ေစ အြန္လုိင္းကုိ ၿဖန္႔လုိက္ပါတယ္... ၄င္း Attacker ရဲ႕ Malware,Virus ေတြ မိမိစက္ထဲကုိေရာက္လာတာပဲၿဖစ္ေစ Social Engineering နဲ႔ေရာက္လာတာပဲ ၿဖစ္ေစ မိမိရဲ႕ စက္ဟာ Attacker ရဲ႕ အသုံးခ်ခံၿဖစ္သြား ပါၿပီ... ဒါကုိ Zombie လုိ႔ေခၚပါတယ္... ဒီ Zombie ေတြဟာ ဟက္ကာေတြရဲ႕ ခုိင္းေစတာကုိ လုပ္ေဆာင္ဖုိ႔ အခ်ိန္တုိင္းအသင့္ရွိေနၾကပါတယ္... ဒီလုိအြန္လုိင္းမွာ ဟက္ကာေတြ ရဲ႕ အသုံးခ်ခံေနရတဲ႔ Zombie ေတြက မနည္းပါဘူး။ ဒီအခ်ိန္မွာ တုိက္ခုိက္မဲ႔ Attacker (Hacker) က ၄င္းရဲ႕ Zombie ေတြကုိ အခ်ိန္၊ ေနရာ ေတြကုိ ညြန္ၾကားေပးလုိက္တာနဲ႔ Victim ကုိ အားလုံး Fade Request, Fade Mail ေတြ ပုိ႔ေဆာင္ၾကတာပါပဲ...

Fade Mail ဆုိတာက Mail Bomber ပုံစံမ်ဳိး တစ္ၾကိမ္မွာ ေမးလ္ေပါင္း ေသာင္းနဲ႔ ခ်ီၿပီး ပုိ႔ေဆာင္ႏုိင္သလုိ ၄င္းကုိ Distributed လုပ္ၿပီးတုိက္ခုိက္တာလည္းရွိပါတယ္... သာမာန္ user တစ္ေယာက္က ထုိသူသြားလည္တဲ႔ Website (
www.abc.com) တစ္ခု ရွိတယ္ဆုိၾကပါစုိ႔ .. Attacker က ၄င္းရဲ႕ Website မွာ စိတ္၀င္စားစရာ ေၾကာ္ၿငာေလး တစ္ခုထည့္ထားမယ္ ... ဒီအခ်ိန္မွာ ၄င္း site (www.abc.com) ကုိလာေရာက္လည္ပတ္တဲ႔သူေတြက ၄င္း ေၾကာ္ၿငာ္ေလးကုိ ႏုိပ္လုိက္တုိင္းမွာ Attacker ၾကိဳတင္သတ္မွတ္ ထားတဲ႔ Victim ရဲ႕ mail server ကုိ ေမးလ္ေပါင္း ေၿမာက္မ်ားစြာ ပုိ႔ၾကပါလိမ့္မယ္... ဒီလုိအခ်ိန္မွာ တစ္ဖက္က SMTP/POP စသည့္ Mail Server ေတြက Down သြားႏုိင္ပါ တယ္။

ဒါဟာ ရုိးရွင္းတဲ႔ တုိက္ခုိက္မႈပဲရွိပါေသးတယ္...DoS and DDoS တုိက္ခုိက္မႈမွာ 'packet-forgery' ေခၚတဲ႔ packet အတုအေယာင္ ဖန္တီးၿခင္း၊ 'IP spoofing' ေခၚတဲ႔ IP Address ကုိ packet နဲ႔အတူေၿပာင္းလဲၿခင္း စသည္အမ်ားၾကီးရွိပါေသးတယ္..

ဒီေနရာမွာ Ethernet ဆုိတာကုိ နဲနဲေလး လူဗိန္းနားလည္ေလာက္တဲ႔ ပုံစံနဲ႔ ေၿပာပါမယ္.. Ethernet ရဲ႕ System ေတြဆက္သြယ္မႈမွာ "packets" frames ေလးေတြ ကရွိပါတယ္ အဲ႔ frame ထဲ destination address, source address type field and data ေလးေတြပါ၀င္ပါတယ္... Ethernet address က 6 bytes ရွိၿပီး ၄င္းတုိ႔ရဲ႕ ကုိယ္ပုိင္ Ethernet Address တစ္ခုစီ ရွိၾကပါတယ္။ Ethernet က အသုံးၿပဳတာက CSMA/CD (Carrier Sense and Multiple Access with Collision Detection) ကုိအသုံးၿပဳတာၿဖစ္တဲ႔အတြက္ ၄င္းတုိ႔က Data တစ္ခုပုိ႔ေတာ့မယ္ဆုိရင္ ၄င္းပုိ႔မယ့္ Destination လမ္းေၾကာင္းေပၚမွာ သူပုိ႔ေဆာင္တဲ႔ Data ေတြ ရွိမရွိစစ္ပါတယ္... ရွိေသးရင္ ေခတၱခဏ ေစာင့္ၿပီးမွ ထပ္ပုိ႔ပါ တယ္... ဒီလုိလုပ္တာကုိ Collision Detection လုပ္တယ္လုိ႔ေခၚပါတယ္.. ဒီေတာ့ တစ္ခါပုိ႔ႏုိင္ၿပီး လက္ခံတာကေတာ့ အဆက္မၿပတ္လက္ခံႏုိင္တယ္ဆုိတဲ႔ သေဘာေပါ႔....

ဒါကုိ ဥပမာတစ္ခုထပ္ေပးမယ္... Ethernet technology ဆုိတာ အေမွာင္ခန္းထဲမွာ လူေတြ၀ုိင္းဖြဲ႕ စကားေၿပာတာနဲ႔တူပါတယ္... အခန္းထဲမွာဘယ္သူေၿပာေၿပာ အားလုံးက ၾကားပါတယ္.. ဒါက Carrier Sense ၿဖစ္ပါတယ္။ အခန္းထဲက လူတုိင္းက သူတုိ႔ စိတ္ဆႏၵရွိရင္ ေၿပာဆုိႏုိင္ပါတယ္.. ဒါက Multiple Access ၿဖစ္ပါတယ္.. ဒါေပမဲ႔ေၿပာတဲ႔သူ ေတြတုိင္းက ယဥ္ေက်းသိမ္ေမြ႔တဲ႔အတြက္ စကားေၿပာတဲ႔ ေနရာမွာ ဆင္ၿခင္ၾကတယ္ေပါ႔... အကယ္၍ တစ္ေယာက္က စကားေၿပာတဲ႔အခါမွာ ေနာက္တစ္ေယာက္က ပထမတစ္ ေယာက္ရဲ႕ စကားအၿပီးကုိေစာင့္ၾကၿပီး ဘာမွမေၿပာပါဘူး... ဒါက Collision Detection ၿဖစ္ပါတယ္။ အခန္းထဲမွာ ရွိတဲ႔ လူေတြမွာ နာမည္ကုိယ္စီရွိၾကပါတယ္.. ဒါက unique Ethernet address ၿဖစ္ပါတယ္... ဒီအခ်ိန္မွာ အခန္းထဲက လူတစ္ေယာက္က " Hello, brb, I'm PlanetCreator " လုိ႔ေၿပာရင္ ဒါက Ethernet destination and source
address ၿဖစ္ပါတယ္... ေၿပာမဲ႔သူက အားလုံးကုိ ေၿပာခ်င္တယ္ဆုိရင္ "Hello everyone, I'm PlanetCreator" လုိ႔ေၿပာပါလိမ့္မယ္.. ဒါက Broadcast Message လုိ႔ေခၚပါတယ္ အၿဖစ္အမ်ားဆုံးကေတာ့ ဒီအခန္းထဲမွာ ရွိတဲ႔သူေတြအားလုံးက တစ္ေယာက္ကုိ တစ္ေယာက္ ယုံၾကည္တဲ႔အတြက္ စကားကုိ လ်ဳိ႕၀ွက္ခ်က္မပါပဲ ပြင့္ပြင့္လင္းလင္းေၿပာၾကပါ တယ္... ဒါက non-encrypted data communication is common ၿဖစ္ပါတယ္..

ဒီအခ်ိန္မွာ အခန္းထဲကုိ လူစိမ္းတစ္ေယာက္က ၀င္လာတယ္ဆုိပါစုိ႔ ဒါကုိ (has tapped that Ethernet segment) လုိ႔သတ္မွတ္မယ္... အထဲမွာေၿပာတဲ႔သူေတြအားလုံးက လ်ဳိ႕၀ွက္ခ်က္မရွိပဲေၿပာသလုိ ၀င္ေရာက္လာတဲ႔ လူစိမ္းကလည္း စကား၀ိုင္းကုိ မေႏွာက္ယွက္ပဲ ထုိင္ၿပီးနားေထာင္ေနမယ္ .. ဒါကုိ Sniffing လုပ္တယ္လုိ႔ေခၚမယ္... ၿပီးရင္ အခန္းထဲက ၿပန္ထြက္သြားမယ္... ဘာမွေႏွာက္ယွက္မႈမလုပ္ခဲ႔တဲ႔အတြက္ သူ႔ကုိ Detect လုပ္ဖုိ႔ခက္ပါတယ္.. ဒီေလာက္ပါပဲ...

ဒီအခ်ိန္မွာ ၀င္ေရာက္လာတဲ႔ လူစိမ္းက အဆက္မၿပတ္ေၿပာေနမယ္ဆုိရင္ ဒါက DoS to that segment of the Ethernet ၿဖစ္တယ္လုိ႔ေခၚၿပီး သူတစ္ေယာက္တည္းတင္သာမ က အၿခားသူမ်ားကုိပါ စကားေတြ တစ္ၿပိဳင္နက္ထဲေၿပာေအာင္ လုပ္တယ္ဆုိရင္ DDoS ေပါ႔... ၿပီးရင္ အခန္းတစ္ခုလုံး လက္ပံပင္ဇရပ္ၿဖစ္သြားေတာ့ စကား၀ုိင္းေခၚတဲ႔ server ပ်က္ၿပီေပါ႔...

လူစိမ္းက ခဏကလုိ စကားေတြေၿပာတဲ႔အခါ အၿခားသူတစ္ေယာက္လုိ အသံမ်ဳိးနဲ႔ ထၿပီး စကားေၿပာမယ္.. ေနာက္တစ္ခါ ေနာက္တစ္ေယာက္ ေလသံနဲ႔ အသံတုလုပ္ေၿပာမယ္ ဆုိရင္ ဒါက IP Spoofing လုပ္တယ္ေခၚတယ္... ၿပီးရင္ ေနာက္တစ္ေယာက္ကုိ နာမည္အတုနဲ႔ စကားေတြေၿပာေနမယ္ဆုိရင္ packet forgery လုိ႔ေခၚတယ္...

သာမာန္အတြက္ Attacker (Hacker) က How are you ? ဆုိတဲ႔ ေမးလ္ခြန္းကုိ Server (Victim) က I'm fine ဆုိၿပီးတစ္ခါေၿဖႏုိင္ပါတယ္။ ဒါေပမဲ႔ Attacker ဖန္တီးထားတဲ႔ Zombie ေတြက တစ္ခ်ိန္တည္း တစ္ၿပိဳင္တည္း How are you? How are you? How are you? ဆုိၿပီး အုံလုိက္ေမးတဲ႔အခါ server က တစ္ေယာက္ကုိေၿဖၾကားေပးၿပီး ေနာက္တစ္ေယာက္ကုိ ေၿဖၾကားေပးဖုိ႔ လုပ္ေဆာင္ရပါတယ္... ဒီလုိေၿဖၾကားေနရတာမ်ားေတာ့ CPU ေတြ RAM ေတြက မခံႏုိင္ေတာ့ပါဘူး။ ဒါေၾကာင့္ ဆက္သြယ္မႈေတြ ၿပတ္ေတာက္သြားတာပါ။ Server Overload ၿဖစ္ၿပီး Data ေတြ ဆုံးရႈံးတဲ႔အထိ ၿဖစ္တတ္ပါတယ္။


DoS or DDoS attack ကုိဘယ္ကုိကာကြယ္မလဲ ဆုိတာကေတာ့ ရာႏႈန္းၿပည့္ကာကြယ္ႏုိင္တဲ႔ နည္းလမ္းကုိ မေတြ႔ေသးပါဘူး။ ဒါေပမဲ႔ ေကာင္းမြန္တဲ႔နည္းလမ္းတစ္ခ်ဳိ႕ေတာ့ရွိပါ တယ္...

* အၿမဲတမ္းမိမိရဲ႕ anti virus program ကုိ update လုပ္ေပးပါ
* Firewall အားမွန္ကန္၍ တင္းၾကပ္ေသာ rule မ်ားသတ္မွတ္ပါ...
* မိမိကြန္ပ်ဴတာမွာ မလုိအပ္တဲ႔ Intenet Port Number ေတြကိုပိတ္ပါ.. ကြန္ပ်ဴတာရဲ႕ Port ကုိစစ္ရန္
http://www.auditmypc.com/firewall-test.asp
* Email အား စနစ္တစ္က်အသုံးၿပဳပါ... mail filtering ကုိအသုံးၿပဳပါ...
ဒီအတြက္ အဓိက အေနနဲ႔ကေတာ့ Firewall ကုိထပ္ၿပီးေၿပာပါမယ္.. Firewall မွာ Hardware Firewall နဲ႔ Software Firewall ဆုိၿပီးရွိပါတယ္...


Hardware Firewall

ဒါကုိ Network Firewall လုိ႔လည္းေခၚၿပီး ယေန႔ေခတ္ ေနာက္ဆုံးေပၚ ADSL Router ေတြမွာ တစ္ခါတည္းတြဲၿပီးပါလာတတ္ပါတယ္... Coporate လုပ္ငန္းေတြဆုိရင္ေတာ့ Firewall Router တစ္ခုကုိ သီးသန္႔၀ယ္ၿပီး ဆင္ထားတတ္ၾကပါတယ္... Software Firewall ထက္စာရင္ Hardware Firewall ကပုိၿပီးေကာင္းမြန္ပါတယ္..

ေနာက္တစ္ခုက ဒါကေတာ့ DoS or DDoS ေတြကုိ ကာကြယ္ဖုိ႔ ေကာင္းမြန္တဲ႔ Server ဖြဲ႕စည္းမႈတစ္ခုပါပဲ... အထဲမွာ Hardware Firewall အၿပင္ Load Balancer ဆုိတာကုိပါထည့္ထားပါ တယ္...

Load Balancer ကုိၿပထားတာပါ...
အားလုံးကုိ အက်ဥ္းခ်ဳပ္ၿပီးေၿပာရမယ္ဆုိရင္ DoS ဆုိတာ Attacker ကေန Victim ကုိ တုိက္ရုိက္တုိက္ခုိက္တယ္.. DDoS ဆုိတာကေတာ့ ၾကားခံ Zombie ကုိေမြးၿပီး တုိက္ခုိက္ တယ္... ဒီေလာက္ပါပဲ...


Zombie & Botnet

Zombies ဆုိတာ ဟက္ကာရဲ႕ အသုံးခ်ခံတစ္ခုၿဖစ္ၿပီး Victim ကုိ ဟက္ကာရဲ႕ ခုိင္းေစခ်က္အတုိင္း တုိက္ခုိက္ရတာၿဖစ္ပါတယ္.. ဒါေၾကာင့္ Zombie ရတယ္ဆုိတာ malware ရတာလုိ႔ဆုိႏုိင္ပါတယ္.. Malware (zombie) ရထားတဲ႔ ကြန္ပ်ဴတာဟာ

* Sending spam
* Hack other computers
* Denial of service attacks
* Advertisement click fraud
* Phishing websites

စသည္တုိ႔ကုိလုပ္ေဆာင္ၾကပါတယ္..

၄င္း Malware, trojan, virus ဟာ အသုံးခ်ခံကြန္ပ်ဴတာအတြင္း၀င္ေရာက္ၿပီး အထဲမွာရွိတဲ႔ Security ေတြ၊ Antivirus ေတြကုိ ပိတ္ကာ Hacker အေနနဲ႔ Additional Programေတြ ထည့္သြင္းလုိ႔ရေအာင္၊ ၀င္ထြက္လုိ႔ရေအာင္ လမ္းဖြင့္ေပးပါတယ္... ဒီေတာ့ ၄င္း ကြန္ပ်ဴတာက Hacker ရဲ႕ အသုံးခ်ခံလုံးလုံးၿဖစ္ၿပီး လုိအပ္တဲ႔အခါ အသုံးၿပဳလုိ႔ရေအာင္ Hacker ေတြက ၄င္း Zombie ေလးေတြကုိ စုထားတတ္ပါတယ္... ဒါကုိ botnet လုိ႔ေခၚဆုိႏုိင္ပါတယ္.. bot ဆုိတဲ႔အဓိပၸါယ္ကလည္း Robot လုိ Artificial Intelligence ေပါ႔... အခုလုိ Trojan ေတြမ်ားလာခဲ႔ရင္ ေစလုိရာေစ ခုိင္းလုိ႔ရပါၿပီ... ဟက္ကာေတြက Zombie ေတြသုံးၿပီးတုိက္ခုိက္လုိက္ေတာ့ သူတုိ႔ကုိ လုိက္လံ Trace လုိက္ရတာ ခက္သြားတာ ေပါ႔...

မိမိစက္က Zombie ၿဖစ္ေနၿပီဆုိရင္ေတာ့

၁။ မိမိ RUN လုိက္တဲ႔ programs ေတြက ေႏွးလာမယ္။
၂။ services ေတြ (ဥပမာ http) high rate က်လာမယ္။
၃။ မ်ားၿပားလွေသာ connection requests ေတြဟာ ကြဲၿပားတဲ႔ Networks ေတြကေန ၀င္လာမယ္။
၄။ မိမိရဲ႕ site ကုိလာေရာက္အသုံးၿပဳသူေတြက site ကုိ အသုံးၿပဳတဲ႔ ေနရာမွာ ေႏွးမယ္။
၅။ မိမိရဲ႕ စက္ဟာ CPU load ၿမင့္ေနလိမ့္မယ္။

#C_M_H