یکی از متخصصین حوزه ایمیل، به تازگی ادعا کرده است که در یک DNS غیرفعال، مواردی از مسمومیت حافظه پنهان را مشاهده کردهاست که به ویژه در دامنههای سرویس ایمیل سازمانی اتفاق افتاده است. مسموم کردن حافظه پنهان و جعل سیستمهای نام دامنه (DNS: Domain Name System) اصطلاحی است که برای حملات سایبری اجرا شده روی سرورهای DNS گفته میشود. در این حملات، با استفاده از آسیبپذیری سرورهای DNS، ترافیک از سرورهای اصلی به سمت سرورهای ناامن هدایت میشود.
نقش DNS و DNS Cache در هدایت کاربران به سرویسها
وظیفه سرورهای DNS این است که دامنهها را به آدرس IP متناظرشان ترجمه کنند. بنابراین زمانی که DNS به دلایلی، اطلاعات نادرست را به کاربر نمایش بدهند، کاربران بجای آدرس IP سرور اصلی، به سرورهای جعلی هدایت خواهند شد.
از طرفی، یکی از راهکارها برای افزایش سرعت و عملکرد بارگذاری سایتها، این است که اطلاعات DNS در حافظههای پنهان ذخیره شوند تا دسترسی به IP سرورها سریعتر انجام شود.
مسمومیت حافظه پنهان DNS یا DNS Cache Poisoning
تصور کنید حافظههای پنهان DNS با دادههای جعلی دستکاری شوند و بجای این که کاربران را به سرویس واقعی هدایت کنند، آنها را به سمت یک سرویس جعلی راهنمایی کنند.
این فرایند، مسمومیت حافظه پنهان DNS یا DNS Cache Poisoning نام دارد. DNS cache poisoning یکی از گمراهکنندهترین تهدیدات سایبری است؛ به این ترتیب که بعد از هدایت کاربر به آدرسهای جعلی، صفحاتی مشابه به سایت اصلی به کاربر نمایش داده میشود تا به راحتی وی را فریب دهد.
متخصصین بر این باورند که اخیرا طی یک مکانیسم نامشخص، حملات مسموم کردن حافظه پنهان روی دامنههای مختلف انجام شده است و دامنههایی که هدف قرار میگیرند اغلب Name Serverها یا سرورهای تبادل ایمیل برای دامنههای دیگر هستند.
برای این که با نحوه عملکرد این حملات بیشتر آشنا شویم، یک قدم به عقب برمیگردیم تا ببینیم زمانی که یک ایمیل رد و بدل میشود چه کارهایی انجام میشود. شکل زیر شمای کلی تبادل ایمیل بین دو سرویس ایمیل را نشان میدهد.
زمانی که شما یک ایمیل را برای یک کاربر ارسال میکنید، سرور ایمیل سازمانی شما برای یافتن سرور ایمیل مخاطب، یک جستجوی DNS انجام میدهد تا آدرس IP سرور MX مقصد (سرویسی که تبادل ایمیل برای دامنه مقصد انحام میدهد) را پیدا کند. پس از دریافت پاسخ، پیام شما به سمت مقصد ارسال میشود. البته این فرایند سادهسازی شده است و ممکن است قبل از اینکه پیام به مقصد نهایی خود برسد، از چندین سرور ایمیل دیگر هم عبور کند.
حال تصورکنید اگر آدرس IP مقصد به عمد دستکاری شده باشد، چطور ایمیل شما به جای مقصد، سر از جای دیگری در میاورد. در شکل زیر نشان داده شده است که درصورتی که پاسخ DNS برای آدرس IP مقصد MX تغییر کند، چگونه این فرآیند معمولی میتواند مختل شود.
پیام ایمیل به طور ناخواسته وارد آدرس IP جعلی میشود. سپس آن سرور ایمیل جعلی، پیام را به مقصد مورد نظر ارسال میکند. از آنجایی که ایمیل به صورت غیرهمزمان ارسال میشود، فرستنده و گیرنده احتمالا متوجه چیزی غیرعادی نخواهند شد. آدرس IP فرستنده در سربرگ پیام احتمالا انحراف در مسیر ارسال را نشان میدهد، اما با توجه به این که ایمیل به مقصد رسیده است ممکن است این انحراف جلب توجه نکند.
در این حالت، امکان دستکاری و تغییر محتوای ایمیل در سرور جعلی به راحتی فراهم است و همچنین اطلاعات رد و بدل شده، در صورتی که رمزنگاری نشده باشند، در سرور جعلی شنود میشوند.
تنها در شرایطی ایمیلها بدون مشکل به مقصد میرسد که کل پیام با رمزنگاری سرتاسری یا End-To-End محافظت شده باشد، در غیر این صورت، سرور میانی میتواند پیام را بخواند و تغییر دهد یا حتی محتوای مخربی به ایمیل اضافه کند.
این نوع حملات منجر به شکست رمزنگاری TLS تصادفی بین MX ها میشود که برای اطمینان از محرمانگی پیامهای در حال انتقال استفاده میشود. در این شرایط هکرها با انجام برخی تغییرات کوچک روی محتوای ایمیل (مانند تغییر شماره حساب بانکی برای یک واریز خرید و … ) میتوانند به نتایج مورد نظرشان برسند.
میتوان گفت که روش کشف این حملات ساده است، باید به دنبال دو Name Server مختلفی گشت که برای یک دامنه یکسان، A رکوردهای مختلفی را برمیگردانند. پس از کشف آنها، شبکههای توزیع محتوا نیز باید پالایش یا فیلتر شوند. برای این کار، نیاز است که دید گستردهای رویDNSهای غیرفعال در اینترنت داشته باشیم تا بتوانیم به محض اینکه دو سرورDNS مختلف، دو پاسخ مختلف ارائه میدهند، آن را ببینیم.
البته یک راهکار امن برای جلوگیری از این دست حملات وجود دارد که تحت عنوان DNSSEC شناخته میشود. در این روش، با استفاده از رمزگذاری، رکوردهای DNS دامنه رمزگذاری میشوند و امضا به رکورد دامنه اضافه میشود. در نتیجه، وقتی یک درخواست DNS دریافت میشود، سرور DNS از کلید عمومی برای تأیید امضای دیجیتال استفاده میکند. اگر امضا معتبر باشد، پاسخ معتبر است.
سایر راهحلهای امنیت ایمیل نظیر تبادل end to end، یا امضای ایمیل رمزنگاری شده، نیز بسیار کارامد هستند اما با این حال، هیچکدام از این راهکارها به اندازه کافی فراگیر نشدهاند تا بتوانند به طور کلی این حملات را خنثی کنند.