اصل فنی از شکاف گذرواژه، چگونه می توان بهبود نرخ موفقیت رمزگشایی و چگونه با موفقیت از رمزگشایی و بازیابی رمزگشایی

مثل یک هکر فکر کنید و از خودتان بپرسید که با توجه به ساختار رمز عبور چقدر سریع می توان آن را کرک کرد.

هنگامی که یک هکر یا تست کننده نفوذ سیستم را خراب می کند و می خواهد به رمز عبور متن ساده از پایگاه داده دسترسی پیدا کند ، ابتدا باید هش رمز عبور ذخیره شده را شکست. بسیاری از مهاجمان در این مفهوم فرو می روند: آنها هر حمله رمز عبور دلخواه را که می خواهند ، بدون دلیل کمی امتحان می کنند. این بحث برخی از روشهای موثر برای شکستن رمزهای عبور و نحوه استفاده از تجزیه و تحلیل آماری رمزهای عبور را با ابزارهایی برای ایجاد یک روش محدود زمانی برای شکستن کارآمد و موفق نشان میدهد. چرا این مهم است ؟

شکستن رمز عبور یک کار در حال مرگ است. کاربران نیاز به ایجاد رمزهای عبور پیچیده تری داشتند و برخی از توسعه دهندگان باطن شروع به استفاده از مکانیزم هایی مانند   Bcrypt   برای جایگزینی توابع هش استاندارد کردند. هش های Bcrypt زمان بیشتری برای تولید طول می کشد و در نتیجه ، رمزهای عبور سخت تر می شوند. کرکرها برای شکستن موثر رمزهای عبور نیاز به تولید هش بسیار سریع دارند ، بنابراین Bcrypt ابزار بسیار قدرتمندی برای مقابله با این نوع حملات است. برای نشان دادن این مثال ، کرکر رمز عبور ساخته شده توسط 25 خوشه GPU که در سال 2012 معرفی شد ، توانست به سرعت تولید هش NTLM 350 میلیارد هش در ثانیه دست یابد ، در حالی که سرعت تولید هش Bcrypt 71000 است. با استفاده از این به عنوان یک مدل مقایسه ، برای هر هش Bcrypt تولید شده ، می توان 5 میلیون هش NTLM تولید کرد. هکرها در مواجهه با الگوریتم Bcrpyted مجبورند حدسهای محاسباتی بیشتری درباره رمز عبور انجام دهند و نمیتوانند برای هر احتمال به استفاده از نیروی بیرحمانه تکیه کنند.

执行流程的顺序

توجه: اگر مهاجم بداند که طول رمز عبور آنقدر کوتاه است که شکستن فضای کلید با خشونت زمان زیادی طول نکشد ، نیازی به انجام مراحل حمله افزایشی نیست.

جدول زمانی

بهره وری زمانی به یک عامل کلیدی در شکستن موفقیت آمیز رمز عبور تبدیل شده است. در حالی که خوب است که کل فضای کلیدی رمز عبور کاربر را پوشش دهید ، زمان لازم برای انجام این کار معمولاً امکان پذیر نیست. بنابراین ، هنگام کرک کردن ، مهم است که ابتدا بیشترین صرفه جویی در زمان را امتحان کنید و در صورت عدم موفقیت ، به حملات رمزنگاری کندتر ادامه دهید که فضای کلید بیشتری را پوشش می دهد. سریعترین راه حمله فرهنگ لغت ساده بر اساس رمزهای عبور کاربران رایج و رمزهای عبور قبلی است. از آنجا باید سعی کرد فرهنگ لغت را دستکاری کند تا اعداد یا نمادها را در انتها اضافه کند یا حروف را تغییر دهد. به این حمله Hybrid Attack یا حمله مبتنی بر قانون می گویند. در مرحله بعد ، می توانید از قابلیت های یادگیری ماشینی برای تولید رمزهای عبور احتمالی استفاده کنید. زنجیره مارکوف نمونه خوبی از آن است. با ترکیب عناصر رایج موجود در زبان انگلیسی برای تشکیل کلمات (به عنوان مثال ، "ing"، "er"، "qu") می توان حدس خوبی از رمز عبور تولید کرد ، مانند رمز عبور زیر. اگرچه هک کردن این رمز خاص با استفاده از هر روشی آسان است ، اما برای ساده کردن همه بردارهای حمله ، از آن رمز عبور استفاده خواهیم کرد. Password1234Password1234

