شکستن کلمه عبور Password Cracking
شکستن کلمه عبور یا Password Cracking چیست؟
شکستن کلمه عبور (Password Cracking) به فرایند کشف و بازیابی کلمه های عبور گفته میشود که معمولا با هدف دسترسی غیرمجاز به یک سیستم و یا بررسی میزان شکست پذیری پسوردها صورت میگیرد.
روش های رایج برای شکستن کلمه عبور
حدس زدن کلمه عبور یکی از سادهترین روش های پسورد کرکینگ به شمار میرود. ترکیباتی که برای حدس زدن به کار میرود میتواند شامل پسوردهای رایجی مثل واژه password یا qwerty و یا مبتنی بر اطلاعات شخصی کاربر نظیر سال تولد و شماره شناسنامه او باشد. لازم به ذکر است کاربرد روش حدس زدن به شدت محدود میباشد و صرفا در مورد پسوردهای بسیار ضعیف یا مواردی که فرد حمله کننده با قربانی آشنایی نزدیک دارد قابل استفاده خواهد بود.
یکی از روش های سیستماتیک رایج برای شکستن کلمه های عبور، حمله ای موسوم به جستجوی فراگیر (Brute-Force Attack) است که در آن سعی میشود تمامی حالات ممکن برای یک کلید یا کلمه عبور تست شود. از آنجایی که استفاده از این روش در مورد رمزهای عبور طولانی نیازمند صرف زمان زیادی است اغلب به عنوان آخرین راهکار درنظر گرفته میشود. در مقابل، حمله لغت نامه ای (Dictionary Attack) این امکان را فراهم میکند که به جای تست کردن تمامی ترکیبات ممکن، تنها از واژه ها و ترکیبهای پرکاربردی که در قالب یک مجموعه (اصطلاحا لغت نامه) تهیه شده است به عنوان کاندیدهای کلمه عبور استفاده شود. این نوع حمله هرچند از سرعت بالاتری برخوردار است اما برای کلمه های عبور پیچیده که شامل واژههای معنادار و رایج نمیباشد عملکرد موفقیت آمیزی نخواهد داشت (برخلاف حمله بروت فورس که حداقل از لحاظ تئوری رسیدن به موفقیت در آن همیشه امکان پذیر است).
ابزارهای نرم افزاری مختلفی برای شکستن کلمه عبور وجود دارد که از میان معروفترین آنها میتوان به Cain and Abel و John the Ripper و همینطور Aircrack و Ophcrack اشاره کرد.
مقابله با پسورد کرکینگ
انتخاب کلمه های عبور مناسب و به اندازه کافی پیچیده (قوی) میتواند باعث دشوارتر شدن فرایند پسورد کرکینگ شود.
همچنین توصیه میشود در سیستم های مختلف علاوه بر رعایت مسائل امنیتی رایج در پیکربندی سیستم، از نگه داری و ذخیره کلمه های عبور به صورت ساده (هش نشده) نیز خودداری شود تا در صورت نفوذ به سیستم و دسترسی به داده ها امکان تشخیص پسوردها دشوارتر شود. نهایتا در صورتی که فرد حمله کننده به این اطلاعات هش شده دسترسی داشته باشد قادر خواهد بود فرایند شکستن کلمه عبور را به صورت آفلاین دنبال کند (بدون نیاز به ارتباط مستقیم با سیستم، مقدار هش برای ترکیبهای مختلف را محاسبه و نتیجه را با مقدار هش شده مقایسه کند یا از جدول از پیش محاسبه شدهای موسوم به جدول رنگین کمانی یا Rainbow table برای یافتن پسورد منطبق با مقدار هش شده استفاده کند). در چنین حالتی استفاده از تابع هش پیچیده و زمانبر میتواند احتمال شناسایی پسوردها در زمانی معقول را کاهش دهد.
در طرف مقابل، اگر فرد متجاوز به پسوردهای هش شده دسترسی نداشته باشد مجبور خواهد بود به شکل آنلاین (یا مستقیم) به چک کردن کلمه های عبور احتمالی بپردازد. در این حالت، اعمال محدودیت روی تعداد تلاش برای ورود به سیستم و جلوگیری از ورود در صورت تلاش بیش از اندازه، استفاده از کپچا و … میتواند فرایند شکستن کلمه های عبور را دشوارتر کند.
پیوندهای پیشنهادی تک دیک