اکثر account ها روی سیستم های کامپیوتری معمولاً متدهای خاصی از دسترس محدود به آن account دارند. هر زمان که قصد دسترسی به یک سیستم داشته باشید باید یک ID صحیح را وارد کرده و با وارد کردن password وارد account خود شوید.اکثر سیستم ها پسوردها را نشان نمی دهند و به جای کاراکتر های واقعی از ستاره یا نقطه استفاده می کنند.
روی اکثر سیستم ها پسورد از میان چندین الگوریتم عبور داده می شود تا به صورت hash (رمز شده) در آید. Hash معمولاً بیشتر از کاراکترهایی است که به عنوان پسورد وارد شده اند . معمولاً hash به صورت غیرقابل برگشت درست می شود یعنی با هیچ الگوریتمی نمی توان hash را به متن اصلی تبدیل کرد.
● منظور از شکستن پسورد به روش dictionary چیست؟
یک
برنامه شکننده پسورد به سادگی لیستی از dictionary را می گیرد و هر لحظه
یک لغت را رمز کرده و با hash سیستم مقایسه می کند تا زمانیکه هر 2 hash
برابر شوند و پسورد شکسته شود. در این هنگام لغتی از dictionary که آزمایش
شده است همان پسورد سیستم است.بعضی از این برنامه ها می توانند با به
کارگیری فیلترهای مخصوص کلمات را دستکاری کنند.قواعد این فیلترها به شما
اجازه می دهد مثلاً (rnazari) را به (Rnazar1) تغییر دهید. استفاده از این
فیلترهای باعث می شوند که شما بتوانید از یک لیست کوچک لیستی بزرگ ساخته و
آزمایش کنید .
بهترین نوع شناخته شده از این فیلترهای خارق العاده در
برنامه های crack که برای محیط Unix طراحی شده اند موجود است. قواعد این
فیلترها کلا شناخته شده و به تازگی در برنامه هایی که برای nt طراحی شده
اند گنجانیده شده است.اگر برنامه crack شما چنین قابلیتی ندارد شما می
توانید با برنامه therions password utility که برای محیط dos طراحی شده
است می تواند با روش های زیادی یک لیست کوچک از کلمات را از شما گرفته و به
یک لیست خیلی بزرگ تبدیل کند و سپس شما می توانید آنرا به کار بگیرید.
● منظور از شکستن پسورد به روش Brute force چیست؟
یک
برنامه crack به روش Brute force به سادگی و با قواعدی خاص لغاتی را به
صورت اتوماتیک ساخته و با hash مقایسه می کند. فرق این روش با روش قبلی در
این است که تمام لغات به صورت اتوماتیک ساخته می شوند. از دیدگاه یک هکر
این روش خیلی وقت گیر بوده و قسمت زیادی از قدرت cpu را هدر می دهد.خیلی از
برنامه های این حملات تنظیماتی را به شما می دهند تا با این تنظیمات در
زمان صرف شده و قدرت cpu صرفه جویی کنید. مثلاً می توانید طول پسورد ساخته
شده یا کاراکترهایی که برای ساختن لغات به کار برده خواهد شد را معین کنید.
● کدام روش برای crack کردن بهترین است؟
جواب
این سوال مرتبط است با هدف شما ، برنامه crack ای که به کار می برید،
سیستم عامل سرور هدف چند فایل dictionary با طول های متفاوت مثلاً
1،2،3،4،5،6،7،8 و . . . از اینترنت بگیرید بعد این فایلها را گسترش داده و
فیلترهایی روی آنها اعمال کنید ، تا هر چه جامع تر شود و در اکثر موارد
انتخاب نخست تان روش dictionary باشد اگر با این همه لغات باز هم نتوانستید
یک hash را بشکنید .
دیگر متاسفانه باید از روش Brute force استفاده
کرده و سیستم خود را چند روزی مشغول این کار کنید.برای بالا بردن امنیت
پسوردها بعضی از الگوریتم ها از salt استفاده می کنند . این عمل باعث می
شود پیچیدگی پسورد زیادتر و شکستن آن سخت تر شود. Salt ها معمولاً 2 تا 8
بایت درازا دارند و با الگوریتم خود باعث می شوند که ابهام hash غیرقابل
برگشت بیشتر شود. اکثر سیستم عامل ها این روش را پوشش می دهند بجز nt . اگر
2 پسورد عین هم با این الگوریتم hash شود hash ها عین هم نخواهند بود و در
این روش 4096 نوع hash از یک پسورد می توان ساخت و کار شکستن نیز به همان
اندازه سخت تر خواهد شد. با همه این احوال salt نیز امنیت صد در صد پسورد
را گارانتی نمی کند.
● حمله برای شکستن پسورد چه خطراتی دارد؟