پیلود یا Payload چیست؟ آشنایی کامل با پیلود و انواع آن

0 958
۵/۵ - (۲۸ امتیاز)

فهرست

پیلود چیست؟

ریشه ی واژه ی پیلود یا Payload در حوزه حمل و نقل و موارد نظامی است.
پیلود یا Payload در حوزه حمل و نقل به حجمی درون وسائل نقلیه گفته می شود که برای آن باید هزینه پرداخت کرد یا اشیائی که به آغاز، کامل شدن یا ادامه عملیات کمک می‌کنند. معمولا این هزینه براساس وزن و تعداد محاسبه می شود. با توجه به هدفی که وسیله نقلیه برای آن جابجا می شود، پیلود می تواند بار، مسافر، مهمات، خدمه پرواز، وسائل عملی، آزمایشگاهی و… باشد.
اما در دنیای کامپیوتر و مخابرات از این لفظ در جاهای مختلف استفاده می شود. در این مقاله به بررسی هر یک می پردازیم.
بطور عمومی پیلود یا Payload در کامپیوتر و مخابرات به قسمتی از داده گفته می شود که پیام واقعی محسوب می‌شود. منظور را با یک مثال واضح تر می کنیم.

یک مثال ساده

فرض کنید قصد دارید یک نامه ی معمولی (مثلا یک برگه A4 نوشته) را به شهر دیگر ارسال کنید. برای این کار می بایست کاغذ را درون یک پاکت نامه قرار دهید. سپس آدرس فرستنده و گیرنده را روی پاکت نامه درج کرده و تمبر را در محل مشخص شده قرار دهید. در نهایت پاکت نامه را درون صندوق پستی بیندازید. در اینجا پیلود به نوشته های روی کاغذ A4 (که طبیعتا برای انتقال باید روی کاغذ نوشته شوند) می گویند. مواردی مثل آدرس ها، پاکت نامه و تمبر مواردی هستند که برای ارسال صحیح نامه باید وجود داشته باشند و تنها مخصوص نامه ی شما نیست. اگر شما هزینه ای برای خرید برگه A4، پاکت نامه و تمبر می پردازید و آدرس ها را روی پاکت نامه درج می کنید به این دلیل است که پیلود شما (نوشته) به مقصد ارسال شود. پس در حقیقت شما دارید این هزینه ها را برای نوشته می پردازید.

پیلود را در حوزه کامپیوتر و مخابرات در سه دسته بررسی میکنیم: شبکه، امنیت و برنامه نویسی. در هر قسمت موضوع را بیان می کنیم و سعی می کنیم با یک مثال، موضوع را ملموس تر کنیم.

پیلود در شبکه

در دنیای شبکه، پیلود به داده ی در حال ارسال گفته می شود. اگر دقیق تر بررسی کنیم پیلود به داده ای اطلاق می شود که یک بسته ی ارسال برای آن آماده می شود. این بسته شامل هدرها و متادیتا است که این اطلاعات صرفا به دلیل انتقال صحیح پیام اصلی یا همان پیلود است و جزئی از پیلود نیستند.
برای مثال یک پکت یا بسته IPv4 را در نظر بگیرید. این بسته از هدر و پیلود تشکیل می شود. هدر حاوی اطلاعاتی نظیر نسخه ی پروتکل، طول بسته، آدرس فرستنده و گیرنده، موارد کنترلی و مواردی از این دست است. داده ای که برای آن این اطلاعات آماده سازی می شوند همان پیلود است که در فیلد Data بسته قرار می گیرد. توجه کنید در این مورد و بطور کلی در ارسال داده روی شبکه محدودیت وجود دارد. برای مثال یک بسته ی IPv4 می تواند  ۶۵۵۳۵ بایت باشد.

پیلود در امنیت

