Hash ဆိုတာဘာလဲ နွင့္ဗဟုသုတမ်ား
- Posted by WYTU Therlay on May 26, 2012 at 8:14pm in Myanmar Hackers Group
- Back to Myanmar Hackers Group Discussions
ပထမဦးဆံုး Hash ဆိုတာ ဘာလဲေျပာရေအာင္…။
ကၽြန္ေတာ္တို႔ Forum တစ္ခုထဲကို ၀င္တဲ့အခါ Password ရိုက္သြင္းလိုက္ရင္ အဲ့ဒီ့
Password ဟာ Web Server ကသတ္မွတ္ထားတဲ့ Table တစ္ခုထဲကို ၀င္သြားျပီး အဲ့ဒီ့
Password ဟာ Table ထဲက
Alogrithum အလိုက္ အသြင္ေျပာင္းလဲသြားပါတယ္ ဒီလိုေပါ့ f5d1278e8109edd94e1e4197e04873b9 ဗ်ာ သာမန္ ကၽြန္ေတာ္တို႔ရိုက္လုိက္တဲ့ ရိုးရိုး Password ကို Plain Text လို႔ ေခၚျပီး Hash Table က ထြက္လာတဲ့ ဟာကိုေတာ့ Hash လို႔ေခၚပါတယ္
ဥပမာ Plain Text ဟာ tester ျဖစ္ရင္ Hash ကေတာ့ လူဖတ္မရတဲ့ f5d1278e8109edd94e1e4197e04873b9 ေပါ့ Hash ကို ဘယ္ေသာအခါမွာ Plain Text အျဖစ္ေျပာင္းလဲလို႔မရေတာ့ပါဘူး Hash ကို Decrypt လုပ္ႏုိင္တယ္ဆိုတာ တစ္ကယ္ေတာ့လံုး၀မဟုတ္ပါဘူး
Plain Text အျဖစ္ေျပာင္းတာဟာလည္း Decrypt လုပ္တာမဟုတ္ဘဲ Brute Force လုပ္တာပါ ေနာက္မွ အဲ့ဒီ့ အပိုင္းကို ေသခ်ာရွင္းျပပါ့မယ္.။
ဒါဆုိ ဘယ္လို Access Gratiented ျဖစ္သလဲဆိုေတာ့ ကၽြန္ေတာ္တို႔ Plain Text အျဖစ္ရိုက္သြင္းလိုက္တဲ့ Pass ဟာ Hash Table ကုိ ျဖတ္ျပီး Hash ျဖစ္သြားပါတယ္ အဲ့ဒီ့ Hash နဲ႔ နဂို Password ကုိသတ္မွတ္တုန္းက Data Base ထဲမွာ သိမ္းထားတဲ့ Hash တိုက္စစ္လို႔
တူတဲ့ အခါမွာ Access Gratiented ျဖစ္ျပီး မတူညီတဲ့အခါမွာေတာ့ Access Denied ေပါ့ဗ်ာ
(တကယ္လို႔ ခင္ဗ်ားသာ Web Server ထဲက Password ေတြကို Hijack လုပ္ယူႏိုင္တယ္ဆိုရင္ Plain Text နဲ႔ ထြက္ေပၚလာဖို႔ ခဲယဥ္းပါတယ္ Web Server အမ်ားစုက Hash Table မ်ားနဲ႔ Crypt ထားတဲ့အတြက္ Hash ေတြပဲ ထြက္က်လာမွာျဖစ္ပါတယ္ ဒီလို Hash ေတြကို
ျဖည္ဖို႔ Hash Type ေတြကို သိိဖို႔လိုပါလိမ့္မယ္ )
ကဲ ဒါဆို Hash ဆိုတာ ဘာလဲ သိေလာက္ပါျပီ Type of Hash ဆိုတာေလးစရေအာင္
ပထမဆံုး အသံုးအမ်ားဆံုး Hash ျဖစ္တဲ့ MD5 Hash အေၾကာင္းစပါ့မယ္
MD5 Hash
MD5 Hash မွာ အလံုးေပါင္း သံုးဆယ့္ႏွစ္လံုးပါ၀င္ပါတယ္ ( 128 Bit Encryption ေပါ့ဗ်ာ )
a-z နဲ႔ 0-9 ပါ၀င္ပါတယ္
ဥပမာ – f5d1278e8109edd94e1e4197e04873b9
တကယ္လို႔ အထက္က အခ်က္ တစ္ခုခုနဲ႔မတူရင္ MD 5 Hash မဟုတ္ပါဘူး
SHA1
SHA1 Hash ဟာလည္း အသံုးမ်ားတဲ့ Hash Type ေတြထဲမွာပါ၀င္ျပီး ပိုမို လံုျခံဳမႈရွိပါတယ္
SHA1 Hash မွာ အလံုးေပါင္းေလးဆယ္ပါ၀င္ပါတယ္ ( 160 Bit ေပါ့ )
အရင္အတုိင္းပဲ a-z , 0-9 ပါ၀င္ပါတယ္
ဥပမာ – ab4d8d2a5f480a137067da17100271cd176607a1
MySQL < 4.1
ဒီ Hash Type ကေတာ့ MySQL Version 4.1 ေအာက္က Server ေတြမွာ အသံုးမ်ားျပီးေတာ့ ဒီ Type ကို ျမင္တာနဲ႔ Defacer ေပါက္စေတြဟာ ပ်ာယာ ခပ္တတ္ၾကပါတယ္
သူ ႔မွာ Character 16 လံုးပဲရွိပါတယ္ ( 64 bits ရွိပါတယ္ )
ထံုးစံအတုိင္း a – z , 0 – 9 ရွိပါတယ္
ဥပမာ – 606727496645bcba
MySQL5
အရင္တုန္းက ကၽြန္ေတာ့္ကို ဒုကၡ အေပးဆံုး Type တစ္ခုပါ အဲ့ဒီ့ တုန္းက Hash Type ေတြကိုလည္းေသခ်ာမသိ Skill ကလည္းခ်ာေသး ( ခုလည္းခ်ာတာပါပဲ ) ေတာ့ ဟိုလူကယ္ပါ ဒီလူကူပါေပါ့ဗ်ာ ဟီး သူကေတာ့ ေနာက္ထြက္တဲ့ MySQL Version ေတြမွာ အသံုးျပဳပါတယ္
သူက ပိုဆိုးတယ္ဗ် Character ၄၁ လံုးရွိတယ္
အားလံုးက Capital Latter ေတြခ်ည္း
ျပီးေတာ့ ခရပြင့္ Star ( * ) နဲ႔ စသဗ်ာ
ဥမာ – *C8EB599B8E8EE7BE9F1A5691B7BC9ECCB8DE1C75
MD 5 ( WordPress )
ကၽြန္ေတာ္ အေၾကာက္ဆံုး Hash ပါ ဘယ္ေလာက္ထိလဲဆို SQL Injection လုပ္လို႔ Pass ကို ဒီ Hash ထြက္ရင္ လွည့္ကိုမၾကည့္ေတာ့ဘူး အဲ့ဒီ့ ဆိုဒ္ကို လက္ေလွ်ာ့ပစ္တယ္ အဲ့ဒီ့အထိဆိုးပါတယ္ ဟီး
သူ ႔မွာ $P$ နဲ႔စပါတယ္
0-9 A-Z a-z အစံုကိုပါပါတယ္
သံုးဆယ့္ေလးလံုးရွိပါတယ္
ၾကည့္လိုက္ပါ $P$9QGUsR07ob2qNMbmSCRh3Moi6ehJZR1
MD 5 (phpBB3 )
phpBB3 နဲ႔ေဆာက္ထားတဲ့ Forum ေတြမွာအသံုးျပဳပါတယ္
$H$ နဲ႔စပါတယ္
MD 5 WordPress လိုပါပဲ အစံုပါပါတယ္
Character သံုးဆယ့္ေလးလံုးရွိပါတယ္
ဥပမာ – $H$9xAbu5SruQM5WvBldAnS46kQMEw2EQ0
ကဲ ဒါဆို Hash Type အစံုကို သိေလာက္ပါျပီ
Source by Ghost Area
Alogrithum အလိုက္ အသြင္ေျပာင္းလဲသြားပါတယ္ ဒီလိုေပါ့ f5d1278e8109edd94e1e4197e04873b9 ဗ်ာ သာမန္ ကၽြန္ေတာ္တို႔ရိုက္လုိက္တဲ့ ရိုးရိုး Password ကို Plain Text လို႔ ေခၚျပီး Hash Table က ထြက္လာတဲ့ ဟာကိုေတာ့ Hash လို႔ေခၚပါတယ္
ဥပမာ Plain Text ဟာ tester ျဖစ္ရင္ Hash ကေတာ့ လူဖတ္မရတဲ့ f5d1278e8109edd94e1e4197e04873b9 ေပါ့ Hash ကို ဘယ္ေသာအခါမွာ Plain Text အျဖစ္ေျပာင္းလဲလို႔မရေတာ့ပါဘူး Hash ကို Decrypt လုပ္ႏုိင္တယ္ဆိုတာ တစ္ကယ္ေတာ့လံုး၀မဟုတ္ပါဘူး
Plain Text အျဖစ္ေျပာင္းတာဟာလည္း Decrypt လုပ္တာမဟုတ္ဘဲ Brute Force လုပ္တာပါ ေနာက္မွ အဲ့ဒီ့ အပိုင္းကို ေသခ်ာရွင္းျပပါ့မယ္.။
ဒါဆုိ ဘယ္လို Access Gratiented ျဖစ္သလဲဆိုေတာ့ ကၽြန္ေတာ္တို႔ Plain Text အျဖစ္ရိုက္သြင္းလိုက္တဲ့ Pass ဟာ Hash Table ကုိ ျဖတ္ျပီး Hash ျဖစ္သြားပါတယ္ အဲ့ဒီ့ Hash နဲ႔ နဂို Password ကုိသတ္မွတ္တုန္းက Data Base ထဲမွာ သိမ္းထားတဲ့ Hash တိုက္စစ္လို႔
တူတဲ့ အခါမွာ Access Gratiented ျဖစ္ျပီး မတူညီတဲ့အခါမွာေတာ့ Access Denied ေပါ့ဗ်ာ
(တကယ္လို႔ ခင္ဗ်ားသာ Web Server ထဲက Password ေတြကို Hijack လုပ္ယူႏိုင္တယ္ဆိုရင္ Plain Text နဲ႔ ထြက္ေပၚလာဖို႔ ခဲယဥ္းပါတယ္ Web Server အမ်ားစုက Hash Table မ်ားနဲ႔ Crypt ထားတဲ့အတြက္ Hash ေတြပဲ ထြက္က်လာမွာျဖစ္ပါတယ္ ဒီလို Hash ေတြကို
ျဖည္ဖို႔ Hash Type ေတြကို သိိဖို႔လိုပါလိမ့္မယ္ )
ကဲ ဒါဆို Hash ဆိုတာ ဘာလဲ သိေလာက္ပါျပီ Type of Hash ဆိုတာေလးစရေအာင္
ပထမဆံုး အသံုးအမ်ားဆံုး Hash ျဖစ္တဲ့ MD5 Hash အေၾကာင္းစပါ့မယ္
MD5 Hash
MD5 Hash မွာ အလံုးေပါင္း သံုးဆယ့္ႏွစ္လံုးပါ၀င္ပါတယ္ ( 128 Bit Encryption ေပါ့ဗ်ာ )
a-z နဲ႔ 0-9 ပါ၀င္ပါတယ္
ဥပမာ – f5d1278e8109edd94e1e4197e04873b9
တကယ္လို႔ အထက္က အခ်က္ တစ္ခုခုနဲ႔မတူရင္ MD 5 Hash မဟုတ္ပါဘူး
SHA1
SHA1 Hash ဟာလည္း အသံုးမ်ားတဲ့ Hash Type ေတြထဲမွာပါ၀င္ျပီး ပိုမို လံုျခံဳမႈရွိပါတယ္
SHA1 Hash မွာ အလံုးေပါင္းေလးဆယ္ပါ၀င္ပါတယ္ ( 160 Bit ေပါ့ )
အရင္အတုိင္းပဲ a-z , 0-9 ပါ၀င္ပါတယ္
ဥပမာ – ab4d8d2a5f480a137067da17100271cd176607a1
MySQL < 4.1
ဒီ Hash Type ကေတာ့ MySQL Version 4.1 ေအာက္က Server ေတြမွာ အသံုးမ်ားျပီးေတာ့ ဒီ Type ကို ျမင္တာနဲ႔ Defacer ေပါက္စေတြဟာ ပ်ာယာ ခပ္တတ္ၾကပါတယ္
သူ ႔မွာ Character 16 လံုးပဲရွိပါတယ္ ( 64 bits ရွိပါတယ္ )
ထံုးစံအတုိင္း a – z , 0 – 9 ရွိပါတယ္
ဥပမာ – 606727496645bcba
MySQL5
အရင္တုန္းက ကၽြန္ေတာ့္ကို ဒုကၡ အေပးဆံုး Type တစ္ခုပါ အဲ့ဒီ့ တုန္းက Hash Type ေတြကိုလည္းေသခ်ာမသိ Skill ကလည္းခ်ာေသး ( ခုလည္းခ်ာတာပါပဲ ) ေတာ့ ဟိုလူကယ္ပါ ဒီလူကူပါေပါ့ဗ်ာ ဟီး သူကေတာ့ ေနာက္ထြက္တဲ့ MySQL Version ေတြမွာ အသံုးျပဳပါတယ္
သူက ပိုဆိုးတယ္ဗ် Character ၄၁ လံုးရွိတယ္
အားလံုးက Capital Latter ေတြခ်ည္း
ျပီးေတာ့ ခရပြင့္ Star ( * ) နဲ႔ စသဗ်ာ
ဥမာ – *C8EB599B8E8EE7BE9F1A5691B7BC9ECCB8DE1C75
MD 5 ( WordPress )
ကၽြန္ေတာ္ အေၾကာက္ဆံုး Hash ပါ ဘယ္ေလာက္ထိလဲဆို SQL Injection လုပ္လို႔ Pass ကို ဒီ Hash ထြက္ရင္ လွည့္ကိုမၾကည့္ေတာ့ဘူး အဲ့ဒီ့ ဆိုဒ္ကို လက္ေလွ်ာ့ပစ္တယ္ အဲ့ဒီ့အထိဆိုးပါတယ္ ဟီး
သူ ႔မွာ $P$ နဲ႔စပါတယ္
0-9 A-Z a-z အစံုကိုပါပါတယ္
သံုးဆယ့္ေလးလံုးရွိပါတယ္
ၾကည့္လိုက္ပါ $P$9QGUsR07ob2qNMbmSCRh3Moi6ehJZR1
MD 5 (phpBB3 )
phpBB3 နဲ႔ေဆာက္ထားတဲ့ Forum ေတြမွာအသံုးျပဳပါတယ္
$H$ နဲ႔စပါတယ္
MD 5 WordPress လိုပါပဲ အစံုပါပါတယ္
Character သံုးဆယ့္ေလးလံုးရွိပါတယ္
ဥပမာ – $H$9xAbu5SruQM5WvBldAnS46kQMEw2EQ0
ကဲ ဒါဆို Hash Type အစံုကို သိေလာက္ပါျပီ
Source by Ghost Area