در حمله سایبری پرکردن اعتبارنامههای دیجیتال(Credential Stuffing) از نام کاربری و کلمات عبور سرقتی برای دسترسی به حسابهای کاربران استفاده میشود. چنین حملاتی از طریق ارسال درخواستهای ورود به حساب خودکار و در مقیاس عظیم اجرا میگردند. استفاده طولانی مدت از حسابهای کاربری، تنظیم مجدد کلمات عبور تکراری برای حسابهای کاربری مختلف و انتشار حجم انبوهی از اعتبارنامههای سرقتی در دارک وب از جمله عواملی هستند که فرصت اجرای این حملات را برای مجرمان سایبری فراهم میکنند. مهاجمان همچنین در هنگام اجرای این حملات از روشها و فنون خاصی برای دور زدن راهکارهای امنیتی، پیشگیری از شناسایی و تظاهر به اینکه کاربر واقعی هستند استفاده میکنند.
Troy Hunt محقق امنیت سایبری میگوید: «حملات پرکردن اعتبارنامه، درخواستهای یک کاربر معمولی و مجاز را شبیهسازی میکنند».
در این مطلب از فراست چهار روش مورد استفاده مهاجمان سایبری برای مخفی کردن حملات پرکردن اعتبارنامه و شیوه مقابله با این حملات را مورد بررسی قرار میدهیم.
دور زدن تکنیک دفاعی محدودسازی نرخ درخواست به API
ایجاد محدودیت در درخواستها از جمله روشهای پرکاربرد مهاجمان برای مخفیسازی حملات پرکردن اعتبارنامه است. بنا به گفته Michael Isbitski تحلیلگر پیشین مؤسسه گارتنر و مبلغ فنی شرکت Salt Security: «محدودیت منابع و محدودیت نرخ معمولاً جزو روشهای امنیتی توصیه شده برای سازوکارهای واسطه API هستند».
برای مثال یک سازمان نرخ مجاز دسترسی به یک API خاص که با یک درگاه API کار میکند را 10 درخواست در دقیقه تنظیم میکند. اگر فراخوانیکننده API یازده بار در یک دقیقه تلاش کند، 10 درخواست اولیه او بررسی شده و آخرین درخواست وی مسدود میگردد. «این حد آستانه معمولاً پس از یک دقیقه بازنشانی میشود اما بعضی از سازوکارهای محدودسازی نرخ امکان تنظیم پویای محدودیت را فراهم میکنند. به این ترتیب وقتی تعداد درخواستها بیش از حد زیاد به نظر میرسد، مدت زمان مسدودسازی درخواست نیز افزایش مییابد».
Isbitski میگوید: «وقتی مهاجمان درخواستها را خنثی میکنند در واقع ابزارهایشان را متناسب با محدودیت تعریف شده توسط پلتفرم مدنظر تنظیم میکنند». از آنجا که محدودسازی نرخ براساس الگوهای مصرفی معمولی و بدون توجه به سوءاستفادههای احتمالی تنظیم میشود، بنابراین اجرای این تکنیک معمولاً مجرمان را به نتیجه دلخواهشان میرساند. Isbitski معتقد است که بهترین روش مقابله با این روش مهاجمان، محدودسازی پویای نرخ بر اساس نظارت پیوسته بر روی فراخوانیهای API در یک نشست (session) است.
حل چالشهای کپچا برای شبیهسازی رفتار انسانی
کدهای کپچا که به صورت خودکار و در هنگام درخواست ورود به سیستم تولید میشوند از کاربر میخواهند که آنچه را که در تصویر مشاهده میکند وارد نماید. این اقدام کاربر مشخص میکند که وی یک شخص حقیقی است و نه ربات یا نرمافزار. گذراندن این مراحل برای سیستمهای رایانهای امکانپذیر نیست. از طرفی دیگر حملات پر کردن اعتبارنامه به صورت خودکار انجام میشوند. از این رو هکرها باید راهکارهایی برای دور زدن کنترلهای امنیتی طراحی و اجرا کنند.
Hunt میگوید: «افرادی هستند که در ازای دریافت مبلغ ناچیزی به صورت پیوسته چالشهای کپچا را دریافت و حل نموده و جواب را به API مربوطه ارسال میکنند». بنا به گفته او: «نرخ موفقیت این تکنیک بسیار زیاد است. مهاجمان میتوانند به راحتی و با صرف هزینههای کوچک راهکارهای امنیتی ضد اتوماسیون را دور بزنند». Hunt معتقد است که افزایش هزینههای اجرای این حملات برای مهاجمان منجر به کاهش بازگشت سرمایه انجام چنین کاری به آنها میشود.
تغییر دادههای هدر HTTP برای گریز از شناسایی
سازوکارهای تشخیص امنیتی تلاش میکنند تا با تحلیل اطلاعات هدر HTTP مثل رشتههای مرتبط با کاربران انسانی فراخوان API را بررسی کنند ولی کارشناسان امنیت سایبری معتقدند که این ابر دادهها(metadata) به تنهایی قابل اطمینان نبوده و امکان سوءاستفاده از آنها برای هکرها وجود دارد.
Isbitski میگوید: «این اطلاعات به راحتی و با استفاده از یکسری افزونه ساده مرورگر توسط کاربر قابل کنترل هستند. مهاجمان با تفسیر پروکسیها میتوانند هدرها را تغییر داده و جهت پیشگیری از شناسایی، این تغییرات را برای مجموعهای از درخواستها به صورت خودکار انجام دهند. در صورت بررسی محدود هدر، ممکن است این درخواستها مثل درخواست یک کاربر وب، کاربر همراه، یک دستگاه اینترنت اشیا یا هر چیز دیگری به نظر برسند».
سازمانها باید علاوه بر اطلاعات هدر HTTP، دادههای دیگر را هم بررسی نموده و به منظور شناسایی فراخوانیهای غیرمجاز API، رفتار کاربران را در هر نشست تحت نظر داشته باشند. بنا به گفته Isbitski: «این کار مستلزم جمعآوری دادههای ارزیابی API در نقاط مختلف معماری و تحلیل پیوسته جهت شناسایی ناهنجاریهایی است که میتوانند دلالت بر وقوع حمله داشته باشند».
توزیع جغرافیایی درخواستهای دسترسی به API
فهرست آدرسهای آیپی مجاز یا غیرمجاز به عنوان یک واسطه برای دسترسی به یک API تنظیم میشود. میتوانید آنها را بهگونهای پیکربندی کنید که اگر فراخوانی API توسط آیپی یا فضایی انجام گردد که پیش از این ثابت شده که مخرب است، از دسترسی به API پیشگیری کنند. مهاجمان برای دور زدن این راهکار از پروکسی استفاده میکنند. در نتیجه به نظر میرسد که درخواستهایشان از یک موقعیت جغرافیایی متفاوت ارسال شده است.
Chris Morgan تحلیلگر ارشد هوش تهدید سایبری در شرکت Digital Shadows میگوید: «این تکنیک میتواند منجر به تغییر برچسب جغرافیایی مهاجم شده و به این ترتیب ابزارهای نظارت بر روی شبکه تصور میکنند که این بستهها از سمت آیپیهایی (که با آدرس اصلی مهاجم تفاوت دارند) ارسال شدهاند». مهاجمان همچنین از تونلهای شبکه برای پوشش آدرسهای آیپیشان استفاده میکنند.
بنا به گفته Isbitski: «مهاجمان ابزارهای رایانش ابری را نیز برای اجرا و توسعه حملاتشان بکار میگیرند. سازمانها معمولاً به آدرسهای آیپی این سرویسهای ابری اعتماد دارند. از این رو مجرمان سایبری میتوانند حملات خود را بدون دردسر اجرا کنند».
آیپیهای مبتنی بر ابر به ویژه با مدل رایانشی مخزنی بسیار متغیر هستند. بنابراین بهروز نگه داری فهرست آدرسهای آیپی مجاز یا غیرمجاز برای آنها کار چندان راحتی نیست. Isbitski میگوید: «اگر ارایهدهنده سرویس ابر فعالیتهای مهاجم را شناسایی کند، وی به یک سرویس جدید یا مدلهای رایانشی متفاوت جابجا میشود. مشابه وضعیت محدودسازی نرخ، در چنین شرایطی نیز سازوکارهای امنیتی باید پویا بوده و در صورت جابجایی منبع درخواستهای مهاجمان یا بروز رفتارهای غیرعادی، آنها را شناسایی کنند».
مقابله با حملات پرکردن اعتبارنامه
بنا به گفته Hunt: «سازمانها باید به منظور پیشگیری از حملات پر کردن اعتبارنامه، اصول امنیت کلمات عبور را ترویج داده و از راهکارهای دفاعی چند لایه و قوی برای مقابله با این حملات استفاده کنند». او میگوید: «در صورت افزایش نرخ استفاده از ابزارهای مدیریت کلمه عبور از مهاجمان پیشی خواهیم گرفت». Hunt معتقد است که انجام چنین کاری چندان دشوار نبوده و کاربران باید از تنظیم کلمات عبوری که مخاطرات تصاحب حسابهایشان توسط مهاجمان را افزایش میدهد جداً پیشگیری کنند.
Hunt میگوید: «پس از تنظیم کلمات عبور قوی و پیچیده، در مرحله بعد کاربران باید احراز هویت دو مرحلهای را بر روی حسابهای خود فعال کنند». بنا بر گفته او: «احراز هویت پیامکی و ارسال کد تأیید از طریق پیامک یک روش امنیتی قوی برای پیشگیری از دسترسی افراد غیرمجاز به حسابهای کاربریتان است». Hunt معتقد است که باید ابزارهای امنیتی لازم برای کاربران فراهم شده و استفاده از سرویسهای آنلاین نباید برای آنها سخت باشد.
در نهایت نیز باید راهکارهای دفاعی دقیق و پیچیدهای را که در صورت مشاهده ترکیب مجموعهای از علائم هشدار فعال میشوند تنظیم کنیم. بنا به گفته Hunt :«در صورت احساس خطر و جهت اطمینان بیشتر میتوانیم یک کد اعتبارسنجی به ایمیل کاربر ارسال کنیم».
Hunt بیش از هر چیز تأکید میکند که سازمانها باید مخاطرات امنیتی را در همه سرویسهای خودشان ارزیابی نموده و پیامدهای ورود غیرمجاز به حسابهای کاربران را مشخص کنند. Hunt میگوید: «ورود غیرمجاز هکر به حساب کروم یک کاربر با ورود او به حساب کیف پول رمز ارزهای قربانی کاملاً متفاوت بوده و برای هریک باید از راهکارهای کنترلی متفاوتی استفاده گردد».
منبع: csoonline