در دنیای امنیت، پیلود به داده ای خصوصی گفته می شود که می تواند یک پیام یا کد و مولفه های خطرناک باشد. بطور خاص در هکینگ پیلود شامل یک تکه کد  می باشد که عملیات غیرمجاز را انجام می دهد.
برای مثال فرض کنید در یک Spear Phishing یک فایل Microsoft Word برای قربانی از طریق ایمیل ارسال می شود که درون آن ماکرویی وجود دارد. هنگامی که قربانی فایل را دانلود کرده و آن را باز می کند (و احتمالا باید متقاعد شده باشد که اجازه اجرا ماکرو را به فایل بدهد) ماکرو مورد نظر اجرا شده و یک عملیات مخرب (مثلا دانلود یک بدافزار) انجام می‌دهد. در این سناریو پیلود، ماکرو درون فایل می‌باشد.

عموما در هک و امنیت پیلودها به سه دسته تقسیم می شودند:

  • Single Payload
  • Stager
  • Stage

Single Payload

این گروه از پیلودها برای عملیاتی که باید انجام شود نیاز به آماده سازی سیستم یا موارد دیگر ندارند. به این دسته از پیلودها Standalone نیز می گویند. این پیلودها وظیفه ای که برای آن ها مشخص شده است را به تنهایی انجام می دهند. این وظایف می تواند شامل عملیات ساده ای همانند اسکن درونی سیستم یا عملیات پیچیده برای تغییر درون سیستم باشند.

Stager

به زبان ساده Satgerها وظیفه آماده سازی سیستم برای اجرای پیلود اصلی می باشند. عموما Stagerها وظیفه ایجاد یک کانال ارتباطی بین هکر و قربانی و همچنین دانلود یا خواندن پیلود اصلی (Stage) برروی سیستم قربانی را دارند.
برای مثال یک Stager ساده می‌تواند یک فایل bat باشد که در آن دستور زیر اجرا می شود:

nc.exe -L -p 8080 -e cmd.exe

که این کد با استفاده از Netcat یک Listener روی پورت ۸۰۸۰ قربانی ایجاد می‌کند. به محض اتصال به آن یک خط فرمان تعاملی به هکر برگردانده می شود. در اینجا Stager ارتباط را برای اجرای خط فرمان از راه دور (Stage) مهیا می کند.

در ویدئو آموزشی درب پشتی می توانید در عمل این مورد را ببنید.

Stage

Stage پیلودی است که می بایست توسط Stager خوانده و بار شود.
برای مثال در مورد بالا فرمان هایی که روی سیستم قربانی اجرا می شوند را می توان به عنوان Stage  از آن ها یاد کرد.

نکته: عموما برای دور زدن مکانیزم های امنیتی از Stager و Stage استفاده می شود و از پیلودهای Single استفاده نمی شود. استفاده از Stage و Stager می تواند یک عملیات مخرب را به چند عملیات مجاز تقسیم بندی کند. در اینصورت هرکدام در واحدهای زمانی جدا اجرا می شوند. این عمل باعث می شود سیستم های تشخیص نفوذ یا آنتی ویروس ها (مخصوصا آنتی ویروس های Signature Based) متوجه عملیات مخرب نشوند.

پیلود در برنامه نویسی

در برنامه نویسی عموما از لفظ پیلود در رابطه با متمایز کردن داده ی اصلی از سربار پروتکل استفاده می شود.
برای مثال یک برنامه تحت وب دارید که از REST API استفاده می کند (بطور کلی یک وب سرویس JSON را در نظر بگیرید). در این مورد پاسخ سرور به یک درخواست می تواند شبیه پاسخ زیر باشد:

{ "response": { "message": "OK! Get in!" } }

در این پاسخ “!OK! Get in” پیلود و مابقی پاسخ سربار پروتکل است.
برای مشاهده پیلود در دیگر پروتکل ها، مقاله وب سوکت را مشاهده کنید.

درباره ما

ترجنس | thregence.ir
آکادمی ترجنس | edu.thregence.ir
اینستاگرام | instagram.com/thregence
تلگرام | t.me/thregence
یوتوب | https://bit.ly/30mGowo
آپارات | aparat.com/thregence 

ارسال یک پاسخ