
John The Ripper چیست؟ آشنایی با ابزار قدرتمند کرک رمز عبور و هشها
در دنیای امنیت سایبری رمزهای عبور اولین خط دفاع و در عین حال یکی از آسیبپذیرترین نقاط هر سیستم هستند. ابزار John The Ripper یا به اختصار John، یکی از قدرتمندترین و شناختهشدهترین نرمافزارهای متنباز برای کرک کردن پسوردها و شکستن هشهای رمز عبور است. این ابزار به کارشناسان امنیت کمک میکند تا نقاط ضعف در مدیریت رمزها را شناسایی کرده و استحکام مکانیزمهای احراز هویت را ارزیابی کنند.
John The Ripper چیست؟
John The Ripper که به اختصار John نیز نامیده میشود، یک ابزار رایگان، متنباز و چندسکویی برای شکستن پسوردها و هشهای رمز عبور است که در دنیای امنیت سایبری کاربرد فراوانی دارد. این ابزار توانایی بالایی در تحلیل فایلهای هش شده، استخراج رمزهای عبور ضعیف و ارزیابی امنیت ساختارهای احراز هویت دارد. John در ابتدا برای سیستمعامل یونیکس توسعه داده شد، اما اکنون نسخههای آن برای ویندوز و macOS نیز در دسترس است.
John The Ripper بهدلیل سادگی کار با آن از طریق خط فرمان، انعطافپذیری بالا و پشتیبانی از الگوریتمهای گوناگون رمزنگاری، به یکی از محبوبترین ابزارها در بین متخصصان تست نفوذ و آموزشهای امنیت اطلاعات تبدیل شده است. این ابزار اغلب برای یافتن رمز عبور هش شدهی کاربران در فایلهایی مانند Shadow (لینوکس) یا SAM (ویندوز) استفاده میشود. نسخههای پیشرفتهتر مانند Jumbo، امکانات اضافی مانند پشتیبانی از Hashهای پیچیده و پسورد فایلهای فشرده را نیز اضافه کردهاند.
قابلیتها و کاربردهای John The Ripper
شکستن الگوریتمهای مختلف هش:
John از طیف گستردهای از الگوریتمهای هش مانند MD5، SHA-1، NTLM، DES، bcrypt و بیشتر پشتیبانی میکند. این تنوع به شما اجازه میدهد رمزهای عبور مربوط به سیستمهای مختلف را تحلیل و بررسی کنید.
پشتیبانی از فایلهای سیستمی:
John بهصورت اختصاصی قادر است فایلهای مهمی مانند shadow در لینوکس یا SAM و SYSTEM در ویندوز را تحلیل کرده و هشهای رمز عبور کاربران را استخراج و بررسی کند. این امکان در هنگام تست نفوذ و ارزیابی امنیت سیستمعامل بسیار مفید است.
اجرای حملات مختلف کرک رمز:
John از چند نوع حمله برای کرک کردن رمز عبورها پشتیبانی میکند، از جمله Dictionary Attack، Brute-force، Incremental و Rule-based Attack. این روشها با توجه به نوع هش و شرایط رمز عبور قابل استفاده هستند.
سازگاری با سیستمعاملهای مختلف:
John قابلیت اجرا در پلتفرمهای لینوکس، ویندوز، مک و BSD را دارد، که استفاده از آن را در محیطهای گوناگون آسان میسازد. این ویژگی باعث شده در بسیاری از دورههای آموزش امنیت و تست نفوذ تدریس شود.
استفاده در تست نفوذ و ارزیابی امنیت رمزها:
کارشناسان امنیت از John برای ارزیابی استحکام رمز عبور کاربران سازمانی استفاده میکنند. با شبیهسازی حمله به دادههای هش شده، میتوانند تشخیص دهند که چه رمزهایی نیاز به تقویت دارند.
نحوه نصب John The Ripper
نصب John The Ripper در لینوکس (Kali, Ubuntu, Debian)
در توزیعهایی مثل Kali Linux، ابزار John معمولاً بهصورت پیشفرض نصب شده است. اما اگر در سیستم شما نصب نبود، میتوانید بهراحتی آن را از مخازن رسمی نصب کنید. برای این کار کافیست ترمینال را باز کرده و فرمانهای زیر را وارد کنید:
sudo apt update
sudo apt install john
پس از اتمام نصب با دستور john –help میتوانید از موفقیتآمیز بودن نصب مطمئن شوید. همچنین فایل اجرایی John معمولاً در مسیر /usr/bin/john قرار میگیرد. برای استفاده از نسخه پیشرفتهتر و حرفهایتر به نام John Jumbo، پیشنهاد میشود آن را از سورس (source code) کامپایل کنید که نیازمند ابزارهایی مانند git و make خواهد بود.
نصب John The Ripper در ویندوز
برای نصب John در ویندوز، ابتدا باید به سایت رسمی John The Ripper مراجعه کرده و نسخه اجرایی مناسب ویندوز را دانلود کنید. نسخههای بهینهی این ابزار با نام John the Ripper Jumbo Windows builds در منابع مختلف مانند GitHub نیز منتشر شدهاند.
پس از دانلود، فایل ZIP را اکسترکت کرده و وارد پوشه run شوید. از اینجا میتوانید فایل john.exe را از طریق CMD اجرا کنید:
cd path\to\john\run
john.exe --help
نکته مهم این است که محیط خط فرمان ویندوز (CMD) باید در حالت Administrator اجرا شود، بهویژه اگر بخواهید فایلهای کمکی یا هشها را مستقیماً از سیستم استخراج کنید.
آموزش اجرا و استفاده پایه از John The Ripper
پس از نصب موفق John The Ripper اجرای این ابزار از طریق خط فرمان (Terminal در لینوکس یا CMD در ویندوز) انجام میشود. برای شروع باید یک فایل حاوی هش رمزهای عبور داشته باشید تا John آن را پردازش کند. فایل هش میتواند خروجی ابزارهای دیگر مثل unshadow (در لینوکس) یا pwdump (در ویندوز) باشد. اگر فایل شما آماده است، اجرای پایه دستور به شکل زیر خواهد بود:
john hashes.txt
در این مثال hashes.txt فایلی است که شامل لیستی از هشها است. John بهصورت خودکار الگوریتم هش را تشخیص میدهد و با استفاده از حمله Dictionary (در صورتی که wordlist پیشفرض موجود باشد) عملیات کرک را آغاز میکند.
برای مشاهده وضعیت کرک شدن رمزها میتوانید از دستور زیر استفاده کنید:
john --status
و اگر رمزهایی کرک شدهاند و میخواهید آنها را ببینید، میتوانید این دستور را وارد کنید:
john --show hashes.txt
John بدون نیاز به تنظیمات پیچیده، کار را آغاز میکند، اما شما میتوانید با استفاده از سوئیچهای مختلف، نوع حمله، الگوریتم مورد استفاده، wordlist اختصاصی یا حتی ماسک مشخص کنید. برای مشاهده همه قابلیتها، این دستور را وارد کنید:
john --help
John The Ripper در عین سادگی، ابزاری بسیار قدرتمند است و پیشنهاد میشود کاربران مبتدی با فایلهای تستی و سناریوهای آزمایشی یادگیری را آغاز کنند تا به استفاده پیشرفتهتر و حرفهایتر برسند.
جمعبندی…
John The Ripper یک ابزار قدرتمند و منعطف برای شکستن رمزهای عبور و ارزیابی امنیت هشها است که بهصورت رایگان و متنباز در سیستمعاملهای مختلف در دسترس قرار دارد. این ابزار با پشتیبانی از الگوریتمهای مختلف رمزنگاری و انواع روشهای حمله، به گزینهای محبوب در بین کارشناسان امنیت، تسترهای نفوذ و دانشجویان امنیت شبکه تبدیل شده است. با استفاده صحیح و قانونی از John میتوان نقاط ضعف رمزهای عبور را شناسایی و در جهت افزایش امنیت اطلاعات گام مؤثری برداشت.
موارد اخیر
-
معرفی و بررسی کامل سیستمعامل CentOS؛ از گذشته تا جانشینهای امروز
-
معرفی سیستمعامل راکی لینوکس (Rocky Linux) و مقایسه آن با CentOS
-
معرفی سیستمعامل AlmaLinux و کاربرد های آن | AlmaLinux برای چه کسانی مناسب است؟
-
ماژول SELinux چیست و چگونه از آن استفاده کنیم؟ + آموزش غیر فعال کردن
-
راهکار بازیابی از فاجعه یا Disaster Recovery چیست و چرا اهمیت دارد؟
-
فرایند Failover چیست و چه انواعی دارد؟ تفاوت Failover با Disaster Recovery
-
SAML چیست و چرا برای سازمانها اهمیت دارد؟
-
پروتکل OAuth چیست و چگونه کار میکند؟ مزایا و معایب OAuth
-
برسی RTO و RPO و تفاوتهای آنها : چرا RTO و RPO برای کسبوکار حیاتی هستند؟
-
تکثیر داده یا Data Replication چیست و چگونه آنرا پیاده سازی کنیم؟
برترین ها
-
ماژول SELinux چیست و چگونه از آن استفاده کنیم؟ + آموزش غیر فعال کردن
-
راهکار بازیابی از فاجعه یا Disaster Recovery چیست و چرا اهمیت دارد؟
-
فرایند Failover چیست و چه انواعی دارد؟ تفاوت Failover با Disaster Recovery
-
SAML چیست و چرا برای سازمانها اهمیت دارد؟
-
پروتکل OAuth چیست و چگونه کار میکند؟ مزایا و معایب OAuth
اشتراک گذاری این مطلب
دیدگاهتان را بنویسید
نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند *
