Popular Posts

Thursday, October 24, 2013

Virus ဆိုတာဘာလဲ ?

Virus Theory

Virus ကိုဘယ္လိုေရးလဲ ေမးျပီးေတာ့ ထပ္ေမးျပန္ျပီ...
Virus ကိုဘာနဲ႕ ေရးရင္ အေကာင္းဆံုးလဲတဲ့....
ေနာက္ျပီး ဘယ္လိုေရးသင့္လဲ....
ဘယ္လို အလုပ္လုပ္ရင္ virus က ေၾကာက္ဖို႕ေကာင္းလာမလဲ....
အခု အဲဒီအေၾကာင္းေလး ေျပာရတာေပါ့...

အမ်ားအားျဖင့္ေတာ့....
Virus က တကယ္တန္းၾကေတာ့ Computer ကို ဖ်က္ဖို႕....
ဒါေပမယ့္ Antivirus ေတြက သိၾကတယ္...
Virus ေတြကိုဘယ္လို သိၾကတာလဲဆို...
သူတို႕က Virus Sample File ေတြကေနသိၾကတယ္...
သူတို႕ Antivirus ထဲမွာရိွတဲ့ Sample File ေတြထဲက မရိွရင္....
အဲဒီ Virus ကိုမသိေတာ့ဘူး....

ေနာက္တစ္ခ်က္က်ေတာ့ Antivirus ေတြက စစ္ရင္ File တစ္ခု ထုတ္လုိက္တယ္...
အဲဒီ File မွာ virus ကူးမကူးကေန သိၾကပါတယ္...

အဲဒါကေတာ့ antivirus ေတာ္ေတာ္မ်ားမ်ား အလုပ္လုပ္ပံုပါ....

Virus က စမယ္ဆိုကတည္းက 1 file ထဲနဲ႕ လုပ္လို႕မျဖစ္ပါဘူး...
အနည္းဆံုး file 2 file မွ ျဖစ္မွာပါ...
ဘာျဖစ္လို႕လည္းဆို...
file 1 file ကို ပိတ္လိုက္ရင္ ေနာက္ file တစ္ file က အဲဒါက ျပန္ဖြင့္ေပးမလို႕ပါ...

ကဲ...
A က တကယ့္ virus
B ကေတာ့ A ကို အကူအညီေပးဖို႕ေပါ့...

A ကို run တာနဲ႕....
B လည္း run မယ္...

ဒါမွ မဟုတ္ B ကို run တာနဲ႕
A လည္း run မယ္..

အဲဒီပံုစံေပါ့...
A ကေတာ့ virus အလုပ္ေတြလုပ္မယ္...
B ကေတာ့ A ရိွမရိွစစ္ေနမယ္...
A ကလည္း B ရိွမရိွစစ္မွာပဲ...

user က virus ကိုေတြ႕ျပီ Process ေတြ ထဲမွာ...
A ကိုအရင္ ပိတ္လိုက္မယ္...
ျပီးမွ B ကိုပိတ္မယ္...
အဲလို စဥ္းစားျပီး A ကို ပိတ္လိုက္တာေပါ့...

ဒါေပမယ့္ A ကိုပိတ္လိုက္တာနဲ႕ B က ခ်က္ခ်င္း A ကိုျပန္ေခၚဖြင့္တယ္....
အဲမွာ virus သတ္တဲ့ေကာင္ေတြ စားကုန္ၾကေရာ...
B ကို ပိတ္ေတာ့လည္း A က ျပန္ဖြင့္ေပး...
ႏွစ္ခုလည္း တျပိဳင္တည္း ပိတ္ဖို႕ကလည္း မျဖစ္ႏိုင္ဘူး..
ကဲဒါဆို ဘယ္လိုလုပ္မလဲ....
အခုတေလာ အဲလို virus ေတြ ေတာ္ေတာ္မ်ားမ်ား အေရးမ်ားလာပါတယ္...

အဲလို virus ေတြကို ဖ်က္ဖို႕ဆိုရင္ေတာ့ ကိုယ့္စက္က hard disk နဲ႕မတက္နဲ႕...
ျဖဳတ္သြားလိုက္.. တျခားစက္မွာ secondary နဲ႕ တက္...
A ေကာ B ပါရွာဖ်က္လိုက္... ျပီးျပီ...

virus ေတြ windows စစခ်င္းအလုပ္လုပ္ေအာင္...
Registery ထဲမွာ
"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
အဲဒီေအာက္မွာ File ပတ္လမ္းေၾကာင္းေရးထားခဲ့မယ္ဆိုရင္ေတာ့
ေရးထားတဲ့ program ကို windows စစတက္ျပီးတာနဲ႕ run ေပးမွာပါ...

