شکستن رمز عبور: حمله Rainbow Table چیست و چگونه از آن جلوگیری کنم؟

جدول رنگین کمانی چیست؟
حمله جدول رنگین کمانی یک روش شکستن رمز عبور است که از یک جدول خاص (یک جدول رنگین کمان) برای شکستن هش رمز عبور در پایگاه داده استفاده می کند. برنامهها پسوردها را در متن ساده ذخیره نمیکنند، بلکه رمزهای عبور را با استفاده از هش رمزگذاری میکنند. پس از اینکه کاربر رمز عبور خود را برای ورود وارد کرد، به هش تبدیل می شود و نتیجه با هش های ذخیره شده در سرور مقایسه می شود تا مطابقت پیدا کند. اگر مطابقت داشته باشند، کاربر احراز هویت می شود و می تواند به برنامه وارد شود.
جدول رنگین کمان خود به یک جدول از پیش محاسبه شده اشاره دارد که حاوی مقدار هش رمز عبور برای هر کاراکتر متن ساده مورد استفاده در فرآیند احراز هویت است. اگر هکرها به لیست هش رمز عبور دسترسی پیدا کنند، می توانند با یک جدول رنگین کمانی، همه رمزهای عبور را خیلی سریع بشکنند.
این حمله چگونه کار می کند؟
هکرها ابتدا باید به هش های لو رفته دسترسی داشته باشند تا بتوانند حملات جدول رنگین کمانی را انجام دهند. ممکن است خود پایگاه داده رمز عبور از امنیت ضعیفی برخوردار باشد، یا ممکن است به Active Directory دسترسی داشته باشند (پایگاه داده و مجموعه ای از خدمات که کاربران را با منابع شبکه ای که برای انجام کارشان نیاز دارند، متصل می کند). دیگران از طریق تکنیکهای فیشینگ آنهایی که ممکن است به پایگاه داده رمز عبور دسترسی داشته باشند، دسترسی پیدا میکنند. علاوه بر این، در حال حاضر میلیون ها و میلیون ها هش رمز عبور فاش شده در وب تاریک وجود دارد که در دسترس هکرها قرار دارد.
دلیل اینکه هکرها دوست دارند از روش جدول رنگین کمان استفاده کنند این است که این روشی آسان برای رمزگشایی رمزهای عبور است تا آنها را قادر به دسترسی غیرمجاز به سیستم ها کند، به جای اتکا به روش حمله فرهنگ لغت (که فضای حافظه بیشتری را مصرف می کند) یا حمله brute force (. که توان محاسباتی بیشتری مصرف می کند). تنها کاری که مهاجم باید انجام دهد این است که جدول رنگین کمان را بررسی کند تا هش رمز عبور را پیدا کند. جداول رنگین کمان عمداً برای مصرف توان محاسباتی کمتر به قیمت استفاده از فضای بیشتر طراحی شده اند. در نتیجه، معمولاً سریعتر از حملات لغتنامه یا brute force نتیجه میدهد. اما این یک معایب دارد. جداول رنگین کمان زمان قابل توجهی را برای جمع آوری از پایه زمان می برد. این به این دلیل است که همه هش ها و کارهای محاسباتی همراه با آنها باید از قبل محاسبه و ذخیره شوند (اگرچه موارد از پیش کامپایل شده را می توان به صورت آنلاین نیز دانلود کرد). اما هنگامی که متوجه شدید، یک جدول رنگین کمانی دارید که همیشه می توانید هر زمان که نیاز به شکستن رمز عبور داشته باشید، دوباره از آن استفاده کنید.
سناریوهای دنیای واقعی:
بیایید ادامه دهیم که چگونه می توانیم این روش شکستن رمز عبور را در دنیای واقعی مشاهده کنیم. در اینجا دو مثال واقعی از نحوه استفاده از آن آورده شده است:
-
مهاجم یک برنامه وب را با تکنیک های هش رمز عبور قدیمی و امنیت کلی ضعیف مشاهده می کند. مهاجم هش رمز عبور را می دزدد و با استفاده از جدول رنگین کمان، مهاجم می تواند رمز عبور هر کاربر برنامه را رمزگشایی کند.
-
یک هکر یک آسیب پذیری در اکتیو دایرکتوری یک شرکت پیدا می کند و می تواند به هش رمز عبور دسترسی پیدا کند. هنگامی که آنها لیستی از هش ها را دارند، یک حمله جدول رنگین کمان را برای رمزگشایی هش ها به رمزهای عبور متن ساده اجرا می کنند.
چگونه از حملات جدول رنگین کمان جلوگیری کنیم:
-
Salting: رمزهای عبور هش شده هرگز نباید بدون نمک ذخیره شوند. Salting تکنیکی برای محافظت از رمزهای عبور ذخیره شده در پایگاه داده با افزودن رشته ای از 32 کاراکتر یا بیشتر و سپس هش کردن آنها است. این امر رمزگشایی رمز عبور را دشوارتر می کند.
-
احراز هویت چند عاملی: استفاده از احراز هویت چند عاملی (MFA) یا احراز هویت دو مرحلهای (2FA) که شامل چندین مرحله است، برای مثال، دسترسی افراد به حساب شما را فقط با یک رمز عبور دشوار میکند. این امر باعث می شود که مهاجم نتواند به طور موثر از حمله جدول رنگین کمانی استفاده کند.
-
الگوریتم های درهم سازی قدیمی: هکرها با استفاده از الگوریتم های هش رمز عبور منسوخ MD5 و SHA1 به دنبال برنامه ها و سرورها می گردند. اگر برنامه شما از هر یک از الگوریتم ها استفاده کند، خطر حملات جدول رنگین کمانی به میزان قابل توجهی افزایش می یابد.
-
مانیتورینگ سرورها: اکثر نرمافزارهای مدرن امنیتی سرور در برابر تلاشها برای دسترسی به اطلاعات حساس نظارت میکنند و میتوانند به طور خودکار برای کاهش نفوذ مهاجمان قبل از اینکه بتوانند پایگاه داده رمز عبور را پیدا کنند، عمل کنند.
نتیجه گیری و اندیشه های نهایی
برخی از کارشناسان امنیتی استدلال می کنند که جداول رنگین کمان با روش های مدرن شکستن رمز عبور منسوخ شده اند. در عوض، اکثر مهاجمان اکنون از روشهای پیشرفتهتری برای شکستن رمز عبور مبتنی بر واحد پردازشگر گرافیکی (GPU) استفاده میکنند.
یک مزرعه GPU با اندازه متوسط می تواند به راحتی یک جدول رنگین کمانی را در عرض چند ثانیه بازسازی کند. این بدان معناست که رمزگذاری آن پسوردها در جدول رنگین کمان چندان منطقی نخواهد بود. علاوه بر این، اکثر رمزهای عبور به هر حال نمکدار هستند، به این معنی که برای هر مقدار نمک به جدولهای رنگین کمانی نیاز داریم، و برای نمکهای بزرگتر، این کاملا غیر عملی است. بیت کوین و سایر استخراج کنندگان ارزهای دیجیتال از فناوری GPU برای محاسبه هش برای کشاورزی بیت کوین استفاده کرده اند. ابزارهای موجودی وجود دارند که می توانند از فناوری GPU برای رمزگشایی هش رمز عبور بالقوه استفاده کنند. به عنوان مثال، خوشه گرافیکی مبتنی بر لینوکس برای شکستن 90 درصد از 6.5 میلیون هش رمز عبور لینکدین درز کرده در سال 2012 استفاده شد.
با این وجود، جداول رنگین کمان ممکن است بزرگترین تهدید برای سازمانهای امروزی نباشند. با این حال، آنها مطمئناً یک تهدید هستند و باید به عنوان بخشی از یک استراتژی امنیتی کلی در نظر گرفته شوند.
اگر این مقاله را دوست داشتید، لطفا برای وبلاگ های بیشتر در مورد امنیت سایبری و هک، لایک و دنبال کنید!!
– مربع