کرکینگ حرفه ای هش با Hashcat | قسمت اول
قسمت اول: هش چیست و معرفی Hashcat
hashcat به عنوان پیشرفتهترین و سریع ترین کرکر هش در دنیا شناخته شده است! این ابزار مجانی و اوپن سورس است و روی ویندوز ، لینوکس و OSX اجرا میشود. هشکت از قدرت CPU و کارت گرافیک(GPU) و دیگر پردازنده ها(مثل fpga و…) بهره میگیرد تا هش ها را با بهترین سرعت کرک کند.
هشکت میتواند از پردازنده ها با هم استفاده کند و حتی قدرت انتخاب به کاربر میدهد که از کدام پردازنده استفاده شود و از کدام پردازنده ها استفاده نشود! مثلاً اگر سیستمی داشته باشیم که دو عدد کارت گرافیک و یک CPU داشته باشد ، هشکت میتواند از تمامی این موارد بدون هیچ مشکلی استفاده کند! (در سیستمهایی که چندین کارت گرافیک دارند حتی نیازی هم به رابط SLI و یا Crossfire ندارد!)
hashcat از کارت گرافیک های برند Nvidia , AMD و حتی کارت گرافیکِ داخلیِ برخی CPU های اینتل را هم پشتیبانی میکند. ضمنا یک سیستم کنترل حرارت نیز دارد تا پردازنده ها بیش از حد داغ نشوند.
یکی از قابلیت های خوب این ابزار این هستش که اگه یه وقت در حین کرک کردن برق رفت یا مشکلی برای سیستم پیش آمد که هشکت از کار بیوفتد ، قابلیت Restore به کمک شما می آید! با استفاده از این قابلیت ، تنها با یک دستور میتوانید عملیات کرک را از همانجا که متوقف شد ، دوباره بازیابی کنید و به کرک ادامه دهید!
شما با استفاده از hashcat میتوانید با روشهای زیر هش هارا کرک کنید:
- Brute Force (Mask Attack)
- Password List Attack
- Hybrid Attack
- Rule-Based Attack
- Combination Attack
- و غیره…
شاید تابه حال نام برخی از این روشها را نشنیده باشید ، اما در قسمت های بعدی این آموزش ، همه ی اینها شرح داده خواهد شد.
هشکت بیش از ۱۶۰ نوع هش های مختلف و معروف را پشتیبانی می کند ، حتی میتواند هندشیک های شبکه های وای فای (WPA/WPA2) را نیز کرک کند و پسورد آن ها را بیابد. هشکت میتواند هش های Salt شده را هم بدون هیچ مشکلی کرک کند! (این ویژگی بسیار بسیار مهم است!)
نکات مهم
- کارت های گرافیک بسیار بسیار سریعتر از CPU ها هستند ، زیرا از پردازش موازی استفاده می کنند ، به همین دلیل هشکت از کارت های گرافیک هم برای کرک هش ها بهره می گیرد.
- این ابزار رابط گرافیکی ندارد ! و فقط توسط Terminal و یا CMD قابل اجرا است.
- حتما دیده ااید که برخی سایت ها به صورت آنلاین میتوانند برخی هش هارا به سرعت کرک کنند ، اما محدود هستند و فقط انواع کمی از هش هارا می توانند کرک کنند ، پس تنها راه چاره استفاده از هشکت است!
سایت رسمی و سورس کد Hashcat:
برای دیدن سورس کد هشکت به صفحه گیت هاب این ابزار بروید:
برای دانلود هشکت به سایت رسمی آن رفته و سپس در ردیف hashcat binaries روی گزینه Download کلیک کنید.
قبل از کار با hashcat بدانیم که هش(Hash) چیست و چه کاربردی دارد؟
یکی از کاربردهای مهم هش ها ، مٌبهَم سازی یا رمزنگاری کردن پسوردها یا متن ها(رشته ها) است. (که در این آموزش ما با همین کاربردش سروکار داریم). هش ها درواقع کدهایی هستند که توسط الگوریتم های خاص و بسیار پیچیده ریاضی به وجود می آیند. آنها انواع مختلفی دارند ، مثلاً MD4 , MD5 , SHA1 , phpass , NTLM و…
یکی از معروف ترین الگوریتم هش ، MD5 است. به عنوان مثال ، اگر توسط یک نرمافزار که هش تولید میکند ، رشته ی test123 را به هش با الگوریتم MD5 تبدیل کنیم ، کد زیر تولید میشود:
cc03e747a6afbbcbf8be7668acfebee5
ولی اگر رشته ی test1234 را با MD5 هش کنیم به این شکل در می آید:
16d7a4fca7442dda3ad93c9a726597e4
همانطور که میبینید ، این دو هش زیاد شبیه به هم نیستند و خیلی تفاوت دارند(البته در بعضی موارد کمی شباهت هم دارند مثل طول آن ها که در ادامه گفته میشود)، حال به رشتهها دقت کنید (test123 و test1234) ، تنها فرقشون این هست که در رشته ی دوم یک 4 اضافه شده! پس کوچکترین تغییر در رشته(string) ، هشِ آن را کاملاً تغییر میدهد!
همه ی هش های MD5 همیشه 32 کارکتر دارند که هر کارکتر میتواند 1 تا 9 یا A تا F باشند.(درواقع به صورت Hexadecimal). این مورد ممکن است درباره ی بقیه الگوریتم ها متفاوت باشد (مثل SHA1 و phpass). و ممکن است برخی الگوریتم ها بسیار مشابه باشند! (مثل MD5 و MD4 و حتی هش های NTLM).
نکته مهم: هش ها منحصر به فرد یا unique هستند. یعنی هر رشته هش منحصر به فرد خودش را دارد. اگر مثلا 12345 رو هروقت با الگوریتمMD5 هش کنیم همیشه کد زیر تولید میشود!
827ccb0eea8a706c4c34a16891f84e7
نکته ی بالا نه تنها درمورد هش هایی که در بالا نشان داده شد صحیح است ، بلکه درمورد تمامی هش ها با هر نوع و الگوریتمی صحیح میباشد!
نکته: معمولاً هیچوقت دوتا رشته ی خاص و متفاوت به یک هش ثابت تبدیل نمیشوند، اما چون برخی الگوریتم ها مثل همین md5 کمی محدود هستند ، ممکن است قانونی که در بالا گفته شد شکسته شود! (البته این احتمال بسیار بسیار پایین هستش) اگر در این مورد کنجکاو هستید ، میتونید Collision attack را در اینترنت جستوجو کنید.
نکته ی بسیار مهم: یک هش را هیچوقت نمیتوان مستقیماً رمزگشایی کرد و به رشته یا پسورد برگرداند! (مگر اینکه آن را کرک کنیم.)
خب شاید سؤال برایتان پیش بیاد که هش کردن(یا بهتر بگیم،مبهم کردن!) پسوردها و متن ها به چه درد می خورد؟ و چرا این کار رو می کنند؟
این سؤال رو با یک مثال جواب میدم: فرض کنید یک برنامه داریم که میتونیم روی آن پسورد بزاریم و در مواقع لازم قفلش کنیم و بعداً با پسوردمون بازش کنیم. خوب ، وقتی که ما پسورد را تنظیم میکنیم ، این پسورد به صورت هش نشده(خام) در دیتابیس و یا فایل های دیگرِ برنامه ذخیره میشود…
اما اگر کسی این پسورد را از دیتابیس دربیارد ، امنیت به خطر می افتد! چون این پسورد خام است و به راحتی میتوان از آن استفاده کرد! پس برنامه باید از هش استفاده کنه تا موقع تنظیم کردن پسورد ، آن پسورد تبدیل به هش شه و سپس در دیتابیس ذخیره بشه! در این صورت اگر کسی دیتابیس رو باز کند نمیتواند به سادگی به پسورد دسترسی پیدا کند چون هش شده!
خب حالا وقتی که نرم افزار از کاربر برای باز شدن قفل ، تقاضای پسورد میکند ، پس از وارد کردن پسورد در برنامه ، بلافاصله پسورد وارد شده در حافظه تبدیل به هش میشه ، سپس با هشی که قبلا در دیتابیس ذخیره شده مقایسه میشه!
اگه این دو هش با هم برابر باشند ، یعنی پسوورد صحیحه پس قفل باز میشه،ولی اگر پسوورد اشتباه باشه برابر نمیشن، پس برنامه به کاربر میگه که پسوورد وارد شده غلطه!
یکی از کاربرد های دیگر هش ها اینه که حتی می توانند مانند اثر انگشتی برای فایلها به کار آیند. هر فایل یک شناسه هش دارد. کوچکترین تغییر در فایل موجب عوض شدن هش آن فایل میشود. این برای تشخیص اینکه آیا فایلهای دریافتی جعلی هستند یا نه بسیار کاربرد دارد. همچنین یکی از روش های آنتی ویروس ها برای پیدا کردن ویروس، استفاده از هشِ فایل ها است ، طوری که اگر هش یک فایل در لیست سیاه آنتی ویروس ها باشد ، آن فایل به عنوان یک ویروس شناسایی میشود.
**پایان قسمت اول**
۲۶ دیدگاه در “کرکینگ حرفه ای هش با Hashcat | قسمت اول”
کرک هش به چه درد میخوره؟
چه استفاده ای میشه ازش کرد؟
من فقط یدونه هش ریت شنیده بودم که برای استخراج ارزهای دیجیتال هست!!!
مطلبو کامل بخونید متوجه میشید
به طور مثال پسورد های یک وب سایت مکن است هش شده باشند و بعد از نفوذ باید از حالت هش خارج شوند
اپلیکشن مبدل هش به عدد دانلود چیزی ساخته شده تا حالا؟؟
واگر ساخته.شده اسمش چیه ؟
ممنون میشم راهنمایی کنید
ابزار های زیادی برای کرک های هش وجود دارد که میتوانید برای مشاهده اموزش ها داخل باکس جستجو این موضوع را جستجو کنید
سلام
اگه ما پسورد هایی از نوع فقط حروف و عدد داشته باشیم. و تعداد آنها برابر باشند مثلا ۸ کاراکتر و دیتابیس md5 اونهارو داشته باشیم آیا میشه با فرض ثابت بودن تعداد کاراکترها و وداشتن دیتا بیس md5 اونها خود پسوورد رو بدست آورد؟!
برنامه ای که با دونستن نوع کاراکتر و تعداد ورودی اولیه بتونه md5 اونها رو معکوس کنه میشه نوشت؟!
لطفا راهنمایی بفرمایید
درود
خیر امکان همچین کاری نیست
من در راه اندازی این ابزار روی ویندوز مشکل دارم به من خطا زیر را میدهد
Device #1: This device’s local mem size is too small.
No devices found/left.
درود
در ارور گفته شده حافظتون ظرفیت نداره
سلام
میتونید یه الگوریتم از تبدیل یه رشته به MD5 مثال بزنید مثلا الگوریتم تبدیل ۱a2b3c به MD5
درود
برای md5 مثالی که زدید bf4ab447496f2d3d5a6c77c2cd12f996 می شود.
سلام قسمت ۲ چیشد؟
درود
در صورت نیاز قسمت های بعدی این ابزار را هم قرار خواهیم داد.
سلام خوبین یه سوال این برنامه رو چه سیستمی می خونه چون روی دستگاه من اصلا نصب نمیشه
درود و تشکر
سیستم عامل شما چیست ؟ و چه ارور هایی دریافت می کنید.
سلام بنده خیلی به کالی علاقه پیدا کردم اگه براتون مقدوره از ابزارهای پر کاربردش مثل همین هش کت ویا webxploit و….
آموزش بزارید.سپاس از شما
درود
بله حتما ، در صورت علاقه مندی بیشتر می توانید در دوره کالی لینوکس شرکت کنید که برای مشاهده می توانید از بخش دوره ها در منو سایت اقدام کنید.
من میخوام هش هایی که داخل لینوکس هست رو باز کنیم چجوری میتونم
درود
هش های پسورد در لینوکس را باید با ابزار john کرک کنید.
باسلام
ایا برای بازیهای اندرویدی یا سیستم عامل ویندوز که از الگوریتم md5 استفاده میشه میشه یه نرم افزار ساخت که قبل از شروع بازی کد یا ضریب بازی رو مشخص بکنه ؟اگر امکانش هست چگونه میشه ساخت . ممنون میشم جواب رو به ایمیل ارسال کنید باتشکر
درود
این موضوع به روش های مهندسی معکوس بر می گیردد که اموزش های مختلفی در این زمینه قرار داده ایم و می توانید با جستجو ان ها را مشاهده کنید.
سلام چرا تو سایتتون از هر ابزار یا برنامه ای میگید نحوه کار کردن باهاش رو نمیگید؟ لطفا کار با این ابزار رو هم بگید. و چرا برای من دانلود نمیشه از کدوم پوشه دانلودش کنم؟
درود
ما برای تمامی اموزش ها اموزش کار با ابزار ها را هم قرار میدهیم این اموزش قسمت اول است و قسمت های بعدی هم خواهد داشت.
لینک های دانلود داخل اموزش قرار داده شده است.
سلام من یک هش دارم به صورت. عدد هستش نمیدونم اصلا چیه اصلا اطلاعاتی ازش ندارم اگه میشه راهنمایی کنید بگید از چه نوعی هستش
۵۰۴۹۶۸۵۲۰۱۸۹۹۶۸۴۸۸۹۱۰۷۱۷۱۲۵۳۴۳۸۴
سلام درود مهندس جان
کرک پسورد با سیستم عامل ویندوز امکان پذیر هست یا فقط کالی لینوکس همچین قدرت بی نظیری دارد
درود
کالی لینوکس فقط یک سیستم عامل با ابزار های مختلف است و ابزار های مختلفی با عملکرد بهتر و یا بدتر برای سیستم عامل های مختلف وجود دارند.
سلام-یک زمانی با نصب کالی لینوکس و برنامه هشکت سعی کردم چند فایل کیف پول بیت کوین رو که در اختیار داشتم باز کنم تا رمز ۶ حرفی ۲ هفته طول کشید ولی رمزو پیدا نکرد وفایل رمز ۷ حرفی و ۸ حرفی بالای ۱۰۰ روز زمان برایپیداکردن رمز زمانبر بود حالا فرض کنید رمز کیف پول اولیه بیت کوین ۱۶ حرفی اگر باشه هشکت که سریعترین کارو انجام میده باید ۴۰۰ سال کار کنه که شاید بتونه هش رمز رو در این کیف پول به پسوردش اصلیش تبدیل کنه