John the Ripper 1.9.0-jumbo-1 FPGA සහාය ඇතිව

නිදහස් කළා පැරණිතම සහය දක්වන මුරපද අනුමාන වැඩසටහනේ නව අනුවාදය John the Ripper 1.9.0-jumbo-1. (ව්‍යාපෘතිය 1996 සිට සංවර්ධනය වෙමින් පවතී.) මත ව්යාපෘති පිටුව බාගත කිරීම සඳහා ප්‍රභවයන් මෙන්ම වින්ඩෝස් සඳහා සූදානම් කළ එකලස් කිරීම් තිබේ.

1.8.0-ජම්බෝ-1 අනුවාදය නිකුත් කර වසර 4.5 ක් ගතවී ඇති අතර, එම කාලය තුළ සංවර්ධකයින් 6000 කට වඩා වැඩි ගණනකින් වෙනස්කම් 80 කට වඩා (ගිට් කැපවීම්) සිදු කරන ලදී. මෙම කාල පරිච්ෙඡ්දය තුළ, සංවර්ධකයින් විසින් භාවිතා කිරීම නිර්දේශ කරනු ලැබේ GitHub වෙතින් වත්මන් සංස්කරණය, ස්තුති කළ වෙනස්කම් නොතකා එහි තත්ත්වය ස්ථාවරව පවත්වා ගෙන ගියේය අඛණ්ඩ ඒකාබද්ධතාවය, බොහෝ වේදිකාවල එක් එක් වෙනස් කිරීම (අදින්න ඉල්ලීම) මූලික සත්‍යාපනය ඇතුළත් වේ. නව අනුවාදයේ විශේෂ ලක්ෂණය වන්නේ CPU, GPU සහ Xeon Phi වලට අමතරව FPGA (FPGA) සඳහා සහය දැක්වීමයි.


පුවරු සඳහා ZTEX 1.15y, FPGA චිප් 4 ක් ඇතුළුව සහ මුලින් ප්‍රධාන වශයෙන් Bitcoin පතල් කැණීම සඳහා භාවිතා කරන ලද, මුරපද හැෂ් වර්ග 7 ක් දැන් ක්‍රියාත්මක කර ඇත: bcrypt, Classic descrypt (bigcrypt ඇතුළුව), sha512crypt, sha256crypt, md5crypt (Apache apr1 සහ AIX ඇතුළුව), , විශේෂයෙන් WordPress හි). ඒවායින් සමහරක් පළමු වරට FPGA මත ක්‍රියාත්මක වේ. bcrypt සඳහා, වොට් 5 ක පමණ බලශක්ති පරිභෝජනයක් සහිත 7^119 පුනරාවර්තන (“$2b$5”) සමඟ ~2k c/s හි සාක්ෂාත් කර ගත් කාර්ය සාධනය, පුවරුවකට, දෘඪාංග මිලකට සහ වොට් එකකට නවතම GPU සඳහා ප්‍රතිඵල සැලකිය යුතු ලෙස ඉක්මවයි. සහාය ද ලබා දී ඇත පොකුරු තනි Raspberry Pi 16 එකකින් පාලනය වන පුවරු 64ක් (FPGAs 2ක්) දක්වා පරීක්‍ෂා කර ඇති මෙම වර්ගයේ පුවරු වල සාමාන්‍ය John the Ripper ක්‍රියාකාරීත්වයට සහය දක්වයි, මුරපද අනුමාන කිරීමේ ක්‍රම සහ හෑෂ් විශාල සංඛ්‍යාවක් එකවර බාගත කිරීම ඇතුළුව. කාර්යය වේගවත් කිරීම සඳහා, අපි වෙස්මුහුණක් භාවිතා කිරීම ("--mask" මාදිලිය, අනෙකුත් මාතයන් සමඟ ඒකාබද්ධව) සහ FPGA පැත්තේ පටවා ඇති ඒවා සමඟ ගණනය කළ හෑෂ් සංසන්දනය කිරීම ක්‍රියාත්මක කළෙමු. ක්‍රියාත්මක කිරීමේ දෘෂ්ටිකෝණයකින්, බොහෝ සැලසුම් (උදා. sha512crypt සහ Drupal7) ගුප්තකේතන මධ්‍ය සමඟ අන්තර්ක්‍රියා කරන බහු-නූල් ප්‍රොසෙසර් කෝර් (මෘදු CPU කෝර්) වලින් සමන්විත බ්ලොක් භාවිතා වේ. මෙම ක්‍රියාකාරීත්වයේ වර්ධනය අනෙකුත් ජම්බෝ සංවර්ධකයින් සමඟ සම්බන්ධීකරණයෙන් ඩෙනිස් බුරිකින් විසින් මෙහෙයවන ලදී.

