User talk:U Myint Myat Aung

Free Knowledge
ပညာဒါန

Hacker ျဖစ္ခ်င္သူေတြေလ့လာသင့္တဲ့ Programming Language တခ်ိဳ႕အေၾကာင္း တေစ့တေစာင္း ...။

=
===========================

သည္အပုိင္းမွာေတာ့ နယ္ပယ္အက်ယ္ႀကီးေျပာမေနေတာ့ပဲ Hacking ပုိင္းလိုက္မယ္ဆုံးျဖတ္ထားသူတုိင္းေလ့လာသင့္တဲ့ Programming Language & Scripting Language ေတြအေၾကာင္း အက်ဥ္းခ်ဳံးေဆြးေႏြးသြားပါမယ္ ...။ ကုိယ္သိသေလာက္ထဲကေပါ့ ... လိုတာလည္းရွိမွာပဲ ...။

Okay ... ဆက္သြားရေအာင္ ... အေရးအႀကီးဆုံးေမးခြန္းတစ္ခုရွိတယ္ .... Hacking မွာ Language ေတြက ဘာလို႔အေရးႀကီးသလဲ?

ဆုိၾကပါစုိ႔ ... က်ေနာ္တုိ႔သုံးေနတဲ့ ကြန္ပ်ဴတာႀကီးပဲျဖစ္ျဖစ္ ဖုန္းပဲျဖစ္ျဖစ္ ၊ ယုတ္စြအဆုံး TV remote controll မွာပဲျဖစ္ျဖစ္ ပုံမွန္အလုပ္ေတြကုိလုပ္ေဆာင္ႏုိင္ဖို႔အတြက္ Language ေတြအမ်ဳိးမ်ဳိးသုံးၿပီးႀကိဳေရးထားရတယ္...။ ကြန္ပ်ဴတာတစ္လုံးကုိေဖာက္၀င္ဖို႔ႀကိဳးစားတယ္ ၊ ဖုန္းတစ္လုံးကုိေဖာက္၀င္ဖို႔ႀကိဳးစားတယ္ ... သူ႔မွာ Security System အတြက္ code ေတြနဲ႔ Program ေတြႀကိဳေရးထားတယ္ ...။ သည္ Code ေတြကုိ Break လုပ္ ခ်ဳိးဖ်က္၀င္ေရာက္ၿပီး Access ရေအာင္ယူတာမ်ဳိးကုိ Hacking လုိ႔ေခၚတာ...။ သည္လုိလုံၿခဳံေရးဆုိင္ရာ Program ေတြကုိခ်ဳိးေဖာက္ဖို႔အတြက္ဆုိ ခင္ဗ်ားမွာလည္း ဒီပရုိဂရမ္ေတြအလုပ္လုပ္ပုံကုိ ေသခ်ာနားလည္တဲ့ပညာရွိေနမွျဖစ္မွာေပါ့ ...။

" တကယ့္ Hacking ဆုိတာ - ရုပ္ရွင္ေတြထဲကလုိ Enter ေလးတခ်က္ႏိွပ္လိုက္ရုံနဲ႔ အလုပ္ျဖစ္သြားတာမဟုတ္ဘူး ...။ Code အခ်င္းခ်င္းစစ္ခင္းၿပီး သူႏုိင္ကုိယ္ႏုိင္ အၿပိဳင္က်ဲရတာမ်ဳိး .... "

ဒါဟာ ... Hacking မွာ Language ကုိသင္ၾကားရတဲ့အခ်က္ပါပဲ..။

Language ေတြေလ့လာရာမွာ အရုိးရွင္းဆုံးျမင္သာေအာင္ ေလ့လာရမယ့္အပိုင္းေတြကုိ (၃) ပုိင္းခြဲလုိက္ပါမယ္။ ပထမဆုံးအပုိင္းက -

(1) Web Hacking

သည္ေန႔ေခတ္ႀကီးမွာ အေတာ္မ်ားမ်ားက Web ေပၚတည္ေဆာက္ထားၾကတယ္။ Banking, Online Shopping, Social Media ေတြကအစ က်ေနာ္တုိ႔ဘ၀မွာ Web နဲ႔လြတ္ကင္းတဲ့အရာေတြ တျဖည္းျဖည္းနည္းသထက္နည္းလာတယ္ဆုိရမယ္ ...။ သည္ေတာ့ Hacker တစ္ေယာက္ျဖစ္ဖို႔အတြက္ခင္ဗ်ားဟာ Web ပုိင္းဆုိင္ရာ Language ေတြကုိ မျဖစ္မေနေလ့လာထားဖုိ႔လုိပါလိမ့္မယ္။ ေပၚျပဴလာအျဖစ္ဆုံးနဲ႔ ေလ့လာရမယ့္ Language သုံးမ်ဳိးပဲရွိပါတယ္။ HTML, Java Script နဲ႔ PHP ပါ။

HTML