Pa + ss + Word + 1234

در نهایت ، حملات خشونت آمیز هدفمند (به نام حملات ماسک) بر اساس ساختار رمزنگاری تمام فضاهای کلیدی یک رمز عبور داده شده را پوشش می دهد. منظور من از "ساختار" رمز عبور ، نوع و ترتیب کاراکترهایی است که برای ایجاد رمز عبور استفاده می شود. به عنوان مثال ، یک "ساختار" با حروف بزرگ و به دنبال آن 7 حرف کوچک و به دنبال آن یک عدد 4 رقمی (که به صورت ) نوشته می شود. Password1234ullllllldddd

حروف کوچک , حروف بزرگ , نماد , عدد (l)(u)(s)(d)

بنابراین اگر مهاجم تصمیم بگیرد با استفاده از این ساختار تمام امکانات ترکیب کاراکتر را ایجاد کند ، در نهایت رمز عبور را پیدا خواهد کرد. سپس سوال مهاجم این می شود: هنگام حمله به مجموعه ای از هش ها ، ابتدا چه ساختاری را باید هدف قرار داد ؟ Password1234

تجزیه و تحلیل آماری

برای کمک به پاسخ به این سوال ، من تجزیه و تحلیل آماری از دامپ های رمز عبور محبوب انجام دادم تا ببینم آیا ساختار رمز عبور رایج تر از سایر ساختارهای رمز عبور وجود دارد و این ساختار تا چه حد صحیح است. حجم نمونه ای از بیش از 34 میلیون رمز عبور در معرض عموم شامل دامپ های رمز عبور معروف مانند RockYou ، LinkedIn ، phpBB و غیره است.


شکل زیر فرکانس ساختار ماسک را برای هر ماسک منحصر به فرد نشان می دهد. خط قرمز نشان دهنده خط ۵۰ درصدی است که بعد از سیزدهمین ماسک پر وقوع ظاهر می شود.


从示例图派生的密码掩码

این بدان معناست که 13 ساختار ماسک منحصر به فرد اول 50 درصد از رمز عبور نمونه را تشکیل می دهند. ساختار بیش از 20 میلیون رمز عبور در نمونه در 13 ماسک اول قرار دارد. این نتایج از نظر فراگیر بودن رمزهای عبور ساختار یافته بسیار تکان دهنده است. ۵۰ درصد دیگر در داخل دم بلند راست وجود دارد که در این نمودار کاهش یافته است. در واقع از ۲۶۰۵۰۰ ماسک منحصر به فرد ، تنها ۴۰۰ ماسک در این نمودار نشان داده شده است. مفهوم این رمزنگاری ساختار جهانی باورنکردنی است. با این حال ، وقتی به این فکر می کنید که کاربران چگونه می توانند رمز عبور خود را ایجاد و به خاطر بسپارند ، تعجب آور نیست. بر اساس داده های تجزیه و تحلیل ، عوامل منطقی وجود دارد که به توضیح چگونگی امکان پذیری این امر کمک می کند. هنگامی که از کاربر خواسته می شود رمز عبور حاوی حروف بزرگ را ارائه دهد ، در بیش از 90 درصد مواقع به عنوان اولین کاراکتر استفاده می شود. اکثر کاربران هنگام درخواست استفاده از اعداد ، دو رقم را در انتهای رمز عبور (احتمالاً سال فارغ التحصیلی) اضافه می کنند. گزینه محبوب بعدی پایان دادن به رمز عبور با یک عدد چهار رقمی (احتمالاً سال گذشته یا امسال) است. در این حالت ، محبوب ترین عدد بعدی دارای یک عدد در انتها و سه عدد در انتها است. مشترکات ساختاری مانند این به مهاجمان اجازه می دهد تا پیش بینی کنند که ساختار رمز عبور کاربر به احتمال زیاد چیست.

