راهنمای ایجاد یک رمز عبور خوب – قسمت اول

آموزش,امنیت,تحلیل,ویژه ها

انواع حملات به رمز عبور و پارامترهای یک رمز عبور خوب

سامانه‌های احراز هویت به طور کلی از سه دسته ابزار برای تشخیص صحت هویت کاربران استفاده می‌کنند:۱- آن چه کاربر می‌داند (مانند رمز عبور)، ۲- آن چه کاربر در اختیار دارد (مانند کارت‌های RFID یا ابزارهای NFC) و ۳- آن چه کاربر هست (مانند احراز هویت بیومتریک).در این میان رمز عبور پرکاربردترین و از قضا ضعیف‌ترین نوع احراز هویت است. در این مقاله سعی بر آن است که راهکارهایی برای ایجاد یک رمز عبور خوب معرفی شود.

ایجاد رمز عبوری که به سادگی قابل حدس زدن و یا در زمان کوتاهی قابل شکستن نباشد یکی از اصول دفاع در عمق (Defense in Depth – DID) و پدافند غیرعامل است. متخصصان پارامترهای مختلفی را برای ایجاد رمز عبور با چنین مشخصاتی برشمرده اند. در حقیقت رمزی که پارامترهایی که در پی می‌آید را رعایت کند، یک رمز عبور پیچیده محسوب شده و شکستن آن سخت‌تر است. برای تعیین این پارامترها لازم است ابتدا کمی با حملاتی که می‌توانند رمز عبور کاربر را پیدا کنند یا به اصطلاح بشکنند آشنا شویم.

انواع حملات به رمز عبور

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

در صورتی که نفوذگر شناخت کافی از کاربر داشته باشد احتمال زیادی وجود دارد که بتواند رمز کاربر را به درستی پیدا کند. در غیر این صورت ممکن است از لیست‌هایی که به صورت عمومی شامل پرکاربردترین رمزهای مورد استفاده کاربران در سایت‌های مختلف است استفاده کند. این لیست‌ها از رمزهای عبور درز کرده از سایت‌های مختلف جمع آوری و ایجاد می‌شوند. در این لینک می‌توانید گزارشی از ۲۵ رمز پر استفاده در سال ۲۰۱۶ را بیابید. بررسی این لیست و لیست‌های مشابه نشان می‌دهد که کاربران به رمزهای کوتاه با تکرار مشخصی از حروف یا اعداد، حروف یا اعداد پشت سر هم، ترتیب مشخصی از قرارگیری دکمه‌ها در کیبوردهای qwerty (نظیر qazwsx یا qweassdzxc) علاقه زیادی دارند.

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

⛔ از استفاده از رمزهای قابل حدس زدن بپرهیزید.
⛔ از تمام یا بخشی از نام کاربری در رمز عبور استفاده نکنید.
⛔ شماره شناسنامه، شماره تلفن، نام و نام خانوادگی و … رمزهای عبور مناسبی نیستند.
⛔ از ترکیب‌های پشت سر هم صفحه کلید استفاده نکنید.

در صورتی که نفوذگر نتواند رمز را در لیست پیدا کند معمولاً در قدم بعدی به حمله‌ای به نام Brute Force  متوصل می‌شود. در این نوع حمله رمز به صورت کاراکتر به کاراکتر حدس زده می‌شود. بنابراین هر نوع اطلاعات از رمز عبور نظیر طول رمز، نوع کاراکترهای مورد استفاده (حروف، عدد، کاراکترهای خاص)، بزرگ یا کوچک بودن حروف و … می‌تواند به تسریع در یافتن رمز کمک کند.

پارامترهای یک رمز عبور پیچیده

یکی از اولین پارامترهایی که برای ایجاد یک رمز عبور پیچیده مورد تأکید قرار می‌گیرد تعداد کاراکترهای رمز عبور یا به عبارت ساده‌تر طول آن است. هر چه طول بیشتر باشد زمان مورد نیاز برای پیدا کردن رمز بیشتر خواهد بود. رمز عبور شامل ۷ کاراکتر “abcdef” در کسری از ثانیه می‌شکند در صورتی که رمز عبور “abcdefghijkl” شامل ۱۲ کاراکتر به ۲ قرن زمان نیاز دارد (منبع).

✅ سعی کنید از رمز عبوری استفاده کنید که حداقل دارای ۸ کاراکتر باشد.

رابطه طول پسورد و زمان شکستن آن
رابطه طول پسورد و زمان شکستن آن

پارامتر دوم استفاده از انواع کاراکترها در یک رمز عبور است. کاراکترهای رمز عبور می‌توانند شامل اعداد، حروف بزرگ، حروف کوچک، حروف فارسی و کاراکترهای خاص (نظیر @$%&) باشند. البته برخی از سایت‌ها از پذیرفتن رمز عبوری با کاراکترهای خاص یا فارسی اجتناب می‌کنند. گرچه در این حالت نیز می‌توان با انتخاب یک رمز عبور طولانی‌تر این کمبود را جبران نمود. البته استفاده از یک نوع کاراکتر به صورت پشت سر هم می‌تواند یک ضعف برای رمز عبور به شمار آید. به طور مثال رمز “۱۲۳۴۵۶۷۸۹۹” در حداکثر دو ماه قابل شکستن است (این زمان با احتساب حمله Dictionary به کسری از ثانیه تقلیل می‌یابد) اما با اضافه کردن حروف و کاراکترهای خاص به صورت “[email protected]” زمان مورد نیاز برای شکستن آن به بیش از ۱۵۰۰ سال افزایش می‌یابد!

✅ از انواع کاراکترها (اعداد، حروف بزرگ، کوچک و کاراکترهای خاص) به صورت درهم در رمز عبور خود استفاده کنید.

حالا نوبت آن است که یک رمز عبور قوی ایجاد کنیم. امّا آیا می‌توان رمز عبوری ایجاد کرد که هم قوی بوده و هم یادآوری آن چندان دشوار نباشد؟ برای یافتن پاسخ این سؤال قسمت دوم این نوشته را دنبال کنید.

1 دیدگاه :

پاسخ دهید