අනෙකුත් ප්රධාන වෙනස්කම්:

  • සම්භාව්‍ය මුරපද හැෂ් (උදාහරණයක් ලෙස, QNX හි නව අනුවාද වලින්), මෙන්ම cryptocurrency wallets, encrypted archives සහ encrypted ගොනු පද්ධති (උදාහරණයක් ලෙස, Bitlocker සහ FreeBSD geli), මෙන්ම කලින් සහාය දක්වන ලද නව ආකාරයේ ආකෘති සඳහා සහය (උදාහරණයක් ලෙස, OpenBSD softraid සඳහා bcrypt-pbkdf සඳහා සහය එක් කරන ලදී) සහ තවත් බොහෝ දේ. සමස්තයක් වශයෙන්, CPU හි ආකෘති 80 ක් සහ OpenCL මත 47 ක් එකතු කර ඇත (සහ පැරණි ඒවා කුඩා ප්‍රමාණයක් නව සහ යල් පැන ගිය ඒවාට ඒකාබද්ධ කර ඉවත් කර ඇත). CPU හි මුළු ආකෘති සංඛ්‍යාව දැන් 407 (හෝ වින්‍යාස ගොනු වලින් වින්‍යාස කර ඇති "ගතික" ආකෘති ඇතුළුව 262) සහ OpenCL හි 88 කි.
  • NVIDIA GPU වල පූර්ණ භාවිතයට කිසිඳු ආකාරයකින් බාධාවක් නොවන OpenCL සඳහා CUDA භාෂාවට සහය දැක්වීම ප්‍රතික්ෂේප කිරීම (සහ මීට පෙර ක්‍රියාත්මක කිරීම් දෙකක් වෙනුවට GPU සඳහා එක් එක් ආකෘතියක් එක් ක්‍රියාත්මක කිරීමකට සංවර්ධනය සහ ප්‍රශස්තිකරණය කෙරෙහි අවධානය යොමු කිරීමට පවා උපකාරී වේ).
  • නව SIMD උපදෙස් කට්ටල සඳහා සහය - AVX2, AVX-512 (දෙවන පරම්පරාවේ Xeon Phi ඇතුළුව) සහ MIC (පළමු පරම්පරාව සඳහා) - මෙන්ම භාවිතය ඇතුළුව බොහෝ ආකෘති ක්‍රියාත්මක කිරීමේදී SIMD වඩාත් විශ්වීය සහ සම්පූර්ණ භාවිතය. x86(-64) මත AVX සහ XOP දක්වා පෙර සහාය දක්වන ලද උපදෙස් සහ
    පිළිවෙලින් ARM, Aarch64 සහ POWER මත NEON, ASIMD සහ AltiVec. (අර්ධ වශයෙන් GSoC 2015 හි කොටසක් ලෙස.)
  • CPU සහ OpenCL සඳහා බොහෝ ප්‍රශස්තිකරණයන්, දෙකම එකවර හෑෂ් විශාල සංඛ්‍යාවක් සමඟ වඩාත් කාර්යක්ෂමව ක්‍රියා කිරීමට (උදාහරණයක් ලෙස, GPU මත SHA-320 හැෂ් මිලියන 1 ක් පූරණය කිරීම පරීක්‍ෂා කරන ලදී), සහ හැෂ් ගණනය කිරීමේ වේගය වැඩි කිරීම. මෙම ප්‍රශස්තිකරණයන්ගෙන් සමහරක් විශ්වීය වේ, සමහරක් ආකෘතිවල විවිධ උප කුලක ආවරණය කරයි, සහ බොහෝ ඒවා තනි ආකෘති සඳහා විශේෂිත වේ.
  • (ස්වයං-) CPU (“—tune=auto —verbosity=5”) මත පරීක්ෂා කරන ලද මුරපදවල ප්‍රශස්ත බෆරින් වින්‍යාස කිරීම සහ OpenCL හි ප්‍රශස්ත රැකියා ප්‍රමාණ (පෙරනිමියෙන් සක්‍රීය කර ඇත), NVIDIA GTX හි මන්දගාමී වේගය සැලකිල්ලට ගැනීම ඇතුළුව ශ්‍රේණියේ GPUs සම්පූර්ණ මෙහෙයුම් සංඛ්‍යාත 10xx සහ ඊට වඩා අලුත්. එවැනි ස්වයංක්‍රීය සුසර කිරීම සඳහා සත්‍ය වශයෙන්ම පටවන ලද හෑෂ් භාවිතා කිරීම සහ මුරපදවල සත්‍ය දිග පරීක්ෂා කරනු ලැබේ (එය කල්තියා දන්නා විට).
  • විධාන රේඛාවේ සෘජුවම නිශ්චිතව දක්වා ඇති "ගතික ප්‍රකාශන" සඳහා සම්පාදකයක් එක් කිරීම සහ නව දෙමුහුන් හැෂ් වර්ග ක්‍රියාත්මක කිරීම, උදාහරණයක් ලෙස "-format=dynamic='sha1(md5($p).$s)'", SIMD භාවිතයෙන් CPU මත ගණනය කෙරේ. . එවැනි ප්‍රකාශනවල සංරචක ලෙස, වේගවත් හැෂ් දුසිම් ගණනකට සහය දක්වයි (MD5 වැනි සාමාන්‍ය ඒවා සිට වර්ල්පූල් වැනි මධ්‍යස්ථ විචිත්‍රවත් ඒවා දක්වා), උප තත්‍ව සංකලනය, කේතනය සහ විකේතනය, අක්ෂර කේත පරිවර්තනය, මුරපදය, ලුණු, පරිශීලක නාමය සහ තන්තු නියතයන් වෙත යොමු කිරීම්.
  • Hashcat වෙතින් අනවශ්‍ය වෙනස්කම් ඉවත් කිරීම, පෙර hashcat-විශේෂිත රීති සඳහා සහාය (wordlist රීති විධාන), 1 සිට OpenCL උපාංග අංකනය වෙත සංක්‍රමණය වීම, කාර්ය සාධන පරීක්ෂණ වලදී එකම මුරපද දිග (සාමාන්‍යයෙන් දිග 7) පෙරනිමියෙන් භාවිතා කිරීම.
  • හැෂ්කැට් වෙතින් PRINCE ඇතුළුව සත්‍යාපනය කළ හැකි මුරපද උත්පාදනය කිරීම සඳහා නව මාතයන් (මුළු දිග වැඩිවන අනුපිළිවෙලින් වචන කිහිපයක් එකතු කිරීමෙන් “වාක්‍ය ඛණ්ඩ” සාදයි), උප කුලක (මෙම අක්ෂර පැමිණියද, විවිධ අක්ෂර ප්‍රමාණවත් නොවන සංඛ්‍යාවක් සහිත මුරපද ගෙන එයි. හැකි ඒවා විශාල කට්ටලයකින්) සහ දෙමුහුන් බාහිර (වෙනත් මාදිලියකින් ලැබෙන එක් එක් මූලික "වචනය" මත පදනම්ව බොහෝ සත්‍යාපනය කළ හැකි මුරපද උත්පාදනය කිරීමට, C වැනි භාෂාවක වින්‍යාස ගොනු වල විස්තර කර ඇති බාහිර මාතයන්ට ඉඩ දෙයි). එසේම, නව පූර්ව නිශ්චිත බාහිර මාදිලි කිහිපයක්.
  • මාතයන් කිහිපයක් එකවර භාවිතා කිරීම සඳහා අමතර හැකියාවන් (එකක් උඩ එකක් - ගොඩගැසීම), මෙන්ම රීති කට්ටල භාවිතා කිරීම සඳහා (වචන ලැයිස්තු රීති ගොඩගැසීම).
  • වෙස් මුහුණු මාදිලිවල වැඩිදියුණු කිරීම් (නිශ්චිත දිග පරාසයක වෙස්මුහුණ ක්‍රමයෙන් දිගු කිරීම, OpenCL උපාංගයේ හෝ FPGA පුවරුවේ පැත්තේ වෙස් මුහුණක් යෙදීම) සහ තනි ක්‍රැක් (සමාන්තරව හෑෂ් විශාල සංඛ්‍යාවක් ගණනය කරන උපාංගවල සාධාරණ හැසිරීම , මීට පෙර මෙම ප්‍රකාරයේදී ප්‍රමාණවත් සත්‍යාපනය කළ හැකි මුරපද නොතිබූ අතර මතක පරිභෝජනය සඳහා සීමාවන් ද ඇත).
  • විවිධ උප පද්ධතිවල යුනිකෝඩ් සහ අනෙකුත් කේතීකරණ සඳහා සහය දැක්වීම සඳහා බොහෝ වැඩිදියුණු කිරීම්.
  • *2john වැඩසටහන් සඳහා බොහෝ වැඩි දියුණු කිරීම් (විවිධ හැඩතලවල ගොනු පරිවර්තනය කරන
    ජෝන් සමඟ භාවිතා කරන්න), විශේෂයෙන් wpapcap2john (WiFi ගමනාගමනය හසුරුවයි).
  • බොහෝ නව විධාන රේඛා විකල්ප ඇත, john.conf හි සැකසුම්, ස්ක්‍රිප්ට් විකල්ප වින්‍යාස කිරීම සහ අනුරූප නව විශේෂාංග, ඒ සියල්ල මෙහි සඳහන් කර නැත.
  • AddressSanitizer (පෙර) සහ UndefinedBehaviorSanitizer (එකතු කරන ලද) සමඟින් දෝශ නිරාකරණ සඳහා ගොඩනඟන ලද සහායට ස්තූතිවන්ත වෙමින් කේතයේ ගුණාත්මකභාවය වැඩිදියුණු කිරීම, අඛණ්ඩ ඒකාබද්ධ කිරීම (GSoC 2015 හි කොටසක් ලෙස) භාවිතා කරමින් (GSoC XNUMX හි කොටසක් ලෙස), මෙහෙයුම් පද්ධති දුසිම් ගනනක් සඳහා ගොඩනගා ඇත. සංයෝජන සහ සියලු ආකෘති සඳහා නිවැරදි සහාය සඳහා ඒවා පරීක්ෂා කිරීම).

මූලාශ්රය: linux.org.ru

අදහස් එක් කරන්න