اخیرا در پروتکل Active Directory Federated Services یا به اختصار ADFS متعلق به شرکت مایکروسافت، آسیبپذیری جدیدی کشف شده که در کنار سرویس احراز هویت چندمرحلهای (Multi-Factor Authentication)، تمام شبکهی سازمان را در معرض حمله مهاجمین قرار میدهد.
این نقص، احراز هویت دو مرحلهای که در یک حساب کاربری استفاده میشود را به سایر حسابهای کاربری سازمان تعمیم میدهد در نتیجه اگر یک کاربر دچار نقض امنیتی شود تمامی حسابهای کاربری در سازمان، تحت تاثیر قرار خواهند گرفت. اکثر سازمانها برای حفاظت از شبکهی خود، به همراه احراز هویت چندمرحلهای از رمز عبوری استفاده میکنند که شامل تلفن یا Tokenها میباشد.
اما اگر یک مهاجم بتواند از سد رمز عبور و Two-Factor Authentication عبور کند، با وجود این ضعف در پروتکل MFA در سیستم احراز هویت مایکروسافت، آن مهاجم خواهد توانست با استفاده از همان احراز هویت دو مرحلهای تمام سازمان را در معرض خطر قرار دهد.
این امر برای مهاجمی که به هدف خود، دسترسی محدودی پیدا کرده و خواهان گسترش حملهی خود است، راهکار ارزشمندی محسوب میشود.
نحوه کار آسیبپذیری ADFS
با فرض اینکه آلیس و باب هر دو در یک شرکت کار میکنند و هر دو در Active Directory یکسانی هستند، کافی است مهاجم، نام کاربری و رمز عبور آلیس را بدست بیاورد تا نام کاربری، رمز عبور و همچنین Second Factor باب را نیز شناسایی نماید.
مهاجم میتواند از طریق تهدید داخلی، از حسابهای دارای دسترسی پایین (Low Privileged) و یا از طریق مهندسی اجتماعی به Helpdesk دسترسی پیدا کرده و احراز هویت Second Factor را مجددا تنظیم نماید.
مهاجم از حملههای Phishing ،Brute-Force و روشهای دیگر براساس قابلیت سطح دسترسی استفاده مینماید تا نام کاربری و رمز عبور آلیس را بدست آورد.
سپس مهاجمان خارجی میتوانند با استفاده از روش مهندسی اجتماعی یکسانی که دارای احراز هویت Second Factor نیست، نام کاربری و رمز عبور باب را نیز بدست آورند.
اگر باب Second Factor ثبت نکرده باشد، مهاجم تلفن خود را به عنوان Second Factor تنظیم میکند، در نتیجه ارائه دهندهی MFA فرایند ثبت را به همراه مهاجم طی میکند. این امر حساب کاربری باب را در اختیار مهاجم قرار میدهد. مهاجم اکنون علاوه بر اطلاعات اعتباری که از آلیس دزدیده قادر است به هر نحوی که تمایل دارد از این آسیبپذیری استفاده نماید.
طبق گفتهی پژوهشگران، درحالیکه Notificationهای تلفن مثالی ملموس هستند، این حمله با انواع دیگر Second Factor نیز به خوبی کار میکند. سرور AD و ارائهدهندهی MFA از MFA Context و MFA Token استفاده میکنند تا جریان احراز هویت Second Factor را تنظیم نمایند.
زمانی که مهاجم نام کاربری و رمز عبور باب را ثبت مینماید، توالی مشابهی رخ میدهد. مهاجم یک کوکی Session، MFA Context و MFA Token باب را دریافت میکند. اما این بار مهاجم میتواند جریان احراز هویت Second Factor را برای Token باب کامل نماید. این فرایند شامل ارسال Token باب به MFA Provider است که سپس Notificationی را به تلفن مهاجم میفرستد و مهاجم میتواند گزینهی «Approve» را انتخاب نماید. سپس MFA Provider تایید جریان برای Token باب را ثبت میکند.
این آسیبپذیری علاوه بر ADFS احتمالا در تمامی محصولات MFA برای ADFS نیز وجود دارد. مایکروسافت پس از آگاهی از این آسیبپذیری و تایید آن به طور مستقل، یک Patch برای حل آن منتشر نمود. پیشنهاد میشود سازمانهایی که از Microsoft ADFS استفاده میکنند، سیستم خود را Patch نمایند.