آشنایی با پروتکل UDP

- توسط: ولی نژاد
- تاریخ انتشار: ۱۷ آذر
- 0 دیدگاه
UDP مخفف عبارت User datagram protocol، پروتکلی است که برای ارتباط در سراسر اینترنت کاربرد دارد. پروتکل ارتباطی UDP برای ارسال داده هایی که به زمان حساس هستند استفاده میشود؛ این پروتکل ها در سراسر اینترنت وجود دارند. پروتکل UDP با فعال کردن انتقال داده ها قبل از ارائه توافق توسط طرف گیرنده، سرعت انتقال را افزایش میدهد. ولی، در کنار آن میتواند باعث از بین رفتن بسته ها در انتقال شود.
UDP، ممکن است باعث گم شدن بسته ها در حین رفتن از مبدا به مقصد شود. علاوه بر آن، این پروتکل میتواند اجرای حمله ی DDoS را تا حدی برای هکر ها آسانتر نماید. در هنگام استفاده از پروتکل TPC، زمانی داده ها از مبدا به سمت مقصد ارسال میشوند که گیرنده سیگنالی را برای اعلام آمادگی دریافت داده ها ارسال نماید. پس زمان تایید این جنبه های ارتباط، انتقال صورت میگیرد؛ ولی در UDP داده ها قبل از ایجاد اتصال محکم، ارسال میشوند، که این امر مشکلاتی را در راستای انتقال ایجاد و همچنین فرصتی را برای حمله ی هکرها فراهم میآورد. جهت کسب اطلاعات بیشتر درباره ی پروتکل های TPC به مقاله ی ( پروتکل کنترل انتقال (TCP) چیست؟ ) مراجعه نمایید.
نحوه ی کارکرد UDP
در مقایسه با سایر پروتکل های ذکر شده، کارکرد UPD ساده تر است. بدین صورت که کامپیوتر هدف شناسایی و بسته های داده به آن ارسال میگردند. در این پروتکل هیچ چیزی برای تعیین و نمایش ترتیب ارسال بسته ها و همینطور هیچ چیزی برای بررسی به مقصد رسیدن این داده ها وجود ندارد.
در صورت استفاده از Checksum ها در UDP، ممکن است این برنامه ها در معرض جنبه ای غیرقابل اعتماد در شبکه اصلی قرار گیرند. بنابراین، داده ها میتوانند تحویل داده شوند یا نه؛ با این حال، در صورتی که نیازی به بررسی خطا و یا تصحیح داده های ارسالی نباشد ممکن است مشکل مهمی رخ ندهد؛ بنابراین، شما میتوانید در برنامه های ویدیویی از این پروتکل استفاده نمایید.
UDP در مقابل TCP
- در TCP، ما احتیاج به اطلاعاتی میان مبدا و مقصد داده ها داریم، که این امر باعث میشود TCP پروتکلی قابل اعتماد تر از UDP باشد.
- تنها در صورتی که مبدا و مقصد در TCP به پیوند داده شوند، داده ها امکان ارسال دارند، در صورتی که در UDP احتیاجی به این پیوند نیست و داده ها بلافاصله ارسال میشوند.
- در پروتکل TCP ترتیب دریافت بسته ها قبل از شروع انتقال تایید میشود. علاوه بر آن، TCP در صورت عدم دریافت داده ها به صورت عنوان شده درخواست ارسال دوباره میکند؛ در حالی که در UDP نیازی به تایید بررسی و یا ارسال مجدد نیست.
- میزان سرعت در پروتکل UDP، نسبت به TCP بیشتر است.
- میزان اعتماد و هزینه در پروتکل TCP به نسبت UDP بیشتر است.
کاربردهای UDP
UDP برای موارد زیر استفاده میشود:
- Multicasting، چرا که UDP به خوبی با سوئیچینگ بسته کار میکند.
- پروتکل های مسیریابی مانند پروتکل اطلاعات مسیریابی (RIP)
- برنامه هایی که اطلاعات در آن ها باید به سرعت ارسال شوند.
- و…
مزایا و معایب UDP
UDP مزایای گوناگونی دارد که میتوان به موارد زیر اشاره کرد :
- عدم تاخیر در ارسال مجدد
- مناسب برای برنامه های حساس نسبت به زمان
- سرعت بالا
- پروتکلی مناسب برای پخش
- و…
از جمله معایب این پروتکل نیز میتوان به :
- عدم تضمین در ارسال و دریافت بسته ها
- عدم تایید امادگی توسط رایانه ی دریافت کننده داده ها
- نیود هیچ گونه محافظت در برابر بسته های تکراری
- عدم وجود تضمین در دریافت تمامی بسته های ارسالی
- و… اشاره کرد.
ساختار بسته هدر UDP
UDP دیتاگرام ها را با یک هدر UDP، که شامل چهار فیلد مجموعاً هشت بایت است، می پوشاند.
بخش های گوناگون یک هدر شامل :
- پورت منبع : به دستگاهی که داده ها را ارسال میکند، میگویند. در صورتی که رایانه مقصد احتیاجی به پاسخ گویی به فرستنده نداشته باشد، این پورت روی صفر تنظیم میگردد.
- پورت مقصد : به دستگاهی که داده را دریافت میکند، پورت مقصد میگویند؛ شماره ی پورت های مقصد میتواند بین 0 تا 65535 باشد.
- Length : به مشخص سازی تعداد بایتهایی را که شامل هدر UDP و دادههای محموله UDP هستند میپردازد.
- Checksum : به دستگاه دریافت کننده اجازه میدهد تا درستی هدر بسته و محموله را تأیید کند.
DDoS چیست؟
DDoS مخفف Distributed Denial of Service، مجموعه ای از حملات سایبری است که هکر ها از آن استفاده میکنند تا بتوانند سرویس منبع و یا حتی دستگاه میزبان را در دسترس کاربران مد نظر خود قرار دهند. این حملات میتوانند منجر به از دست دادن درآمد، کاهش اعتماد مصرف کننده و … شود.
تهدیدات و آسیب پذیری های UDP DDoS
نبود مکانیزم تایید و اتصال سراسری در UDP، این پروتکل را در برابر حملات DDoS آسیب پذیر میسازد. به گونه ای که مهاجمان میتوانند بسته ها را با IP های دلخواه جعل و به صورت مستقیم به برنامه دسترسی پیدا کنند. که این امر بر خلاف پروتکل TCP میباشد؛ که در آن فرستنده قبل از شروع ارتباط باید بسته ها را از گیرنده تحویل بگیرد.
حملات DDoS در مقابل UDP عبارت اند از :
UDP flood
این حمله شامل حجم عظیمی از بسته های UDP جعلی میباشد. این بسته ها به پورت های گوناگونی در یک سرور واحد ارسال میگردند و از آن جا که هیچ راهی برای تایید منبع واقعی آن ها وجود ندارد، سرور به تمامی این درخواست ها پاسخ میدهد و منابع خود را زیاد میسازد. تنها با افزایش مقیاس منابع شبکه در صورت تقاضا میتوان این حملات را کاهش داد.
DNS amplification attack
در این حمله مهاجم از آسیب پذیری های موجود در سرورهای سیستم نام دامنه سوء استفاده میکند تا سوال های کوچک را به بزرگ تر تبدیل نماید و از آن برای از بین بردن این سرور ها استفاده کند.
اسکن پورت UDP
در این حملات مهاجمان بسته ها را به پورت های سرور ارسال میکنند تا مشخص شود کدام یک از این پورت ها باز است؛ در صورتی که سرور پیامی با محتوای ICMP، Destination Unreachable ارسال نماید مشخص میشود این درگاه باز نیست و در صورت عدم دریافت پیام، پورت باز بوده و از این اطلاعات برای برنامه ریزی حمله به سیستم استفاده میشود.
UDP و حملات DDoS
با وجود سرعت بالا در انتقال داده ها توسط پروتکل UDP، گیرنده در برابر حملات DDoS قرار خواهد گرفت. در حین حمله DDoS، سایت با حجم عظیمی از داده ها رو به رو میگردد و در صورت بروز هر نوع مشکلی کامپیوتر بایستی با ICMP به پاسخ دهی بپردازد. از آنجایی که سرور نمیتواند تمامی این فعالیت ها را انجام دهد سرور مسدود میگردد و سایت را برای مشتریان واقعی بی فایده میسازد. UDP سایت را در مقابل حملات DDoS آسیب پذیر میکند؛ در صورتی که سازمان ها به محدودسازی نرخ پاسخی هنگام ارسال بسته های ICMP ها بپردازند، میتوانند در مقابل این گونه حملات سپری دفاعی ایجاد نمایند و با کمک شبکه ای از مراکز داده به ترافیک های UPD پاسخ دهند؛ بنابراین، این درخواست ها از یک سرور بیشتر نمیشود.
سرویسهای حفاظتی Imperva DDoS
این سرویس ها میتوانند حملات عنوان شده را تا حد زیادی کاهش دهند؛ در این بخش به توضیح درباره ی آن ها میپردازیم :
حملات مبتنی بر حجم
Imperva با جذب و فیلتر کردن ترافیک مخرب با استفاده از Global network of scrub centers با UDP flood و DNS amplification attack مقابله میکند. این مرکز، درخواستهای مخرب را شناسایی و حذف میکند، در حالی که اجازه میدهد ترافیک قانونی کاربر به شبکه شما برسد.
حملات پروتکلی
Imperva، علاوه بر آن میتواند فناوری ای تحت عنوان شناسایی بازدید کنندگان را ارائه و میان مشتریان واقعی و مشتریان مخرب و خودکار تفاوتی قائل شود.
و در آخر
UDP مخفف عبارت User Datagram، پروتکلی ارتباطی است برای ارسال داده هایی که به زمان حساس هستند استفاده میشود؛ این پروتکل ها در سراسر اینترنت وجود دارند و در صورت عدم برقراری ارتباط رسمی قبل از انتقال داده، ارتباطات سرعت مییابند. این امر باعث انتقال داده ها با سرعت بالاتری میشود ولی، در کنار آن میتواند باعث از بین رفتن بسته ها در انتقال شود. در این مقاله سعی کردیم به توضیح درباره UDP بپردازیم، مزایا و معایب آن را بیان و حملات و راهکارهایی را در مقابله با آن ها معرفی نماییم. امیدواریم از خواندن این مقاله لذت برده باشید. جهت کسب اطلاعات بیشتر به وبلاگ پویان آی تی مراجعه نمایید.
به این مقاله امتیاز دهید!
میانگین امتیاز 0 / 5. تعداد رأی ها : 0
هنوز هیچ رأیی داده نشده. اولین نفر باشید!