آسیب پذیری‌ها

شرح آسیب پذیری در سرورهای Microsoft Exchange
۱۸ خرداد ۱۳۹۹
تعداد بازدید: 0

شرح آسیب پذیری در سرورهای Microsoft Exchange


CVE-2020-0688

در این مطلب قصد داریم به شرح آسیب­‌پذیری Microsoft Exchange که در بخش اخبار آسیب پذیری وب سایت آرمان داده پویان در ماه فوریه اطلاع رسانی شد، بپردازیم. ما یک ماه بعد از انتشار این آسیب‌پذیری و همزمان با انتشار گزارشات مبتنی بر سو استفاده از این آسیب‌پذیری، در خصوص نصب وصله‌های امنیتی برای برطرف کردن این آسب‌پذیری تاکید کردیم. این آسیب‌پذیری از درجه مهم می‌باشد، همچنین احتمال اینکه هنوز در برخی سازمان‌ها علی رغم اطلاع رسانی‌های پی در پی وصله نشده باشد، بالا می‌باشد.

این آسیب پذیری در ECP یا Exchange Control Panel ک بخشی از سرور Microsoft Exchange است وجود دارد و دلیل آن عدم پیاده سازی صحیح ایجاد کلید رمزنگاری منحصر به فرد در زمان نصب سرور Exchange می‌باشد. مقادیر validationKey و decryptionKey در همه ارتباطات بین سرور و کلاینت ها که در فایل web.config پیکربندی می شود، یکسان است و از یک مقدار تصادفی به عنوان کلید در زمان نصب استفاده نمی شود. تصویر زیر نشان دهنده نمونه ای از این پیکربندی می باشد. مهاجم با استفاده از این آسیب پذیری امکان ارسال کد از راه دور به سمت سرور را دارد که به نام Remote Code Execution و با نمره CVSS بالا ارائه شده است. این آسیب پذیری در سرویس Microsoft Exchange قرار دارد و مهاجم تنها با داشتن یک حساب کاربری در سمت سرور می تواند اقدام به سواستفاده از این آسیب پذیری می‌نماید.

این کلیدها برای تامین امنیت ViewState به کار برده می شود. مقدار ViewState دارای اطلاعات Serialize شده ای از سمت سرور است که در برنامه هایی که تحت زبان برنامه نویسی ASP.NET است، در سمت کاربر ذخیره می گردد. کاربر نیز با استفاده از پارامتر __VIEWSTATE در کوکی این مقدار را به سمت سرور بر می­‌گرداند. با توجه به این که این مقدار در سمت سرور Deserialize می گردد، مهاجم در این فیلد اقدام به ارسال کد مخرب Serialize شده خود می نماید. سرور کد مخرب را Deserialize می نماید و اقدام به اجرای کدهای مخرب در قالب ماژول ECP می کند و از این طریق امکان سواستفاده نمودن از این آسیب پذیری وجود دارد. کاربر احراز هویت شده در سامانه، مقادیر ViewStateUserKey و __VIEWSTATEGENERATOR را از یک نشست می گیرد و مقدار ViewStateUserKey را از کوکی ASP.Net_SessionID را از یک فیلد Hidden دریافت می‌کند.

حال که مهاجم تمام اطلاعات را دارد، می تواند سربار مخرب خود را با استفاده از ابزار کاربردی YSoSerial.net تولید نماید. سپس درخواست خود را با URL Encode نمودن سربار تولید شده و ارسال در فیلد __VIEWSTATE  به سمت سرور ارسال نموده و اقدام به اجرای کد مخرب اش از راه دور می‌نماید.

سازمان‌هایی که هنوز این آسیب‌پذیری را وصله نکرده‌اند

مایکروسافت راهکاری برای شناسایی Exchange Server build numbers از طریق صفحات لاگین OWA و ECP فراهم کرده است البته از این طریق مهاجمان نیز می‌توانند تشخیص دهند کدام سرورها آسیب‌پذیر هستند. بسیاری از سازمان‌ها در نصب وصله‌های امنیتی برای سرور Microsoft Exchange خود ماه‌ها و یا سال‌ها تاخیر دارند که این موضع می‌تواند به راحتی مورد سو استفاده مهاجمان قرار گیرد. پس اگر تا به حال اقدام به نصب وصله‌های امنیتی مربوط به این آسیب‌پذیری نکرده‌اید این کار را هر چه سریع‌تر انجام دهید. مایکروسافت در فوریه امسال اقدام به ارائه وصله‌های امنیتی برای سرورهای ۲۰۱۰، ۲۰۱۳، ۲۰۱۶ و ۲۰۱۹ نمود.

نسخه Microsoft Exchange Server  مقاله پشتیبانی
۲۰۱۰ Service Pack 3 ۴۵۳۶۹۸۹
۲۰۱۳ Cumulative Update 23 ۴۵۳۶۹۸۸
۲۰۱۶ Cumulative Update 14 ۴۵۳۶۹۸۷
۲۰۱۶ Cumulative Update 15 ۴۵۳۶۹۸۷
۲۰۱۹ Cumulative Update 3 ۴۵۳۶۹۸۷
۲۰۱۹ Cumulative Update 4 ۴۵۳۶۹۸۷

آرمان داده پویان ارائه دهنده تست نفوذ شبکه

برای اطلاعات بیشتر با ما تماس بگیرید


تازه ترین ها