John the Ripper چیست؟ آموزش شکستن رمز عبور و هش
وقتی یک هکر به فایلِ رمزهای یک سیستم دست پیدا میکند، رمزها را بهصورتِ خام نمیبیند؛ چیزی که میبیند «هش» است — یک رشتهی درهمریخته. John the Ripper ابزاری است که تلاش میکند از روی این هش، رمزِ اصلی را بازسازی کند. فهمیدنِ کارِ آن، هم برای حمله و هم برای ساختنِ دفاعِ درست حیاتی است.
به فینگلیش: john the ripper chist، shekastan ramz oboor، john the ripper amoozesh، crack kardan password
نوشتهی اسماعیل قائدی — مدرس امنیت سایبری و هک اخلاقی
کارشناسی امنیت سایبری از دانشگاه Manchester Metropolitan (درجهی ممتاز) — تست نفوذ، امنیت شبکه، OSINT و گجتهای سختافزاری.
این مقاله بخشی از راهنمای کامل آموزش هک از صفر: نقشه راه کامل برای مبتدیها است

اول: هش (hash) چیست؟
سیستمها رمزِ عبور را بهصورتِ خام ذخیره نمیکنند؛ آن را از یک تابعِ یکطرفه بهنامِ «هش» عبور میدهند که خروجیاش یک رشتهی ثابت و بهظاهر تصادفی است. این کار یکطرفه است: از رمز میتوان هش ساخت، اما از هش نمیتوان مستقیم به رمز رسید. پس حملهکننده چه میکند؟ حدس میزند: رمزهای مختلف را هش میکند و نتیجه را با هشِ هدف مقایسه میکند تا به تطابق برسد.
John the Ripper چطور کار میکند؟
John the Ripper (بهاختصار John) دقیقاً همین حدسزدن را با سرعتِ بسیار بالا و بهصورتِ هوشمند انجام میدهد. سه حالتِ اصلی دارد:
- حملهی دیکشنری: رمزهای یک لیستِ آماده (wordlist) مثل rockyou را یکییکی امتحان میکند — سریعترین و پرکاربردترین روش.
- حملهی بروتفورس (Incremental): همهی ترکیبهای ممکن از حروف و ارقام را میسازد؛ کند اما در نهایت هر رمزی را میشکند.
- حالت قواعد (Rules): رمزهای دیکشنری را هوشمندانه تغییر میدهد (مثلاً password میشود P@ssw0rd) تا رمزهای «بهظاهر قوی» را هم پوشش دهد.
یک نمونهی ساده
جریانِ کارِ John معمولاً اینطور است: اول هشها را در یک فایل جمع میکنی، بعد John را با یک wordlist روی آن اجرا میکنی و در پایان رمزهای شکستهشده را میبینی:
# حملهی دیکشنری با wordlist معروف rockyou john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt # نمایش رمزهای شکستهشده john --show hashes.txt
اجرای John the Ripper با لیست کلمات rockyou
John یا Hashcat؟
John the Ripper و Hashcat دو غولِ این حوزهاند. John انعطافپذیر، ساده برای شروع و عالی برای انواعِ زیادی از هش است. Hashcat از کارتِ گرافیک (GPU) استفاده میکند و برای هشهای سنگین و حجمِ بالا معمولاً بسیار سریعتر است. حرفهایها هر دو را بلدند و بسته به موقعیت انتخاب میکنند.
همین ابزار به تو نشان میدهد چرا رمزِ کوتاه فاجعه است: یک رمزِ ۶ حرفیِ ساده در چند ثانیه میشکند، اما یک عبارتعبورِ بلندِ ۱۶ کاراکتری عملاً غیرقابلشکستن میشود. راهِ دفاع در برابر John، رمزِ بلند و یکتا بههمراهِ هشِ قوی و کند (مثل bcrypt) است.
کاربردِ قانونی
John یک ابزارِ دوکاره است: مهاجم با آن حمله میکند و مدافع با آن «قدرتِ رمزها» را میسنجد. تیمهای امنیتی بهطورِ قانونی با John رمزهای سازمانِ خودشان را آزمایش میکنند تا رمزهای ضعیف را پیدا و کاربران را وادار به تغییر کنند. استفاده از آن فقط روی سیستمها و هشهایی مجاز است که اجازهی صریح داری.
منابع و مراجع
Frequently asked questions
John the Ripper رمز را از هش رمزگشایی میکند؟
نه دقیقاً. هش یکطرفه است و رمزگشایی نمیشود. John رمزهای مختلف را حدس میزند، هش میکند و با هشِ هدف مقایسه میکند تا به تطابق برسد. پس در واقع «حدسِ هوشمند» میزند، نه رمزگشایی.
چقدر طول میکشد تا یک رمز شکسته شود؟
کاملاً به طول و پیچیدگیِ رمز بستگی دارد. یک رمزِ کوتاه و رایج در چند ثانیه میشکند، اما یک عبارتعبورِ بلندِ تصادفی میتواند سالها یا عملاً هرگز نشکند.
آیا کار با John the Ripper قانونی است؟
خودِ ابزار قانونی است و کاربردِ دفاعیِ گسترده دارد. اما استفاده از آن روی هشهایی که مالکشان نیستی یا اجازه نداری، غیرقانونی است.
در مقاله ساده به نظر میرسد. اولین بار روی هدف واقعی، ساده نیست.
اینها را فقط وقتی میفهمی که واقعاً انجامش بدهی. ماژول شکستن رمزِ دوره همین را روی آزمایشگاه انجام میدهد، با تکلیفی که بررسی میشود و پشتیبانیای که وقتی گیر کردی جواب میدهد.
این موضوع در دوره:ماژول ۸ · شکستن رمزها و حمله به پسورد با Hydra- ۱۵ ماژول عملی، حدود ۳۳ ساعت آموزش فارسی
- ۷۴ ابزار و مهارت، از Nmap و Metasploit تا Burp Suite
- ۳ آزمایشگاه تمرین آنلاین و پروژهی جامع پایانی
- گواهینامهی پایان دوره با صفحهی استعلام آنلاین
- پشتیبانی تیکتی، پاسخ در کمتر از ۲۴ ساعت
- ۶ ماه دسترسی کامل از اولین ورود