مخلوط آماری – شتاب

با استفاده از این دانش ساختاری ، می توان با خیال راحت فرض کرد که کاربر به احتمال زیاد رمز عبور خود را بر روی than (حروف تصادفی) تنظیم می کند ، حتی اگر هر دو با 9 حرف شروع شوند و 9 حرف داشته باشند. بنابراین ، فرض می کنیم که با توجه به یک ساختار رمزنگاری ، اگر حروف متوالی را ببینیم ، به احتمال زیاد یک کلمه است. این یک فرض بسیار مفید برای crackers است ، زیرا فضای کلید زیادی را از بین می برد. سپس این به یک حمله ترکیبی تبدیل می شود که از اهمیت آماری ساختار رمزنگاری مشترک استفاده می کند. potatoespwivwdhpp

کارایی و محدودیت زمانی

معمولاً ، به عنوان یک تست کننده نفوذ ، حتی اگر مجموعه ای از هش ها را شکسته باشیم ، ممکن است وقت کرک کردن همه هش ها را نداشته باشیم. با این حال ، از بین بردن آنها ممکن است به ارتقاء دسترسی به سیستم کمک کند و یافته های مفیدتری را برای مشتریان به ارمغان بیاورد. بنابراین ، هنگام شکستن رمز عبور ، می تواند مفید باشد که تعیین کنید چقدر زمان برای شکستن مجموعه ای از هش ها اختصاص داده می شود. با استفاده از ساختارهای کشف شده در تجزیه و تحلیل قبلی ، یک مهاجم می تواند 10 ساختار محبوب برتر را که می خواهد بر اساس الزامات پیچیدگی رمز عبور مرتب شده بر اساس سریعترین زمان تکمیل پوشش دهد ، تعیین کند. در نهایت ، یک مهاجم می تواند با صرف زمان بیش از یک ساعت برای انجام کرک ، روش خود را محدود کند. این در یک آزمایش نفوذ اخیر برای به دست آوردن هش کشف شد. در زیر یک عکس فوری از نتایج cracker مبتنی بر CPU آورده شده است.

受损结果表

در این مورد سریعترین ساختار تکمیل شده , است که ما آن را به عنوان یک حرف بزرگ و به دنبال آن سه حرف کوچک ("W" برای "Word") و سپس یک عدد چهار رقمی تعریف می کنیم. در مجموعه هش 69 رمز عبور وجود دارد که با این ساختار مطابقت دارد و CPU استاندارد من قادر است تمام امکانات این ساختار را در یک دقیقه طی کند. ما کرک را در 62 دقیقه متوقف کردیم و کرک 221 هش کرک منحصر به فرد تولید کرد که با 491 حساب مطابقت داشت و در مجموع منجر به 11 درصد نشت شد. دلیل تفاوت زیاد در میزان رمزهای عبور کرک شده و نشت اکانت این است که تنظیمات آفیس اغلب باعث می شود افراد از رمزهای عبور رایج استفاده کنند. اگر یک مهاجم تشخیص دهد که یک رمز عبور مشترک در محیط استفاده می شود ، همه کاربرانی که رمز عبور یکسانی دارند نیز در معرض خطر قرار خواهند گرفت. U(W3)dddd

اگرچه یک حمله ترکیبی یا یک حمله مبتنی بر قانون (به عنوان مثال) می تواند چندین رمز عبور را سریعتر بشکند ، ساختار رمز عبور حمله به ما اجازه می دهد تا فضای کلیدی بیشتری را پوشش دهیم. اگر ثابت شود که حمله Faster با موفقیت هش هدف را از بین نمی برد ، این روش گام بعدی موثر است. همچنین ، یادآوری این نکته مهم است که این مثال بر روی یک CPU نسبتا متوسط انجام شده است و انجام همان حمله بر روی یک GPU قدرتمند می تواند این زمان را به چند ثانیه کاهش دهد. بنابراین ، زمان بندی دقیق کمتر از اجرای مؤثر نظریه اهمیت دارد. تجزیه و تحلیل آماری best64