A ဆိုတဲ့ virus က အဲဒီ registery ဆိုတဲ့ေနရာမွာ အခ်ိန္တိုင္း သြားသြားေရးခိုင္းထားပါမယ္...
ဒါဆိုရင္ user က msconfig နဲ႕၀င္ သြားျပီး windows တက္တက္ျခင္းမွာ မတက္ေအာင္ လုပ္လည္း မထူးေတာ့ဘူးေပါ့....

ေနာက္ထပ္နည္းကေတာ့ registery ကို ပိတ္တဲ့နည္း

User Key: [HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
Value Name: DisableRegistryTools
Data Type: REG_DWORD (DWORD Value)
Value Data: (0 = allow regedit, 1 = disable regedit)

အဲမွာ REG_DWORD ကို create လုပ္ျပီးေတာ့ value မွာ 1 ထည့္လိုက္ရင္ေတာ့ user က registery သံုးလို႕မရေတာ့ပါဘူး...

ေနာက္ျပီးေတာ့ Task Manager ( Ctrl+Alt+Del ) ကိုေဖ်ာက္လိုက္ခ်င္ရင္ေတာ့

User Key: [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\
System]
System Key: [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System]
Value Name: DisableTaskMgr
Data Type: REG_DWORD (DWORD Value)
Value Data: (0 = default, 1 = disable Task Manager)

အဲမွာ REG_DWORD ကို create လုပ္ျပီးေတာ့ value မွာ 1 ထည့္လိုက္ရင္ေတာ့ user က registery သံုးလို႕မရေတာ့ပါဘူး...

Folder Option ကို ထပ္ျပီးေဖ်ာက္လိုက္ခ်င္ရင္ေတာ့

User Key: [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\
Explorer]
System Key: [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
Explorer]
Value Name: NoFolderOptions
Data Type: REG_DWORD (DWORD Value)
Value Data: (0 = show options, 1 = hide options)

အဲမွာ REG_DWORD ကို create လုပ္ျပီးေတာ့ value မွာ 1 ထည့္လိုက္ရင္ေတာ့ user က Folder Option ကို Tool -> Option

မွာမျမင္ရေတာ့ပါဘူး...

တနည္းေျပာရရင္ ကၽြန္ေတာ္တို႕ registery ကို ေကာင္းေကာင္းေလး ကလိလို႕ရတာနဲ႕ Computer ၾကီးကို လိုသိလို ထိန္းလို႕ရပါတယ္... AVG ကေတာ့ Registery ကို မစစ္ေဆးပါဘူး... ဒါေပမယ့္ BitDefender ကေတာ့ စစ္တယ္ဗ်... ေျပာင္းတာနဲ႕ ေျပာင္းမေျပာင္းေမးတယ္... အဲလိုမ်ဳိး Antivirus ေတြအတြက္ေတာ့ မလြယ္ဘူးေပါ့....

Registry ပိုင္းကို http://www.pctools.com/guides/registry မွာေလ့လာလို႕ရပါတယ္..

ဘာနဲ႕ ေရးသင့္လဲလို႕ ေျပာရင္ ကိုယ္သန္ရာနဲ႕ေတာ့ေရးလို႕ရေပမယ့္...
ဘယ္ OS ကို တိုက္ခိုက္မွာလဲ ဆိုတာ စဥ္းစားရမယ္...
Vbscript(.vbs) ကို linux မွာ သံုးလို႕မရဘူး...
ဒါေပမယ့္ Javascript(.js) နဲ႕ေတာ့ linux မွာ၇တယ္...
Windows မွာလည္းရတယ္...
Javascript(.js) ကေတာ့ ဘယ္လိုထိ လုပ္ပိုင္ခြင့္ေပးလဲဆိုတာ ကၽြန္ေတာ္ေသေသခ်ာခ်ာမသိဘူး...
windows အတြက္ကေတာ့ .vbs ကေတာ္ေတာ္ေလး ထိေရာက္တယ္...
ကစ္လို႕ေကာင္းတယ္...

.exe ေတြနဲ႕လည္း တိုက္ခိုက္လို႕ရတယ္...
ဒါေပမယ့္...
ကိုယ္ထုတ္လိုက္တဲ့ .exe ဟာ runtime file မပါပဲနဲ႕ run လုိ႕ရရမယ္...
Windows နဲ႕ Linux က file တည္ေဆာက္ပံုေတြ မတူညီၾကဘူး...
ဒါေၾကာင့္ Linux အတြက္ virus က Linux မွာပဲ ရမယ္...
Windows အတြက္ virus ကေတာ့ windows မွာပဲထိေရာက္မွာေပါ့...

ဥပမာ java နဲ႕ေရးထားရင္ java runtime မပါပဲနဲ႕ java က run လို႕မရဘူး...
ဒါဆိုရင္ေတာ့ မေရးသင့္ဘူးေပါ့... java runtime ရိွတဲ့စက္ကိုပဲ ထိမွာေလ...
.NET နဲ႕ ေရးျပန္ေတာ့လည္း .NET Framework ရိွမွ အလုပ္လုပ္မွာ...
ဒါဆိုလည္း .NET အတြက္က သိပ္မဟုတ္ေသးဘူး....
vb ကေတာ့ ရတယ္... ဘာ compoment မွ မသံုးပဲေရးရင္ runtime မလိုေလာက္ဘူး...
ဒါေၾကာင့္ vb နဲ႕ဆိုရင္ေတာ့ ရေလာက္တယ္...
script file ေတြကေတာ့ OK တာေပါ့...
run time မပါဘူး...
windows က run ေပးတယ္....
အဲဒါေၾကာင့္ အမ်ားအားျဖင့္ .vbs နဲ႕အေရးမ်ားတယ္...
ေနာက္ျပီး C ... အဲဒါ အရင္ကတည္းက programming...
သူ႕ exe က စက္တိုင္းလိုလိုအသာေလး run လို႕ရတယ္...
C နဲ႕ virus ေရးလို႕ရတယ္...
C က system အထဲထိ ေကာင္းေကာင္းေရးႏိုင္တယ္...
hardware ေတြကိုပါ ဒုကၡေပးႏိုင္တယ္...

တခ်ဳိ႕ virus ေတြက hardware ေတြကို တိုက္ရိုက္မဟုတ္ပဲ သြယ္၀ိုက္ျပီးေပးတာ...
ဘယ္လိုလည္းဆိုရင္ေတာ့
Memory မွာ အျပည့္တင္ထားတယ္.. File ေတြကို...
ဒါဆို user က စက္ၾကီးေလးသြားျပီ...
ဘာမွ မလုပ္ႏိုင္ဘူး....
memory ေပၚမွာလည္း အခ်ိန္ျပည့္ wirte မယ္...
ဒါဆို ၾကာရင္ memory ၾကြသြားမွာေပါ့...

အဲလိုမ်ဳိး...
Process မွာ အျပည့္တင္ထားမယ္...
process ေတြကို အေသအေၾက ခိုင္းထားမယ္..
ဒါဆို ၾကာ၇င္ Process က်လာမယ္...
ေနာက္ဆံုး ပ်က္သြားႏိုင္တယ္...

virus ရိွတဲ့ စက္ထဲကို
flash disk ကိုထိုးထားလိုက္တယ္..
ေနာက္ျပီး...
ျပန္မျဖဳတ္ပဲ...
ဒီအတိုင္း Computer ကို စက္သံုးေနတယ္..
အဲဒီ အခ်ိန္မွာ virus က Flash Disk ေပၚမွာ virus ေတြ အခ်ိန္တိုင္း write ေနမယ္...
ၾကာရင္ flash disk မွာ write တာ မ်ားလြန္းေတာ့ bad sector ေတြေပၚလာမယ္...
အဲဒါကို မသိပဲ user က ဆက္သံုးတယ္... chkdsk နဲ႕ commond prompt မွာ ၀င္မစစ္ဘူး...
badsector ေတြကိုလည္း မျပင္ဘူးဆိုရင္ ၾကာရင္ flash disk ပါၾကြသြားႏိုင္တယ္...

virus ပိုင္းဘယ္လိုေရးရလဲဆိုတာ ကို source code နဲ႕ ေရွ႕မွာ ျပထားဘူးပါတယ္...
ဘယ္လိုလုပ္ရင္ ေကာင္းမလဲ...
ဘယ္လိုေတြ လုပ္ႏိုင္လဲဆိုတာေလးကို အခုမွ ေျပာျပျဖစ္ေတာ့တယ္..

ကိုယ့္ေပ်ာ္ရႊင္မႈေၾကာင့္ သူတစ္ပါး ဒုကၡမေရာက္ပါေစနဲ႕လို႕ ဆုေတာင္းပါတယ္ဗ်ာ...

No comments:

Post a Comment