به عنوان یک توسعه دهنده وب، یکی از مواردی که همیشه برایم جالب بوده شیوههای نفوذ به یک وبسایت و یا هک آن است. خبری که امروز در روی اینترنت پخش شد مبنی بر هک وبسایت تویتر باعث شد جستجو در مورد نحوه هک شدن تویتر را آغاز کنم مطلبی که درادامه خواهید خواند حاصل وبگردیهای امشب من است.
همانطور که میدانید مسئولان سایت تویتر امروز علت از کار افتادن سایت خود را تغییر در DNS Record سایت اعلام کردند اما چگونه میتوان DNS Record یک وب سایت را تغییر داد.
سامانه نام دامنه یا DNS چیست؟
DNS مخفف عبارت Domain Name Service میباشد. وقتی میخواهید وارد سایتی شوید، باید آدرس وب سرور آن را بدانید. آدرس وب سرور با IP مشخص میشود. اما به خاطر سپردن آدرس IP دشوار است. میتوان به جای IP از نام دامنهها استفاده کرد. برای هر IP یک نام دامنه در نظر گرفته شده است. مثلا IP آدرس گوگل ۷۴.۱۲۵.۶۷.۱۰۰ است. که شما برای دسترسی به گوگل میتوانید از ip یا آدرس www.google.com استفاده کنید. (برگرفته از ویکی پدیا)
هکرها با تغییر DNS Record تلاش میکنند که، یک نام دامنه به آدرس IP به جز IP اصلی آن متصل شود در واقع با این کار آنان بازدید کنندگان سایت را به سایت دیگری هدایت میکنند . به عنوان مثال تصور کنید شما میخواهید برای آگاهی از اخبار روز به سایت سیانان با نام دامنه www.cnn.com مراجعه کنید. مرورگر خود را باز میکنید و آدرس فوق را در نوار آدرس تایپ میکنید و کلید اینتر را میزنید.
در پشت صحنه چه اتفاقی میافتد؟
مرورگر یک تقاضا به سرور سامانه نام دامنه ( DNS SERVER ) ارسال میکند تا IP معادل با نام دامنه www.cnn.com را دریافت کند و در پاسخ، سرور سامانه نام دامنه ، IP دامنه فوق را به مرورگر شما باز میگرداند مرورگر شما پس از دریافت IP سایت سیانان ، به آن متصل شده و محتویات سایت را نمایش میدهد.
اما یک دقیقه صبر کنید اینبار به جای وب سایت سیانان یک صفحه نمایش داده شده است که بر روی آن نوشته شده وبسایت سیانان بسته شده به دلیل آنکه آنها دیگر نمیتوانند پولی برای وبسایت خود پرداخت کنند! در این هنگام ممکن است شما این خبر را به دوست خود منتقل کنید ولی او در پاسخ میگوید مطابق هر روز مشغول خواندن اخبار روز از سایت سیانان است!
اما چگونه هکرها DNS Record یک دامنه را تغییر می دهند؟ آنها اینکار را به شیوههای متفاوتی می توانند انجام دهند که در ادامه به آنها اشاره میشود.
الف ) آلوده کردن کش سامانه نام دامنه ( DNS Cache Poisoning )
همانطور که میدانید یک DNS Server نمی تواند اطلاعات مربوط به همه دامنهها و آیپیها را نگهداری کند به همین دلیل اطلاعات را کش میکند. در واقع یک DNS Server فقط اطلاعات مربوط به نام دامنههایی را نگهداری میکند که اجازه آن را دارد و چنانچه تقاضایی برای ارسال IP یک دامنه دریافت کند که دامنه مورد نظر در محدوده دامنه و آپیهای خودش نباشد در مرحله اول به کش خود مراجعه میکند چنانچه اطلاعات مورد نظر در کش سرور نباشد از یک DNS Server دیگر که دربرگیرنده اطلاعات دامنه درخواست شده میباشد، تقاضای ارسال IP دامنه را میکند . DNS Server اولیه پس از دریافت اطلاعات از سرور دوم، آنرا برای مدتی در کش خود نگهداری میکند تا بتواند به درخواستهای آتی سریعتر پاسخ دهد.
هکرها از همین مسئله سواستفاده کرده و تلاش می کنند کش DNS Server را آلوده کنند.
مراحل کار :
هکرها دارای یک وب سایت ( به عنوان مثال با نام دامنهwww.attacker.com ) هستند که بر روی آن یک DNS Server هک شده ( به عنوان مثال با نام ns.attacker.com) وجود دارد گفتیم یک سرور هک شده بدین معنا که آنها رکوردهای اطلاعاتی دامنهها را آگاهانه تغییر دادهاند به عنوان مثال چنانچه آی پی آدرس وبسایت سیانان ۲۱۲.۱۵۳.۳۲.۶۵باشد آنها رکورد اطلاعاتی وبسایت سیانان را به شکل زیر تغییر داده اند
www.cnn.com=172.50.50.50
مرحله اول) هکر(ها) یک تقاضا به DNS Server شما برای سایت www.attacker.comارسال میکنند.

مرحله ۲ ) DNS Server شما اطلاعات مربوط به نام دامنه www.attacker.com را ندارد بنابراین یک تقاضا به DNS Server هکرها (ns.attacker.com) ارسال می کند.

مرحله ۳ ) سرور آلوده هکرها به سرور شما پاسخ داده اما علاوه بر اطلاعات مربوط به نام دامنه www.attacker.com سایر رکوردهای اطلاعاتی خود را نیز برای سرور شما ارسال می کنند.

مرحله۴ ) هکرها IP وب سایت خود را از DNS Server شما دریافت میکنند اما برای آنها هدف واقعی ارسال رکوردهای آلوده به کش سرور شما بود که انجام شد. توجه به این نکته ضروری است که در این حالت سرور شما آلوده نشده بلکه فقط کش آن تا زمانی که پاک نشده و یا بهروزرسانی نشود آلوده خواهد بود.

مرحله ۵) کاربری از طریق DNS Server شما تقاضای IP وبسایت سیانان را میکند در این حالت سرور شما به جای ارسال ۲۱۲.۱۵۳.۳۲.۶۵ که آیپی واقعی وبسایت سیانان است آیپی ۱۷۲.۵۰.۵۰.۵۰ را به مرورگر کاربر ارسال می کند و در نهایت کاربر به وبسایت هکرها هدایت میشود.
حتی با تغییرات اندکی هکرها می توانند فقط ترافیک وبسایت سیانان را به وبسایت دیگری منتقل کنند در حالیکه کاربر همچنان اطلاعات وبسایت سیانان را در مرورگر خود مشاهده میکند.
ادامه دارد …



















مطلب خیلی جالب و خوبی بود
ممنون
سلام
وبلاگ جالبی دارید.
موفق باشید.
خیلی جالب بود
thanks a lot for your info about this
ممنون بالاخره یه جایی پیدا کردم که مختصر و مفید توضیح داده شده