سیر تا پیاز حملات DNS
امروز اگر بخواهیم در فضای اینترنت جستجو کنیم یا وبسایتی را باز کنیم، کافی است آدرس وبسایت را به حروف الفبا بنویسیم تا چند ثانیه بعد وبسایت پیش چشممان حاضر و آماده باشد. نیازی به حفظ کردن دنبالههای طولانی اعداد نیست. یک سیستمی مابین ما و اینترنت وجود دارد که «Teskaco.com» را به یک آدرس IP قابل درک برای شبکه تبدیل میکند. نامش DNS است. مترجم URL به آدرس IP.
متأسفانه تلاش مهاجمان برای به خطر انداختن DNS بیشتر از چیزی است که تصور می کنید. آنها تلاش میکنند DNS را به روشهای مختلف دستکاری کنند، اما هیچ چالشی بیچاره نیست! همیشه راهی برای محافظت از شما و کسبوکارتان هست. اگر مشتاقید درباره حملات DNS و روشهای مقابله با آنها بیشتر بدانید، تا انتهای این مقاله همراه ما باشید.
Dns چیست؟
سیستم نام دامنه (DNS) یک پروتکل شبکه است که نام دامنه را به آدرس ip تبدیل میکند تا برای کامپیوترها قابل جستجو و شناسایی باشند. وقتی کاربر نام دامنه را در مرورگر تایپ میکند، برنامهای به نام DNS Resolver روی سیستم عامل مشتری، آدرس IP عددی دامنه را ابتدا از محل حافظه نهان لوکال DNS و بعد از سرورهای DNS دیگر جستجو میکند. بهمحض آنکه آدرس IP یافت شد، بهعنوان یک مقدار عددی برمیگردد تا به نام دامنه تبدیل شود. این آدرس برای استفادههای بعدی در حافظه نهان DNS ذخیره میشود.
حمله DNS چیست؟
حملات DNS با هدف سوء استفاده از آسیبپذیریهای سرویس DNS اتفاق میافتند. تمرکز حمله روی زیرساخت DNS است و تلاش میکند سرویس را از دسترس خارج کند. این حملات را میتوان به دو دسته تقسیم کرد:
- حملاتی که DNS را غیرفعال میکنند.
- حملاتی که بر پاسخ DNS تأثیر میگذارند.
در ادامه رایجترین انواع حملات DNS را با هم مرور میکنیم.
انواع حملات DNS
هککردن سرور DNS برای هکرها سودمند است. چون هم اطلاعات ارزشمندی در اختیارشان قرار میدهد و هم کاربران را به انجام عمل خاصی مثل فیشینگ یا نصب یک بدافزار هدایت میکند. روشهای مختلفی برای راهاندازی حملات DNS وجود دارد که در اغلب آنها از ارتباط متقابل بین کلاینتها و سروها استفاده میشود. از جمله:
حمله ربودن DNS یا DNS hijacking
حمله هایجک یا تغییر مسیر DNS زمانی رخ میدهد که کوئریهای DNS اشتباه حل شوند و کاربر را به وبسایتهای جایگزین (اغلب مخرب) هدایت کنند. هکرها نام دامنه وبسایت مخرب را معمولا شبیه دامنه وبسایت واقعی با تفاوت جزئی در نظر میگیرند تا قانونی به نظر برسد. در همین حملات از بدافزارها برای آلودهکردن دستگاه مشتری استفاده میشود که تنظیمات DNS محلی را تغییر میدهند. در این شرایط تمام درخواستهای DNS به سرور مهاجم مثل کرم DNSChanger ارسال میشود.
حمله سیل DNS یا DNS flood
سیل DNS نوعی حمله انکار سرویس توزیع شده (DDoS) است که در آن مهاجم سرورهای DNS یک دامنه را بمباران میکند تا در کار DNS Resolver اختلال ایجاد کند. اگر آدرس سایت، API یا برنامه وب یافت نشود، سرویس در معرض خطر قرار میگیرد و قادر به ادامه عملکرد خود نیست.
از انواع حملات سیل DNS میتوان به سیل ICMP، SYN، UDP و HTTP اشاره کرد.
حمله انعکاس و تقویت DNS یا DNS reflection amplification
شکل دیگری از حملات DDoS، حملات انعکاس و تقویتی حجم هستند. در این حملات مهاجم از حلکنندههای باز و آزاد DNS استفاده میکند تا سرور یا شبکه هدف را با ترافیک تقویتشده تحت تأثیر قرار دهد و آن را از دسترس خارج کند.
در این حملات مهاجم با استفاده از بات نت کوئریهای کوچک و مشابهی به سمت سرور قربانی سرازیر میکند تا پاسخهای بزرگتری دریافت کند. یعنی درخواستی با یک آدرس IP جعلی انجام میشود، DNS Resolver (حلکننده) به آن پاسخ میدهد و این پاسخ حجم عظیمی از ترافیک را به سمت سیستم هدف ارسال میکند. نهایتا هم حمله پنهان میماند و هم مهاجم به هدف خود که افزایش ترافیک شبکه است، دست پیدا میکند.
مطالعه مقاله HSTS چیست و چرا باید از آن استفاده کنیم؟ از دست ندهید.
حمله تونل زنی DNS یا DNS tunneling
حملات تونلزنی DNS سالهاست بهعنوان یک خطر جدی سرورها و شبکههای سازمانی را تهدید میکنند. در این حمله مهاجم از پروتکل DNS برای تونلزنی بدافزارها و سایر دادهها سوءاستفاده میکند. یعنی با کامپیوتر ارتباط برقرار میکند تا بدافزار و سایر دادههای مخرب را از طریق یک مدل کلاینت-سرور به سمت کامپیوتر قربانی بفرستد، بیآنکه قربانی بداند با یک سرور آلوده مکالمه میکند.
Resolver DNS تونلی بین قربانی و مهاجم میسازد که کوئریهای حاوی دادههای پنهان را انتقال میدهد. در این حملات علاوه بر اینکه اطلاعات ارزشمندی در اختیار مهاجم قرار میگیرد، هکر میتواند برنامه یا پروتکل مخربی به سمت کامپیوتر قربانی بفرستد.
مقاله کلاینت چیست را نیز مطالعه کنید.
حمله مسمومیت کش یا Cache poisoning
اساس این حمله ذخیره آدرس IP های نادرست در کش DNS است. از آنجایی که DNS Resolver ابتدا محل حافظه پنهان DNS را جستجو میکند، اگر آدرس نادرستی آنجا ذخیره شود، به اشتباه آن را بهعنوان آدرس اصلی بازیابی خواهد کرد. در این حملات مهاجم هویت یک نِیم سرور DNS را جعل میکند، درخواستی به سمت ریزالور DNS میفرستد و قبل از آنکه نِیم سرور اصلی پاسخ دهد، DNS Resolver به این درخواست پاسخ میدهد. بعد از این کار، وقتی حافظه پنهان «مسموم» شد، کاربر هر بار به آدرس مخرب هدایت میشود. این مشکل تا وقتی ttl به پایان نرسد یا حافظه پنهان DNS پاک نشود، برقرار خواهد ماند.
حمله به دامنه فانتوم یا Phantom Domain Attack
فانتوم نوعی حمله انکار سرویس است که نِیم سرور معتبر را هدف قرار میدهد. وقتی سرور DNS آدرس IP را نمیداند، آن را در سایر سرورهای DNS متصل جستجو میکند. هدف این حمله در درجه اول این است که سرور DNS Resolver برای مدتزمان طولانی منتظر پاسخ بماند و بعد منجر به خرابی یا مشکلات عملکرد DNS شود. در حمله به دامنه فانتوم مهاجم تلاش میکند با سوء استفاده از DNS Resolver، منابع موجود را بهکار بگیرد.
حمله بروت فورس DNS یا DNS Brute Force Attack
در فرایند سرشماری DNS (DNS enumeration) تمام منابع تحت نام دامنه کشف میشوند. طی این فرایند منابعی که ممکن است به عنوان نقطه ضعف سیستم مورد دسترسی غیرمجاز قرار گیرند، شناسایی میشوند. مهاجم با حمله بروت فورس درخواست جستجوی DNS را برای چندین زیردامنه پرکاربرد یا چند زیردامنه تصادفی ارسال میکند تا خدمات مرتبط با نام دامنه را کشف کند. این حملات را میتوان با حجم زیادی از درخواستها برای منابع نامعتبر DNS شناسایی کرد.
نحوه محافظت در برابر حمله DNS
حالا که آشنایی نسبی با حملات DNS و برخی از رایجترین آنها پیدا کردید، وقت آن است که با روشهای مقابله با این حملات آشنا شوید. کاری که از دست شما برای محافظت در برابر حملات DNS برمیآید و اجرای آن شرط عقل است. در ادامه چند تکنیک کاربردی به شما معرفی میکنیم.
- DNS Resolver خود را خصوصی و محافظت شده نگه دارید. فقط کاربران داخل شبکه باید به ریزالور دسترسی داشته باشند.
- recursive DNS servers را سفت و سخت کنید تا از آنها در برابر دسترسیهای ناخواسته و دستکاریهای کنترل دسترسی محافظت کنید.
- معماری DNS خود را خوب بشناسید و آن را بهدرستی ایمن کنید.
- ثبت کوئریهای ورودی و خروجی DNS و نظارت بر دادههای پاسخ برای تشخیص هرگونه ناهنجاری.
- پیکربندی امن DNS با استفاده از یک پورت رندم بهجای درگاه استاندارد DNS (پورت UDP 53) و رندم کردن شناسه کوئری.
- استفاده از هاستهای ابری معتبر و قانونی
- رمزگذاری رجیستر
- استفاده از ابزارهای IDS\IPS
- تنظیم دقیق فایروال محیطی
- کاهش نرخ پاسخ سیستم به بستههای ICMP
- کلیک نکردن بر روی پیوندهای مشکوک
- باز نکردن ایمیلهای منابع نامعتبر یا ناشناخته
- خاموش کردن DNS resolver های غیرضروری
- جداسازی Server name از DNS resolvers
- اعمال پچها
- فعال بودن DNSSEC
- استفاده از یک اتصال VPN رمزگذاری شده
پیشنهاد می دهیم مقاله اکتیو دایرکتوری چیست به زبان ساده را مطالعه نمایید.
کلام آخر
Dns بهعنوان یک عنصر حیاتی در بستر اینترنت، هدف انواع و اقسام حملات سایبری است که وبسایتها و برنامههای کاربردی را از کار میاندازند و نتیجهای جز خرابی و خسارت ندارند. البته با اولویت دادن به امنیت و اتخاذ تدابیر اصولی برای کاهش تهدیدات، میتوان جلوی خرابیها را گرفت، خسارتها را کاهش داد و اعتماد مشتری را جلب کرد.
امنیت DNS موضوع پیچیدهای به نظر میرسد، اما سازمانهایی که در این حوزه فعالیت میکنند، با بهکارگیری استراتژیهای تخصصی به کسبوکارها کمک میکند امنیت DNS را بهبود بخشیده و از دامنههای خود محافظت کنند. پیشنهاد میکنیم با بهرهگیری از این خدمات مهندسیشده، در پی یک چاره جدی برای مقابله با حملات dns باشید.
شما چه اطلاعات بیشتری درباره ناامنیها و حملات dns دارید؟ چه روشهایی برای مقابله با آنها میشناسید؟ لطفا نظراتتان را با ما در میان بگذارید.
دیدگاهتان را بنویسید