برای

به ما کمک می کند به طور کلی به ساختارهای رمزنگاری رایج حمله کنیم. با این حال ، ابزارهایی وجود دارند که می توانند به یافتن یک برنامه خاص کمک کنند. ابزارهایی مانند CeWL  می توانند کلمات را از صفحات وب بگیرند و از آنها برای تولید فهرست کلمات یا فرهنگ لغت به طور خاص برای شرکت ها استفاده کنند. این کار به این دلیل موثر است که شرکت ها تمایل دارند از رمزهای عبور مرتبط با صنعت ، شرکت یا شغل خود استفاده کنند. همچنین از آنجایی که تشخیص دادیم که رمزهای عبور رایج در محیط کار رواج دارند ، میتوان از رمزهای عبور قبلا کرک شده نیز به عنوان مبنای رمزهای عبور دیگر استفاده کرد که ممکن است مشابه باشد. به عنوان مثال ، اگر متوجه شویم که "" رمز عبور یک کاربر است ، ممکن است "" را در لیست کلمات جدید قرار دهیم ، آن را در مجموعه قوانین قرار دهیم و سپس متوجه شویم که شخص دیگری رمز عبور "" را دارد. این مفهوم استفاده از کلمات اساسی کرک شده (مانند '') و تزئین آن با کاراکترهای اطراف ، در هنگام کرک کردن هش های ریخته شده از محیط سازمانی بسیار موثر است که به مفهوم استفاده مجدد از رمز عبور برمی گردد. با توجه به تست نفوذی که انجام دادیم ، این بهترین کار برای کرک کردن 20 درصد آخر هش های کرک نشده است. AcmeCorp1234AcmeCorpAcmeCorp@2015AcmeCorp

همچنین مهم است که فرهنگ لغت را کوتاه کنید تا تمام رمزهای عبور حدس زده شده با الزامات مشخص شده توسط برنامه مطابقت داشته باشند تا زمان حدس زدن رمزهایی که به دلیل طول یا ترکیب کاراکترها قابل حدس زدن نیستند ، تلف نشود. شروع از سریعترین حمله ، پوشش دادن کمترین فضای کلید (حمله دیکشنری استاندارد) تا کندترین و بزرگترین فضای کلید (نیروی بی رحمانه خالص) بهترین پیشرفت برای در نظر گرفتن زمان اختصاص یافته به حمله است. بنابراین ، مهاجم باید یک روش استاندارد را اجرا کند که این موضوع را در نظر بگیرد. اگر حسابی که مهاجم میخواهد در مرحله اول هک شود ، ممکن است دلیلی برای ادامه استفاده از حملات دیگر وجود نداشته باشد. با این حال ، در بسیاری از موارد ، اگر یک حساب هدف وجود داشته باشد ، ممکن است یک حمله فرهنگ لغت ساده کافی نباشد ، یا مهاجم به سادگی می خواهد تا حد امکان حساب ها را خراب کند ، بنابراین ممکن است ترکیبی از حملات با استفاده از ساختار آماری و حملات خشونت آمیز هدفمند مورد نیاز باشد. بنابراین ، ایجاد روشها برای کرک موفقیت آمیز ضروری است که میتواند شامل روشهای ذکر شده قبلی و همچنین برخی فرآیندهای خودکار باشد. ابزارهای اخیر (مانند   PRINCE) می توانند به تسهیل شکستن رمز عبور کمک کنند. مهم است که یک باند ابزار مانند PRINCE را در متد امتحان کنید ، اما درک ویژگی های پشت ابزارها به جای اتکا کامل به آنها ، کرک را موثرتر می کند.