=
Hyper Text Markup Language ဆုိတဲ့အရွည္ေကာက္ေတာ့သိၾကပါလိမ့္မယ္။ သည္လမ္းေၾကာင္းေပၚစတက္ၿပီဆုိတာနဲ႔ မျဖစ္မေနေလ့လာသင့္တယ္။ Self Study လုပ္လုိ႔ရေလာက္ေအာင္လည္း လြယ္ကူရုိးရွင္းပါတယ္။ HTML ကုိနားလည္ထားျခင္းအားျဖင့္ Website ေတြ ဘယ္လိုအလုပ္လုပ္တယ္ ၊ Page ေတြကုိ ဘယ္လုိဖြဲ႕စည္းတည္ေဆာက္ထားတယ္ စသည္ျဖင့္ျမင္လာပါလိမ့္မယ္။ Response ေတြ Logic ေတြကအစေပါ့ ....။

Java Script

=
Java Script က Client-side web scripting လုိ႔ဆုိၾကတယ္ဗ် ...။ သူက အသုံးျပဳသူရဲ႕ Web browser ထဲမွာအလုပ္လုပ္တာ ...။ Server-side မဟုတ္ဘူး ၊ သူပါတဲ့အတြက္ Server နဲ႔ User အၾကားမွာ interface, response ေတြအဆင္ေျပေစတယ္။ ဆုိရရင္ client-side ျဖစ္တဲ့အတြက္ user ဖက္ကအားနည္းခ်က္ေတြ ယုိေပါက္ေတြကုိ Java script အသုံးျပဳၿပီးတုိက္ခုိက္လို႔ရႏုိင္တယ္။ ဒါေၾကာင့္ Java ဟာလည္း မျဖစ္မေနေပါ့။

PHP

=
သူကေတာ့ Server-side Language ပါ ...။ User ရဲ႕ Browser ထဲမွာအလုပ္မလုပ္ပဲ ဆာဗာနဲ႔ခ်ိတ္ဆက္အလုပ္လုပ္တယ္။ Database ပုိင္းဆုိင္ရာ Web app ပုိင္းဆုိင္ရာေတြကုိ manage လုပ္ပါတယ္။ PHP ကုိ ေျပာရရင္ Captain လုိ႔ေတာင္တင္စားႏုိင္တယ္။ သေဘာၤတစ္စီးလုံးအဆင္ေျပေျပသြားႏုိင္ဖုိ႔ဟာ Captain အေပၚမွာမူတည္သလုိ Website တစ္ခုလုံးကို အစီအစဥ္တက်ျဖစ္ေအာင္ PHP နဲ႔ထိန္းခ်ဳပ္ေမာင္းႏွင္တယ္။ ဒါေၾကာင့္ PHP ဟာလည္း Hacker ျဖစ္ခ်င္သူေတြအတြက္ .....။

SQL: ဒါကေတာ့ ခ်န္ထားခဲ့လို႔မရတဲ့အပိုင္းမလို႔ ...။ ယူဆာနိမ္းတုိ႔ ပက္စ္၀ါ့တုိ႔လုိအေရးႀကီးတဲ့ေဒတာမွန္သမွ်ဟာ SQL Database လုိ႔ေခၚတဲ့ေနရာမွာ သိမ္းေလ့ရွိပါတယ္။ တခ်ဳိ႕ဆုိက္ေတြမွာဆုိရင္ Online Shopping အတြက္ Credit Card ေတြ အရမ္းအေရးႀကီးတဲ့လုပ္ငန္းပုိင္းဆုိင္ရာလုပ္ေဆာင္ခ်က္ေတြကုိေတာင္ SQL database ထဲထည့္သိမ္းေလ့ရွိတယ္။ Black hat hackers ေတြထဲကအမ်ားစုဟာ က်န္တဲ့ေနရာထက္ SQL database ကိုအဓိကပစ္မွတ္ထားၿပီး အရင္ဆုံးတုိက္ခိုက္ေလ့ရွိၾကတယ္..။ သည္ထဲမွာသုိေလွာင္ထားတဲ့ အေရးႀကီးေဒတာေတြရၿပီဆုိမွေတာ့ ၿပီးၿပီေပါ့။ ဒါ့ေၾကာင့္ ... SQL ဟာလည္း မျဖစ္မေနေလ့လာသင့္တဲ့စာရင္းထဲသြင္းရေၾကာင္း။

(2) Exploit Writing

Web အပိုင္းၿပီးေတာ့ Hacking ရဲ႕ အျခားအေရးႀကီးအစိတ္ပုိင္းျဖစ္တဲ့ Exploit. အေပၚမွာေျပာခဲ့ဖူးသလိုပဲ ... ကြန္ပ်ဴတာတစ္လုံး ဆာဗာတစ္လုံးကုိ ေဖာက္၀င္ဖုိ႔ဆုိတာ ေရာ့အင့္ ဆုိၿပီး ခလုတ္ေလးတခ်က္ ႏွိပ္လိုက္ရုံနဲ႔ၿပီးသြားတာမဟုတ္ဘူး။ Hacker ေတြရန္ကကာကြယ္ဖုိ႔အတြက္ အစကတည္းက လုံၿခဳံေရးပရုိဂရမ္ေတြ app ေတြထည့္ေပးလုိက္ၿပီးသား။ ဟက္ကာအေနနဲ႔ Access ရဖုိ႔အတြက္ အဲသည္လုံၿခဳံေရးဆုိင္ရာအတားအဆီးေတြခ်ဳိးဖ်က္ပစ္လုိက္တာကုိ Exploit လုပ္တယ္ ... လို႔ဆုိၾကတာ...။ သည္လို Exploit ေတြလုပ္ႏုိင္ဖုိ႔အတြက္ အေရးႀကီးတဲ့ Language ႏွစ္ခုရွိတယ္ ...။ Python & Ruby.

