باگی ایمیلی که به سرقت گذرواژه منجر می‌شود

مهاجمین با سوء استفاده از یک باگ در سرور ایمیل Dovecot می‌توانند محتوای پیام‌ها را شنود کنند.

 باگی ایمیلی که به سرقت گذرواژه منجر می‌شود

مهاجمین با سوء استفاده از یک باگ در سرور ایمیل Dovecot می‌توانند محتوای پیام‌ها را شنود کنند. این باگ ابتدا در آگوست 2020 گزارش و در 21 ژوئن (31 خرداد) امسال وصله شد. طبق آمار Open Email Survey، نرم‌افزار Dovecot در بیش از سه چهارم سرورهای IMAP به کار می‌رود.

این آسیب‌پذیری راه را برای حمله مرد میانی (MITM) باز می‌کند. Fabian Ising و Damian Poddebniak از پژوهشگران دانشگاه علوم کاربردی مونستر آلمان، این باگ را کشف کرده‌اند. طبق گزارش آنها این آسیب‌پذیری به مهاجم مرد میانی که بین کلاینت و Dovecot قرار گرفته، اجازه می‌دهد تا دستورات رمز نشده را درون محتوای رمز شده TLS جاسازی کند. در نتیجه، اعتبارنامه و متن ایمیل کاربر به مهاجم ارسال می‌شود.

این آسیب‌پذیری که دارای شناسه CVE-2021-33515 است، توسط تولیدکننده نرم‌افزار دارای اهمیت «متوسط» در نظر گرفته شده، اما شرکت Tenable آن را «بحرانی» نامیده است. Tenable شرکت تولیدکننده نرم‌افزار Nessus است که برای اسکن آسیب‌پذیری‌های شبکه به کار می‌رود و ماژولی نیز برای تشخیص این آسیب‌پذیری ارائه داده است.

 

دور زدن TLS و گواهی‌ها

آسیب‌پذیری مذکور از نقصی در پیاده‌سازی دستوری به نام START-TLS نشئت می‌گیرد. TLS پروتکلی است که امکان رمزگذاری پیام رد و بدل شده را فراهم می‌کند. START-TLS دستوری است که امکان استفاده از TLS را برقرار می‌کند. ابتدا سرور با یک پیام START-TLS به کلاینت خبر می‌دهد که از TLS پشتیبانی می‌کند. سپس کلاینت با ارسال یک پیام START-TLS تمایل خود را برای استفاده از TLS ابراز می‌کند. از این پس، همه پیام‌های منتقل شده در کانال، در قالب TLS ارسال می‌شوند.

در گزارش آسیب‌پذیری آمده است: ما کشف کردیم که Dovecot دچار یک مشکل تزریق دستور در START-TLS است. این باگ به مهاجم اجازه می‌دهد که ویژگی‌های امنیتی SMTP را دور بزند. به عنوان مثال، یک ویژگی امنیتی SMTP این است که می‌تواند لاگین رمز نشده را ممنوع کند.

علاوه بر آن، مهاجم می‌تواند یک حمله تثبیت نشست (session fixation) را راه‌اندازی کند که ممکن است به سرقت اعتبارنامه‌ها، از جمله نام کاربری و گذرواژه SMTP منجر شود. تثبیت نشست نوعی حمله است که پس از لاگین کاربر، مهاجم نشست بین سرور و کلاینت را سرقت می‌کند.

به منظور انجام حمله، مهاجم باید ابتدا یک حساب کاربری مجاز روی سرور ایجاد کند. پس از آن، وی منتظر برقراری یک اتصال رمز شده روی پورت 465 از سوی یک کاربر قربانی می‌ماند. به محض اتصال کلاینت، مهاجم یک اتصال جداگانه START-TLS را با سرور برقرار می‌کند و دستور بدخواهانه خود (مثل دستور لاگین) را تزریق می‌کند.

به علت نقص در پیاده‌سازی START-TLS در Dovecot، مهاجم می‌تواند به نشست لاگین کند و کل ترافیک را از سرور SMTP قربانی مورد هدف به نشست خود هدایت کند. مهاجم اعتبارنامه کامل قربانی را از صندوق پیام خود می‌خواند، بدون آنکه هیچ خدشه‌ای در پروتکل TLS یا گواهی آن اتفاق افتاده باشد. این دو محقق، باگ را در قالب یک حمله اثبات مفهوم به نمایش گذاشته‌اند.

 

به‌روزرسانی

به‌روزرسانی‌ای برای رفع این آسیب‌پذیری روی توزیع اوبونتو موجود است. در واقع، با به‌روزرسانی به نسخه v2.3.14.1 و بالاتر Dovecot، این آسیب‌پذیری رفع می‌شود. البته پیش از وصله شدن آسیب‌پذیری، راه‌هایی برای برطرف کردن آن وجود داشت. برای مثال، می‌توانید در پیکربندی Dovecot، START-TLS را غیرفعال کرده و روی پورت‌های 993، 465 و 995 تنها اجازه برقراری اتصالات TLS را بدهید.

توجه کنید که پیکربندی کلاینت و غیرفعال کردن START-TLS روی آن، کافی نیست. مقابله با حمله باید از سمت سرور انجام شود، زیرا هر اتصال TLSی تحت تأثیر آسیب‌پذیری قرار دارد.

 

منبع: threat post

کلمات کلیدی