Credential Stuffing یکی از انواع حملات سایبری است که هکرها برای دسترسی به حسابهای آنلاین از آن استفاده میکنند. در این نوع حمله، هکرها از نامهای کاربری و رمزهای عبور دزدیده شده برای ورود به سیستمها و حسابهای مختلف استفاده میکنند. به طور ساده، هکرها با بهرهگیری از ابزارهای خودکار، انواع مختلفی از ترکیبهای نام کاربری و رمز عبور را امتحان میکنند تا به یک ترکیب درست برسند و موفق به ورود به حسابهای شخصی شوند. یکی از دلایل مؤثر بودن این نوع حمله، عادت بسیاری از افراد به استفاده از یک نام کاربری و رمز عبور مشابه برای ورود به چندین سیستم و سایت مختلف است. این رفتار باعث میشود که اگر هکرها به اطلاعات کاربری فردی دسترسی یابند، به راحتی بتوانند از همان اطلاعات برای دسترسی به سایر حسابها نیز استفاده کنند. به این ترتیب، مهاجمان میتوانند در کمترین زمان به چندین حساب مختلف وارد شوند و از آنها سوءاستفاده کنند. طبق آمارهای جرایم سایبری، نرخ موفقیت این نوع حملات بین ۰.۱٪ تا ۴٪ متغیر است. این درصد ممکن است کم به نظر برسد، اما با این وجود، حملات Credential Stuffing میتوانند خسارات زیادی به بار آورند. به علاوه، این حملات به قدری رایج شدهاند که در سال ۲۰۲۲، یکی از ارائهدهندگان خدمات احراز هویت گزارش کرد که به طور متوسط، برای هر دو ورود قانونی به حساب، یک تلاش برای حمله Credential Stuffing انجام میشد. در نهایت، این حملات هر ساله میلیونها حساب کاربری را مورد هدف قرار میدهند و به یکی از چالشهای بزرگ امنیت سایبری تبدیل شدهاند. به همین دلیل، افراد و سازمانها باید اقدامات پیشگیرانهای برای حفاظت از اطلاعات خود انجام دهند تا از چنین تهدیداتی جلوگیری کنند.
حمله Credential Stuffing مشابه تلاش برای باز کردن دربهای مختلف با یک دسته کلید است. فرض کنید یک دزد یک دسته کلید بزرگ پیدا میکند و در خیابان شروع به امتحان کردن هر کلید بر روی دربهای مختلف خودروها میکند. به طور آماری، در نهایت یکی از این کلیدها درب یک خودرو را باز خواهد کرد. در حمله Credential Stuffing، به جای استفاده از کلیدهای فیزیکی، هکرها از اطلاعات دزدیدهشده (نام کاربری و رمز عبور) برای دسترسی به حسابهای آنلاین استفاده میکنند.
مراحل حمله Credential Stuffing به این صورت است:
اولین نشانههای حملات credential stuffing در سال ۲۰۱۴ شناسایی شد. در این زمان، هکرها در دارک وب شروع به ارائه خدماتی برای کسب درآمد از اطلاعات حسابهای کاربری به سرقت رفته کردند. این هکرها به راحتی میتوانستند از دادههای موجود برای انجام حملات به حسابهای مختلف استفاده کنند. ابزارهای اولیهی credential stuffing که برای این منظور استفاده میشدند، معمولاً بین ۵۰ تا ۲۵۰ دلار قیمت داشتند و قابلیت هدفگیری شرکتهای خاص را نیز داشتند. در ابتدا، این ابزارها تنها برای اعتبارسنجی مجموعههایی از ایمیلها و رمزهای عبور طراحی شده بودند. به عبارت دیگر، هکرها میتوانستند از این ابزارها برای تست کردن ترکیبهای مختلف ایمیل و رمز عبور استفاده کنند. اما به مرور زمان، هکرها برای دستیابی به اطلاعات دقیقتر از حسابهای به سرقت رفته، نیاز به خرید ابزارهای پیشرفتهتری برای بررسی حسابها داشتند. امروزه، حملات credential stuffing به شکلی پیچیدهتر و به طور کاملاً خودکار انجام میشوند. هکرها میتوانند تنها با ۵۰۰ دلار، نرمافزارهای مخصوص این نوع حملات را تهیه کرده و با دسترسی به لیستهایی از ترکیبهای مختلف ایمیل و رمز عبور، حملات خود را آغاز کنند. علاوه بر این، آنها از سرویسهای پروکسی برای مخفی کردن هویت خود استفاده میکنند. این ابزارها به گونهای طراحی شدهاند که به طور همزمان صدها هزار ترکیب از اطلاعات حسابهای مختلف را بررسی کرده تا وارد وبسایتهای متعدد شوند.
حملات Credential Stuffing یکی از تهدیدات سایبری مهم در دنیای امروز میباشند و بسیاری از شرکتهای بزرگ در صنایع مختلف مورد هدف این نوع از حملات قرار گرفتهاند. در ادامه، به برخی از مشهورترین شرکتهایی که با این حملات مواجه شدهاند، اشاره خواهیم کرد:
حملات Credential Stuffing همچنان تهدید بزرگی برای بسیاری از شرکتها هستند و فهرست شرکتهای آسیبدیده از این نوع حملات در حال افزایش است.
در اینجا به برخی از دلایل اصلی که باعث افزایش حملات credential stuffing شدهاند، اشاره میکنیم
امروزه، هکرها به راحتی میتوانند به پایگاههای داده عظیم حاوی اطلاعات ورود به حسابهای به سرقت رفته دسترسی پیدا کنند. یکی از این پایگاه دادههای مشهور، Collection 1-5 است که بیش از ۲۲ میلیارد نام کاربری و رمز عبور را در خود جای داده است. بخش زیادی از این اطلاعات از حملهای که در سال ۲۰۱۶ به Yahoo صورت گرفت و منجر به افشای اطلاعات ۱.۵ میلیارد کاربر شد، به دست آمده است.
فناوریهایی مانند headless browsers (مرورگرهایی که مانند مرورگرهای معمولی عمل میکنند، اما بدون رابط کاربری گرافیکی (UI) اجرا میشوند)، امکان ورود به سیستم را با سرعت بالا فراهم کردهاند. به عنوان مثال، PhantomJS از JavaScript استفاده میکند و میتواند از طریق خط فرمان اجرا شود. هکرها همچنین میتوانند از تکنیکهایی مانند IP spoofing برای استفاده از آدرسهای IP جعلی استفاده کنند.
برای راهاندازی حملات credential stuffing، هکرها نیازی به تجهیزات پیچیده ندارند و به راحتی میتوانند نرمافزارها و سختافزارهای مورد نیاز را تهیه کنند.
با گسترش کار از راه دور، تعداد زیادی از کاربران برای دسترسی به پلتفرمهای آنلاین جدید مانند سیستمهای ویدئو کنفرانس و ابزارهای همکاری آنلاین حسابهای جدید ایجاد کردهاند. این افزایش تعداد حسابها به همراه ضعفهای امنیتی مانند استفاده از رمزهای عبور مشابه و ضعیف، زمینهساز حملات Credential Stuffing شده است. یکی از مثالهای بارز این موضوع، حملات به پلتفرمهایی مانند Zoom بود، چرا که کاربران زیادی در تلاش برای دسترسی به این سیستمها بودند. این حملات نشاندهنده ضعفهای امنیتی ناشی از عدم توجه به مدیریت صحیح رمزهای عبور در دوران جدید کاری است.
از آنجا که اطلاعات ورود به سیستم در حملات credential stuffing واقعی و معتبر هستند، شناسایی هکرهایی که خود را به جای کاربران قانونی جا میزنند، بسیار دشوار است. به همین دلیل، آگاهی از روشهای شناسایی این حملات و اتخاذ تدابیر پیشگیرانه برای جلوگیری از آنها، از اهمیت بالایی برخوردار است.
حملات credential stuffing و brute force هر دو به طور کلی به تلاشهای غیرمجاز برای ورود به حسابهای کاربران اشاره دارند. با این حال، نحوه عملکرد و تکنیکهای آنها کاملاً متفاوت است. در اینجا تفاوتهای اصلی این دو نوع حمله آورده شده است:
در حملات brute force، هکرها سعی میکنند با امتحان کردن تمام ترکیبهای ممکن از حروف، اعداد و نمادها، رمز عبور صحیح را حدس بزنند. این روش زمانبر است و ممکن است صدها هزار یا حتی میلیونها تلاش را شامل شود. در مقابل، در حملاتcredential stuffing، هکرها از ترکیبهای نام کاربری و رمز عبوری که قبلاً از نقضهای دادهای یا خرید از دارک وب به دست آمدهاند، استفاده میکنند. سپس این ترکیبها را با استفاده از ابزارهای خودکار برای ورود به سیستمهای مختلف امتحان میکنند.
حملات credential stuffing به دلیل استفاده از ترکیبهای واقعی و از پیش شناخته شده، هوشمندانهتر عمل میکنند. هکرها دیگر نیاز ندارند رمز عبور را حدس بزنند؛ بلکه فقط باید ترکیبهای دزدیده شده را در سیستمهای مختلف امتحان کنند. در حالی که در حملاتbrute force، هکرها از ترکیبهای تصادفی یا رمزهای عبور رایج برای تلاشهای خود استفاده میکنند که ممکن است کمتر مؤثر باشد.
حملات credential stuffing معمولاً در مقیاسهای بسیار بزرگتری انجام میشوند. هکرها میتوانند هزاران یا حتی میلیونها ترکیب دزدیده شده را برای ورود به حسابهای مختلف امتحان کنند. از سوی دیگر، حملات brute force ممکن است در مقیاسهای کوچکتری انجام شوند و معمولاً تنها روی یک حساب تمرکز دارند. این حملات برای شکستن یک رمز عبور خاص به تلاشهای مکرر نیاز دارند.
هنگامی که حملات Credential Stuffing شناسایی میشوند، انجام اقدامات سریع و مؤثر برای کاهش آسیبها و محافظت از حسابهای کاربری امری ضروری است. در اینجا راهکارهایی برای واکنش به این نوع حملات و مدیریت آنها به طور مؤثر ارائه شده است:
جلوگیری از حملات Credential Stuffing برای کاربران عادی کار پیچیده ای نیست. استفاده از رمز عبورهای منحصر به فرد برای هر سرویس، به طور چشمگیری این نوع حملات را بیاثر میکند. علاوه بر این، استفاده از یک مدیر رمز عبور برای سادهتر کردن این فرایند به کاربران پیشنهاد میشود. همچنین، فعالسازی تأیید هویت دو مرحلهای (MFA) برای تقویت بیشتر امنیت حسابها، در صورت امکان، انتخاب خوبی است. اما برای سازمانها و کسبوکارها، جلوگیری از حملات Credential Stuffing چالشبرانگیزتر است، به ویژه برای سازمانهایی که از سرویسهای احراز هویت استفاده میکنند. اگرچه سازمانها میتوانند از کاربران بخواهند از رمزهای عبور منحصر به فرد استفاده کنند، اما اجرای کامل این راهکار برای همه کاربران دشوار است. خوشبختانه، سازمانها میتوانند از روشهای مختلفی برای مقابله با این نوع حملات بهرهبرداری کنند تا امنیت سیستمهای خود را تقویت کنند.
CAPTCHA یکی از روشهای رایج پیشگیری از حملات است که از کاربران میخواهد قبل از ورود به سیستم، اثبات کنند که انسان هستند. این فرایند معمولاً شامل وارد کردن کاراکترهای مخدوش شده یا شناسایی تصاویری خاص از میان چند تصویر است. اما مشکل اصلی CAPTCHA این است که هکرها میتوانند با استفاده از مرورگرهای بدون رابط کاربری (headless browsers) آن را دور بزنند. به همین دلیل، توصیه میشود که CAPTCHA همراه با سایر تدابیر امنیتی به کار گرفته شود تا امنیت بیشتری فراهم گردد.
MFA یکی از مؤثرترین روشها برای جلوگیری از حملات Credential Stuffing است. این روش از کاربران میخواهد که هویت خود را با استفاده از دو عامل تأیید کنند، مثل رمز عبور و کدی که به دستگاه موبایل آنها ارسال میشود. این روش از دسترسی غیرمجاز جلوگیری کرده و امنیت بیشتری برای حسابهای کاربری فراهم میکند. اگرچه استفاده از MFA ممکن است در تمامی موارد عملی نباشد ولی میتوان آن را با دیگر روشهای احراز هویت مانند شناسایی دستگاه ترکیب کرد.
Device Fingerprinting به این معنا نیست که کاربر باید از اثر انگشت واقعی خود استفاده کند. بلکه این روش از JavaScript برای جمعآوری اطلاعات مختلف از دستگاه کاربران نظیر سیستمعامل، مرورگر، زبان، آدرس IP و غیره بهره میبرد. این اطلاعات برای ایجاد یک اثر انگشت دیجیتال منحصر به فرد برای هر کاربر استفاده میشود. در صورتی که ترکیب این دادهها در چند تلاش متوالی تکرار شود، این روش قادر است حملات Credential Stuffing و Brute force را شناسایی کند و به مقابله با آنها بپردازد.
برای جلوگیری از دسترسی هکرها به شبکه، سازمانها میتوانند از فهرستهای مسدود و مجاز IP استفاده کنند. آدرسهای IP مخرب را میتوان مسدود کرد و آدرسهای مجاز را میتوان برای ورود به شبکه پذیرفت. این روش به کاهش حملات از طریق IPهای مشکوک کمک میکند.
مرورگرهای Headless معمولاً توسط رباتهای مخرب برای انجام فعالیتهای خودکار استفاده میشوند. این مرورگرها به راحتی از طریق JavaScript callsشناسایی میشوند، بنابراین یکی از روشهای مؤثر برای جلوگیری از حملات Credential Stuffing مسدود کردن این مرورگرها است. با این حال، باید توجه داشت که مسدود کردن تمام مرورگرهای Headless ممکن است به طور ناخواسته رباتهای مفید را نیز مسدود کند. رباتهای مفید شامل خزندههای موتور جستجو مانند Google یا Bing هستند که برای ایندکس کردن صفحات وب و بهبود نتایج جستجو عمل میکنند. علاوه بر این، برخی رباتها برای نظارت بر وضعیت سایت و مدیریت chatbots استفاده میشوند. بنابراین، کلید شناسایی رباتهای مفید، شناخت منبع آنها است. رباتهای مفید معمولاً توسط شرکتهای معتبر و شناخته شده به کار میروند. این رباتها معمولاً به قوانین و سیاستهایی که شما در سایت خود تعیین کردهاید احترام میگذارند، بنابراین تشخیص و مدیریت دقیق آنها میتواند به شما کمک کند تا از رباتهای مخرب جلوگیری کرده و همچنان از مزایای رباتهای مفید بهرهبرداری کنید.
استفاده از آدرس ایمیل بهعنوان شناسه کاربری یک روش رایج است که بسیاری از کاربران از آن برای ورود به سرویسهای مختلف استفاده میکنند. این روش باعث میشود که احتمال استفاده مجدد از اطلاعات ورود (مانند نام کاربری و رمز عبور) در چندین سرویس افزایش یابد. برای کاهش این خطر و تقویت امنیت، بهتر است که کاربران از آدرس ایمیل بهعنوان شناسه کاربری استفاده نکنند. بهجای آن، استفاده از شناسههای منحصر به فرد یا سیستمهای ورود دیگر (مانند استفاده از شناسههای دیجیتال یا شمارههای کاربری تصادفی) توصیه میشود.