Python

Hacker ပဲျဖစ္ျဖစ္ Security Researcher ပဲျဖစ္ျဖစ္ လိုက္ေမးက်ိရင္ Python ဟာအေရးႀကီးတဲ့ Language ျဖစ္ေၾကာင္းေျဖၾကလိမ့္မယ္။ ေျပာရရင္ Exploit လုပ္ဖို႔အတြက္ Tools အေတာ္မ်ားမ်ားကုိ Python အသုံးျပဳၿပီးေရးရတာမလို႔ပါပဲ...။ ဟုိး ထိပ္ဆုံးဟက္ကာႀကီးေတြ security researcher ႀကီးေတြကအစ တညီတညႊတ္တည္း Python ကုိေလ့လာဖို႔အႀကံျပဳၾကတယ္။ တကယ္ Python မွာကၽြမ္းက်င္သြားၿပီဆို Exploit ပိုင္းအတြက္ လွည့္ၾကည့္စရာမလိုေတာ့ဘူးဆုိပါေတာ့ ...။ လြယ္လည္းလြယ္ပါတယ္...ကုိယ္တုိင္ေလ့လာက်ိၾကပါ။

Ruby

ရွင္းလည္းရွင္းတယ္ ရွဳပ္လည္းရွဳပ္တယ္ဆုိရမယ္။ Object-oriented language အမ်ိဳးအစားပါ ...။ သူ႔ကိုလည္း exploit ေတြေရးတဲ့ေနရာမွာသုံးတာပါပဲ..။ ပိုအားသာတဲ့အခ်က္က - Hacker ေတြရဲ႕အသည္းေက်ာ္ျဖစ္တဲ့ Metasploit ဟာ Ruby နဲ႔ေရးထားတာျဖစ္ၿပီး ၊ meterpreter လို႔ေခၚတဲ့ Metasploit ရဲ႕ extension ေတြအျပင္ exploit ေတြကုိလည္း Ruby နဲ႔ေရးလို႔ရေနတာပါပဲ..။ ကုိယ့္ဖာသာ လုိခ်င္သလိုျပင္ဆင္ျဖည့္စြက္ ထပ္တုိးအသုံးျပဳႏုိင္မယ္ဆုိပါေတာ့။ Ruby ဟာ Python ေလာက္ေတာ့ နယ္ပယ္က်ယ္က်ယ္ျပန္႔ျပန္႔မွာ သုံးဖုိ႔အဆင္မေျပပါဘူး ၊ သုိ႔ေသာ္ ခင္ဗ်ားအေနနဲ႔ Exploit ေတြေရးဖို႔အတြက္ Ruby ကုိ ဆရာတစ္ဆူမဟုတ္ေတာင္ နားလည္တတ္ကၽြမ္းတဲ့အဆင့္ထိေလ့လာထားႏုိင္တာပုိေကာင္းပါလိမ့္မယ္။

3. Reverse Engineering အက်ဥ္းခ်ဳံးေျပာရရင္ - Reverse Engineering ဆုိတာ software တစ္ခု program တစ္ခုကေနထြက္လာတဲ့ Binary code ေတြကေန Original source code အထိ Trace ျပန္လိုက္တဲ့ပညာရပ္ဆုိပါေတာ့။ Reverse Engineering ကုိနားလည္ျခင္းအားျဖင့္ Application ေတြ ေဆာ့ဖ္၀ဲေတြရဲ႕ အလုပ္လုပ္ပုံေတြ အားနည္းခ်က္ Flaw ေတြကုိျမင္လာမယ္။ သည္လိုျမင္လာတဲ့အတြက္ Software Cracking, Hacking လုပ္ႏုိင္မယ္ စသည္ျဖင့္ေပါ့...။ RE အတြက္ အဓိကေလ့လာဖုိ႔လုိအပ္တဲ့ Language ေတြကေတာ့ C, C++ နဲ႔ Java ပါ ...။ ဒီအရာေတြလည္းတတ္ထားဦးမွ Software ဆုိင္ရာ Applicaton ပုိင္းဆုိင္ရာ Cracking, Hacking Process ေတြကုိလုပ္ႏုိင္ပါလိမ့္မယ္...။

=
=========================


 * 1) Darkweb U Myint Myat Aung (talk) 17:57, 18 July 2019 (UTC)