ما به تازگی در مورد خطرات بالقوه پسورد و اینکه چطور کاربر میتواند از طریق غفلت خود به شدت در معرض خطر قرار بگیرد، مطلبی را منتشر کردهایم. به دلیل اینکه داده های بسیاری توسط عنصر رمز عبور محافظت میشوند، بنابراین نیاز به تصفیه لایه امنیتی ضروری به نظر می رسد. با این حال، یک سؤال مشترک که معمولاً دریافت کرده بودیم این بود که چگونه مهاجمین واقعاً پسوردهای در معرض خطر را برای یکدیگر ذخیره و به اشتراک میگذارند.
آشنایی با شیوه رمزگذاری “Salting” و “Hashing”
قبل از هرگونه توضیح بیشتر درباره این موضوع، ما نیاز به درک اهمیت تکنیکهای مورد استفاده در “Salting” و “Hashing” داریم که توسط ارائه دهندگان خدمات وب ارائه میشود. این متد، روش رمزگذاری کلمات عبور و جلوگیری از دستیابی افراد بدخواه و خرابکار به کلمات عبور ذخیره شده در پایگاههای داده بزرگ میباشد. اگر این پایگاههای داده بدون دقت و ملاحظه در متنهای ساده ذخیره شوند، آنها تبدیل به دیتابیس بسیار آسیب پذیر و قابل مشاهده میگردند.
این روش تضمین میکند که حتی اگر یک مهاجم بتواند پایگاه داده را به دست بگیرد، وی بدون تلاش قابل توجه و به سادگی قادر نخواهد بود تا کد های دستیابی را بشکند. “Salting” به فرآیند اضافه کردن یک رشته از کاراکترها به یک رمز عبور اطلاق میگردد. به عنوان مثال، یک کلمه عبور مانند ‘hello’ پس از این فرایند تبدیل به ‘hello3ab9‘میشود. “Hashing” نیز به فرآیند رمزنگاری بر پسورد Salt شده با یک کلید را میگویند. بنابراین ‘hello3ab9‘پس از Hash تبدیل به ‘۳۹e19b234…‘ میشود. ارائه دهندگان این خدمات با استفاده از برنامه های رایج و محبوب مانند MD5, SHA-1, SHA-256, SHA-384 و SHA-512 اقدام به رمزگذاری مینمایند.
روشهایی برای شکستن رمزهای عبور دزدیده شده.
متاسفانه، مهاجمان در حال حاضر در دست خود این برنامهها را دارند. در نتیجه، مهاجمینی که جهت یابی و Hash های خاص نرم افزار حفاظت از سیستم کرک شده را دارند، نتایج حاصل را برای یکدیگر در انجمنهای زیرزمینی به اشتراک میگذارند. در اینجا ابزارهای مشترکی وجود دارد که توسط مهاجمان برای شکستن رمزهای عبور امن ما مورد استفاده قرار میگیرد و به اشتراک گذاشته میشود.
۱- جدول رنگین کمان (Rainbow Table).
این پایگاه داده جدولی، حاوی کلمه های عبور درهم شده (Hashed) است که کرک شدهاند. تمام برنامه رمزنگاری، هدف و نتایج به دست آمده را به شیوه «شما کمک کنید تا من کمک کنم» به اشتراک میگذارند. پس از آن، در صورتی که رمز عبور درهم به دست یک هکر بیفتد او به سادگی آن را در جداول رنگین کمان اجرا میکند تا ببیند که آیا پسورد از متنی ساده مشتق شده است یا پیچیده تر است. این فرایند اگر جداول چندگانه در اختیار داشته باشد تنها چند ثانیه طول میکشد. نتایج حاصل در جدول ثبت شده و پس از آن با دیگر هکرها برای تکمیل زنجیره به اشترک گذاشته میشود.
۲- حمله دیکشنری (Dictionary Attack).
در این سناریو، یک مهاجم پسورد رمز گذاری شده را در برابر مجموعه موجود از کلمات اجرا میکند. در اکثر موارد، این فهرست از یک فرهنگ لغت، به سادگی مشتق شده است. بسیاری از مردم از کلمات فرهنگ لغت روزانه خود به عنوان رمز عبور خود استفاده میکنند و مهاجمین نیز به خوبی از این امر آگاه هستند. همه این موارد زمانی انجام میشود که پسورد در لیستی از کلمات فرهنگ لغت موجود باشد و رمز عبور هم یک کلمه ساده باشد، در این صورت است که در واقع هکر میتواند پسورد را کرک نماید. به همین دلیل توصیه میشود که شما برای رمز عبور خود از ترکیبی از حروف، اعداد و کاراکترهای خاص استفاده نمایید.
۳- حمله اجباری – خشن (Brute-Force).
بر اساس یک جستجو جامع کلیدی شناخته شده، این حمله جزو جامعترین و دقیقترین روش مورد استفاده هکرها میباشد. آنها پسورد رمزشده را در برابر تمام ترکیبات ممکن شامل حروف، اعداد و کاراکترهای خاص اسکن میکنند. این فرایند بسیار طولانی است بنابراین تنها مهاجمین علاقه مند و خاص از آن استفاده میکنند. اما اگر یک مهاجم روش brute-force را اتخاذ نماید، شکستن رمز عبور برای او دیر یا زود تضمین شده است. به منظور تضعیف مهاجمان جهت استفاده از این تکنیک، به شما توصیه میشود تا از کلمات عبوری که حداقل شامل ۸-۱۰ کاراکتر میباشند استفاده نمایید.
هکرها با استفاده از این روشهای اولیه و روشهای دیگری که کمتر شناخته شده است، اقدام به کرک رمز عبور شما مینمایند و از آن یک لیست تهیه میکنند. زمانیکه یک رمز عبور کرک شد، لیست آنها به روز رسانی شده و با دیگر هکرها جهت گسترش اطلاعات به اشتراک گذاشته میشود. امنیت کلمه عبور چیزی است که موجب آسودگی بسیاری از ما میشود، بنابراین برای حفظ آن بسیار مهم است که از ۳ قانون تبعیت نمایید. یک پسورد را به مدت طولانی نگه ندارید و از کاراکترهای خاص استفاده نمایید و از رمزهای عبور متفاوت برای حسابهای مختلف بهره بگیرید. مهاجمان منابع و نتایج خود را با یکدیگر به اشتراک میگذارند، بنابراین ما هم باید همین کار را انجام دهیم و جهت بالا بردن سطح آگاهی یکدیگر مشارکت داشته باشیم.