تقریباً از هر ده رمز عبور، شش رمز عبور را می توان در کمتر از یک ساعت با استفاده از یک کارت گرافیک مدرن یا خدمات ابری شکست. تمام هزینه آن چند دلار و مقداری وقت آزاد است. این که چگونه این امر امکان پذیر است و در مورد آن چه باید کرد موضوع مطالعه ما است.
اگرچه روز جهانی گذرواژه که هر سال در اولین پنجشنبه ماه می برگزار میشود، به پایان رسیده است، اما جذابیت برای ما – و امیدواریم شما – با امنیت رمز عبور همچنان ادامه دارد. به جای تجزیه و تحلیل رمزهای عبور مصنوعی “لوله آزمایش” ایجاد شده برای مطالعات آزمایشگاهی، ما در دنیای واقعی ماندیم – گذرواژههای واقعی افشا شده در تاریک وب را بررسی کردیم. نتایج هشداردهنده بود: 59 درصد از این رمزهای عبور را میتوان در کمتر از یک ساعت شکست – و تنها چیزی که لازم است یک کارت گرافیک مدرن و کمی دانش است.
پست امروز توضیح میدهد که چگونه هکرها رمزهای عبور را میشکنند و چگونه با آن مقابله کنند (هشدار اسپویلر: از محافظت قابل اعتماد استفاده کنید و به طور خودکار رمزهای عبور خود را برای درز اطلاعات بررسی کنید).
روش معمول برای شکستن رمزهای عبور
ابتدا، بیایید منظورمان از “شک کردن رمز عبور” را روشن کنیم. ما در مورد شکستن هش رمز عبور صحبت می کنیم – یک دنباله منحصر به فرد از کاراکترهایی که رمز عبور را نشان می دهند. شرکت ها معمولاً رمزهای عبور کاربران را به یکی از سه روش ذخیره می کنند:
- این سادهترین و واضحترین راه است: اگر رمز عبور کاربر مثلاً qwerty12345 باشد، در سرور شرکت بهعنوان qwerty12345 ذخیره میشود. اگر نقض داده رخ دهد، هکر فقط باید رمز عبور را با نام کاربری مربوطه وارد کند تا وارد شود. البته اگر احراز هویت دو مرحله ای (2FA) وجود نداشته باشد، اما حتی در آن صورت، مجرمان سایبری گاهی اوقات می توانند رمزهای عبور یکبار مصرف را رهگیری کنند. .
- این روش از الگوریتم های هش مانند MD5 و SHA-1 برای تبدیل هر رمز عبور به یک مقدار هش منحصر به فرد در قالب یک رشته کاراکتر با طول ثابت استفاده می کند که در سرور ذخیره می شود. هنگامی که کاربر رمز عبور خود را وارد می کند، سیستم توالی ورودی کاراکترها را به یک هش تبدیل می کند و آن را با رمز ذخیره شده در سرور مقایسه می کند. اگر مطابقت داشته باشند، رمز عبور صحیح است. در اینجا یک مثال آورده شده است: اگر رمز عبور شما همان qwerty12345 است، سپس به SHA-1 ترجمه شده است، به نظر می رسد: 4e17a448e043206801b95de317e07c839770c8b8. هکرهایی که این هش را به دست می آورند باید آن را به qwerty12345 بازگردانند (این قسمت «شکستن رمز عبور» است)، به عنوان مثال، با استفاده از جداول رنگین کمان. پس از آن میتوان از یک رمز عبور شکسته برای دسترسی نه تنها به سرویس آسیبدیده، بلکه برای دسترسی به سایر حسابهایی که رمز عبور مجدداً در آنها استفاده شده است استفاده کرد.
- هش شده با نمک. این روش هیچ ارتباطی با یک غذای خوشمزه از غذای آماده ندارد، این روش یک توالی تصادفی از داده ها را که به عنوان salt شناخته می شود، به هر رمز عبور قبل از هش اضافه می کند. نمک می تواند ساکن باشد یا به صورت پویا تولید شود. یک دنباله رمز عبور + نمک به الگوریتم وارد می شود که منجر به یک هش متفاوت می شود. بنابراین، جداول رنگین کمان از پیش محاسبه شده برای هکرها بی فایده می شوند. استفاده از این روش برای ذخیره پسوردها، شکستن آنها را بسیار دشوارتر می کند.
برای مطالعه خود، ما یک پایگاه داده از 193 میلیون رمز عبور فاش شده در متن ساده تشکیل دادیم. همه آنها را از کجا آوردیم؟ باید بدانید کجا را نگاه کنید. ما آنها را در وب تاریک یافتیم، جایی که چنین “گنجینه هایی” اغلب به صورت رایگان در دسترس هستند. ما از این پایگاه داده برای بررسی گذرواژههای کاربر برای نشت احتمالی استفاده کردیم – اما مطمئن باشید که هیچ رمز عبوری را ذخیره نمیکنیم یا حتی نمیبینیم. میتوانید در مورد ساختار داخلی مخزن گذرواژه در Kaspersky Password Manager و نحوه تطبیق آنها بدون اطلاع از رمزهای عبور خود با گذرواژههای فاش شده بیشتر بخوانید.
هزینه شکستن رمز عبور
GPU های مدرن بهترین ابزار برای تجزیه و تحلیل قدرت رمز عبور هستند. به عنوان مثال، RTX 4090 همراه با ابزار بازیابی رمز عبور هش کت به نرخ 164 میلیارد هش در ثانیه (GH/s) برای هش MD5 نمکی دست می یابد.
بیایید یک رمز عبور 8 کاراکتری را با استفاده از حروف لاتین (یا تمام حروف کوچک یا بزرگ) و اعداد (36 کاراکتر ممکن در هر موقعیت) تصور کنیم. تعداد ترکیبات منحصر به فرد ممکن 2.8 تریلیون است (با افزایش 36 به توان هشت محاسبه می شود). یک CPU قدرتمند با قدرت پردازش 6.7 گیگا هش در ثانیه (GH/s) میتواند چنین رمز عبوری را در هفت دقیقه بهاجرا کند. اما RTX 4090 فوق الذکر آن را تنها در 17 ثانیه مدیریت می کند.
در حالی که چنین پردازنده گرافیکی پیشرفته ای حدود 2000 دلار آمریکا قیمت دارد، حتی مهاجمانی که قادر به دستیابی به آن نیستند، می توانند به راحتی قدرت محاسباتی را تنها با چند دلار در ساعت اجاره کنند. اما اگر یک دوجین RTX 4090 را به یکباره اجاره کنند چه می شود؟ این قدرت کافی برای پردازش نشت های گسترده پایگاه داده هش را به راحتی دارد.
59 درصد از رمزهای عبور در کمتر از یک ساعت شکسته می شوند
ما قدرت گذرواژه را با استفاده از الگوریتمهای brute-force و smart-ressing آزمایش کردیم. در حالی که brute force در تمام ترکیبهای ممکن از کاراکترها به ترتیب تکرار میشود تا زمانی که مطابقت پیدا کند، الگوریتمهای حدسزنی هوشمند بر روی یک مجموعه داده رمزهای عبور آموزش داده میشوند تا بسامد ترکیبهای مختلف کاراکتر را محاسبه کنند و ابتدا از رایجترین ترکیبها و به پایین انتخاب کنند. کمیاب ترین ها در نسخه کامل تحقیق ما در مورد Securelist می توانید اطلاعات بیشتری در مورد الگوریتم های مورد استفاده مطالعه کنید.
نتایج نگران کننده بود: 45٪ از 193 میلیون رمز عبور واقعی که ما تجزیه و تحلیل کردیم (یعنی 87 میلیون کلمه عبور!) می توانند توسط الگوریتم هوشمند در کمتر از یک دقیقه شکسته شوند، 59٪ در عرض یک ساعت، 67٪ در عرض یک ساعت. یک ماه، و تنها 23 درصد از رمزهای عبور را می توان واقعاً قوی در نظر گرفت – بیش از یک سال برای شکستن نیاز دارید.
زمان شکستن | درصد رمزهای عبور قابل شکستن با استفاده از روش داده شده | |
Brute force | حدس زدن هوشمندانه | |
زیر 1 دقیقه | 10% | 45% |
1 دقیقه تا 1 ساعت | +10% (20%) | +14% (59%) |
1 ساعت تا 1 روز | +6% (26%) | +8% (67%) |
1 روز تا 1 ماه | +9% (35%) | +6% (73%) |
1 ماه تا 1 سال | +10% (45%) | +4% (77%) |
بیش از 1 سال | +55% (100%) | +23% (100%) |
توجه به این نکته مهم است که شکستن تمام رمزهای عبور در پایگاه داده زمان زیادی از شکستن فقط یک رمز عبور (!) نمی برد. در هر تکرار، با محاسبه هش برای ترکیب بعدی کاراکترها، مهاجم بررسی میکند که آیا همان مورد در پایگاه داده عمومی وجود دارد یا خیر. اگر چنین شود، رمز عبور مورد نظر به عنوان “کرک شده” علامت گذاری می شود، پس از آن الگوریتم به حدس زدن رمزهای عبور دیگر ادامه می دهد.
چرا الگوریتم های حدس هوشمند بسیار موثر هستند؟
انسان ها قابل پیش بینی هستند. ما به ندرت گذرواژههای واقعاً تصادفی را انتخاب میکنیم و تلاش ما برای تولید آنها در مقایسه با ماشینها کمرنگ است. ما به عبارات، تاریخها، نامها و الگوهای رایج متکی هستیم – دقیقاً همان چیزی که الگوریتمهای کرک هوشمند برای بهرهبرداری طراحی شدهاند.
علاوه بر این، مغز انسان به گونهای است که اگر از نمونهای از مردم بخواهید عددی بین یک تا صد را انتخاب کنند، اکثراً همان اعداد را انتخاب میکنند! کانال یوتیوب Veritasium بیش از 200000 نفر را مورد بررسی قرار داد و محبوب ترین اعداد را 7، 37، 42، 69، 73 و 77 یافت.
حتی هنگام تلاش برای رشته های کاراکتر تصادفی، ما تمایل داریم که از کلیدهای وسط صفحه کلید استفاده کنیم. تقریباً 57 درصد از کل رمزهای عبوری که ما تجزیه و تحلیل کردیم حاوی یک کلمه فرهنگ لغت یا ترکیب نمادهای مکرر بودند. نگران کننده است که 51 درصد از این پسوردها در کمتر از یک دقیقه، 67 درصد در کمتر از یک ساعت شکسته می شوند و تنها 12 درصد بیش از یک سال طول کشیده است. با این حال، حداقل فقط چند کلمه عبور فقط از یک کلمه فرهنگ لغت تشکیل شده است (که می تواند در عرض یک دقیقه شکسته شود). برای اطلاعات بیشتر در مورد الگوهای رمز عبوری که با آنها مواجه شده ایم، به پست Securelist مراجعه کنید.
الگوریتمهای هوشمند اکثر پسوردهایی را که حاوی توالی فرهنگ لغت هستند، کوتاه میکنند. و حتی جایگزینی کاراکترها را هم میگیرند – بنابراین نوشتن «pa$$word» به جای «گذرواژه» یا «dmin@» بهجای «admin» رمز عبور را خیلی قویتر نمیکند. استفاده از کلمات محبوب و دنباله اعداد به همان اندازه خطرناک است. در 4 درصد از پسوردهایی که بررسی کردیم، موارد زیر در جایی ظاهر شد:
- 12345
- 123456
- love
- 12345678
- 123456789
- admin
- team
- qwer
- 54321
- password
توصیه ها
نکات اولیه مطالعه عملی ما:
- بسیاری از رمزهای عبور کاربران به اندازه کافی قوی نیستند. 59 درصد از آنها را می توان در یک ساعت کرک کرد.
- استفاده از کلمات معنی دار، نام ها و توالی کاراکترهای استاندارد در رمز عبور، زمان حدس زدن رمز عبور را به میزان قابل توجهی کاهش می دهد.
- کمترین امنیت رمز عبور رمزی است که تماماً از اعداد یا فقط کلمات تشکیل شده باشد.
- برای ایمن نگه داشتن حساب های خود، توصیه های ساده زیر را در نظر بگیرید:
- با استفاده از Kaspersky Password Manager رمزهای عبور قوی ایجاد کنید.
- اگر تصمیم دارید خودتان یک رمز عبور ایجاد کنید، به جای ترکیب کلمات معنی دار، نام ها یا توالی فرهنگ لغت، از عبارات عبور یادداشتی استفاده کنید.
- هرگز از گذرواژهها در سایتهای مختلف استفاده مجدد نکنید، زیرا همه شرکتها اطلاعات کاربران را بهطور امن ذخیره نمیکنند.
- هرگز پسوردها را در مرورگرها ذخیره نکنید.
- رمزهای عبور خود را به طور ایمن در یک مدیریت رمز عبور ذخیره کنید و یک رمز عبور اصلی ضد شکست برای آن ایجاد کنید.
- با Password Checker یا مستقیماً در Kaspersky Password Manager خود، میزان مقاومت رمز عبور خود را بررسی کنید. گذرواژههای ضعیف و تکراری را شناسایی میکند، همه گذرواژههای شما را در برابر پایگاههای داده در معرض خطر بررسی میکند و در صورت یافتن مطابقت به شما هشدار میدهد.
- از Kaspersky Premium برای نظارت مستمر در پسزمینه همه حسابهای مرتبط با تلفن یا آدرس ایمیل شما و اعضای خانواده برای نشت اطلاعات استفاده کنید.
- 2FA را تا جایی که ممکن است فعال کنید. اتفاقاً Kaspersky Password Manager به شما امکان میدهد تا توکنهای 2FA را ذخیره کرده و کدهای یکبار مصرف ایجاد کنید.
ترجمه:
پیشگامان تجارت امن ایرانیان