دفاع – نحوه مبارزه با آمار

با تجزیه و تحلیل با استفاده از این رمزهای عبور می توان محبوب ترین ساختار را با توجه به سطح پیچیدگی مورد نظر مشخص کرد. بنابراین ، توسعه دهندگان احتمالاً باید برخی از کنترل ها را پیاده سازی کنند تا کاربران را از استفاده از برخی از این ساختارهای بسیار محبوب برای صاف کردن منحنی نمودار قبلی جلوگیری کنند. با این حال ، مشکل این ایده این است که بدون ساختار ساده ، کاربران ممکن است به خاطر سپردن رمز عبور خود دشوار باشند. من توصیه می کنم از یک مدیر رمز عبور استفاده کنید که نیاز به احراز هویت دو عامل دارد. این برنامه ها تمام رمزهای عبور شما را برای شما تولید و ذخیره می کنند ، بنابراین حافظه مشکلی ندارد. رمزهای عبوری که آنها تولید می کنند از نظر ساختاری تصادفی هستند و می توانند تا زمانی که برنامه اجازه دهد استفاده شوند. همانطور که قبلا اشاره کردم ، رمزگذاری رمز عبور یکی دیگر از روش های بسیار موثر است که می تواند چشم انداز پیشرفت یک مهاجم را کند کند. در نهایت ، اجرای یک استراتژی در داخل دفتر که به کاربران کمک می کند تا خطرات اشتراک گذاری رمز عبور یا استفاده مجدد از آن را درک کنند ، گامی موفق در جهت درست است ، حتی اگر کاربران همیشه از آن پیروی نکنند. اگرچه به احتمال زیاد آنها همیشه از آن پیروی نمی کنند ، اما این یک کنترل موثر است.

نتیجه گیری و برداشت

شکستن رمز عبور ممکن است یک مفهوم مبهم باشد. با افزایش دشواری کرک ، حملات هدفمند مبتنی بر کارایی مورد نیاز است و باید روش های کرک شخصی ایجاد شود. ارزش سرمایه گذاری برای افزایش سرعت تولید هش را ندارد. بنابراین پیاده سازی یک روش و فرایند ساده شده با استفاده از آمار و ابزارها به عنوان ابزار حمله می تواند کرک رمز عبور را تسهیل کند. توسعه دهندگان می توانند کنترل هایی را برای مقابله با این وضعیت ایجاد کنند و کاربران می توانند از یک مدیر رمز عبور امن برای به حداقل رساندن اثربخشی این حملات استفاده کنند. با این حال ، چنین پیاده سازی هایی چندان محبوب نیستند. در حال حاضر حملات آماری به رمزهای عبور هم از نظر تعداد کرک ها و هم از نظر کارایی اتصال زمانی موثر است. به رمزهای عبور خود فکر کنید و از خود بپرسید که بسته به ساختار رمزهای عبور و اینکه چه کنترلهایی در دفتر شما ممکن است منجر به هک کردن حسابهای کاربران شود ، چقدر سریع میتوان آنها را هک کرد.

قبلی:هاشکات به عنوان سریع ترین ابزار شکستن رمز جهان شناخته می شود، چگونه از حشکات برای رمزگشایی استفاده می شود؟
بعدی:استفاده از نرم افزار رمزگشای حرفه ای برای شکست Exlce ، کلمه ، PDF ، اسم رمز رمز بسته فشرده شده
  • تمرکز بر روی Word ، Excel ، PPT ، PDF ، RAR ، ZIP ، 7Z ، بسته های فشرده شده ، باز کردن قفل و رمزگشایی فایل های رمزگذاری شده آفیس
  • ما بازیابی رمز عبور بسته فشرده فایل با کیفیت بالا ، باز کردن قفل PDF و بازیابی رمز عبور Word را در اختیار کاربران قرار می دهیم
  • حق چاپ © استاد بازیابی رمز عبور سند پلت فرم رمزگشایی آنلاین