از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
آموزش غیرفعال کردن Recursion در Windows DNS Server
چطور از حملات DNS Amplification در DNS سرور ویندوز با غیر فعال کردن Recursion جلوگیری کنیم
سرفصلهای مطلب
همانطور که میدانید حملات DNS Amplification یکی از روشهای قدیمی است که بیش از 15 سال قدمت دارد اما به دلیل گستردگی سایتها و سرورهای اینترنتی است که در سالهای اخیر به تعداد آنها به شکل سرسام آوری اضافه شده است با قابلیت Recursion در DNS سرور ها اتفاق میافتد که یک از راه های جلوگیری از آن در سرورهایی که به به Recursion نیاز ندارند غیر فعال کردن آن است ،
نکته : اگر سرور شما نیاز واقعی به انجام DNS Recursion دارد ( مثلا برنامه ای روی سرور دارید که لازم است از سرورهای دیگر DNS Resolve انچام دهد ) میتوانید بجای غیر فعال کردن کامل این قابلیت ، با استفاده از ایجاد یک rule در فایروال ویندوز محل نصب سرور درخواستهای ورودی DNS را مسدود و یا تحت Scope خاص قرار دهید
DNS Recursion چیست و چطور برای حمله استفاده می شود
این قابلیت به DNS سرورها این امکان را میدهد که به درخواست های resolve ( کوئری های DNS to IP و انواع دیگر کوئری ) حتی اگر دامین مورد پرسش در zone های خودش نباشد پاسخ دهد ، برای این کار ابتدا لازم است تا DNS سرور شما آن درخواست که در حوزه خودش نیست را به سرور های root تعریف شده در تنظیمات و یا DNS سرورهای پابلیک ارسال کرده و پس از دریافت پاسخ آن را به پرس جو کننده ارسال کند ، به این شکل پاسخ به شکل Non-authoritative answer خواهد بود، دقیما مانند زمانی که شما دامین های عمومی را از DNS سرورهای عمومی و نه خود سرور اصلی استعلام می کنید
با این وضعیت حمله کننده قادر خواهد بود با ارسال زیاد درخواست های نامعتبر ( و یا شاید معتبر ) از طریق سرور شما و سرورهای دیگری که این قابلیت بصورت باز و بدون محدودیت روی آنها فعال استسرور قربانی را را مورد حمله قرار دهد و آن سرور هم با درخواست های زیادی مواجه شود و پساخ آنها را به سرورهای مبدا بفرستد در نتیجه IP درخواست کننده اصلی که حمله کننده است را مخفی کند و جلوگیری از منبع خمله برای سرور قربانی سخت خواهد شد چون تعداد زیادی درخواست را بصورت همزمان از سرورهای مختلف و با تعداد زیاد دریافت خواهد کرد و سرور اصلی نیز مشخص نیست ، این حمله هم برای سرور قربانی نهایی و سرور Open باعث ایجاد تاخیر در پاسخ به درخواست ها و یا قطع کامل امکان ارائه Response خواهد شد
تنظیمات برای مسدود کردن Recursion روی فایروال ویندوز
- در ویندوز 2003 : رویهای مربوط به DNS.exe یا DNS با استثنا های پورت 53 را برداید و یا آنها را کامل حذف کنید
- در ویندوز 2008و بعد از آن : رولهای مربوط به DNS TCP و DNS UDP را غیر فعال کنید و یا تحت یک Scope خاص قرار دهید
غیر فعال کردن DNS Recursion در DNS سرور ویندوز
برای غیر فعال کردن درخواستهای بازگشتی روی DNS سرور ویندوز طبق مراحل زیر سرور خود را تنظیم کنید
- DNS Manager باز کنید ( برای باز کردن آن به Server Manager مراجعه کنید و یا در Administrative Tools روی DNS کلیک کنید )
- در درخت کنسول روی DNS سرور مد نظر کلیک راست کنید و روی Properties کلیک کنید
- روی تب Advanced کلیک کرده و در بخش server options تیک Disable recursion را بزنید
- در تب Root Hints هم همه سرورهای تعریف شده را حذف کنید و روی OK کلیک کنید
- سرویس DNS را مجدد راه اندازی ( Restart ) کنید ( برای ریاستارت سرویس روی سرور کلیک راست کرده و آن را ریست کنید و یا به Control Panel > Services بروید )
آموزش تصویری غیرفعال کردن DNS Recursion
چطور recursion را غیر فعال کنید :
چطور Root Hints ها را در DNS سرور ویندوز پاک کنید
بررسی غیر فعال بودن Recursive DNS در سرور DNS
- محیط CMD را در سیستم لوکال خود باز نمایید.
- سپس دستور Nslookup را وارد کنید.
nslookup
- در این مرحله دستور server را وارد و سپس IP سرور مورد نظر را وارد کنید تا به سرور متصل شود.
server 1.2.3.4
- در انتها می توانید به عنوان مثال از Google.com جهت بررسی فعال بودن DNS Recursion سرور استفاده نمایید.
- در صورت غیر فعال شدن صحیح Recursion در صورتی استعلام سایتی مثل google.oom Recursion درخواست ارسال شده پیام خطا خواهد داشت
Server: rasanegar.com Address: 1.2.3.4 *** rasanegar.com can't find google.com: Query refused
اطلاعات بیشتر
برای اطلاعات بیشر به مطلب زیر مراجعه کنید
http://technet.microsoft.com/en-us/library/cc771738.aspx
برای اینکه بدانید چرا DNS recursion بابد برای دسترسی عمومی بسته باشد لینک های زیر را نگاه کنید