ايران ويج

نسخه‌ی کامل: Shell Code چیست ؟
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
Exploit کردن یکی از ستون های علم هک میباشد . برنامه ها فقط مجموعه ای از قوانین و دستورات هستند که توسط کامپیوتر اجرا شده و می گویند که چکار کند . اکسپلویت ها یا همان کدهای مخرب راههای زیرکانه ای هستند که توسط آنها به کامپیوتر گفته میشود ، خواسته های ما را اجرا کند . اکسپلویت (Exploit) در معنای لغوی به معنی سود بردن است .

Shell Code یک تکه کد ‌می باشد که در اکسپلویت کردن برنامه های آسیب پذیر استفاده میشود. به این خاطر گفته میشود Shell Code که به مهاجم اختیار کنترل سیستم را میدهد ، اما هر قسمتی از کد که کاری را انجام دهد شل کد گویند . شل کد ها معمولا به زبان ماشین یا همان اسمبلی نوشته میشود که از نظر نوع دسترسی دو گونه است :

  1. Local Shell Code
  2. Remote Shell Code

در Local Shell Code ما محدود هستیم چون این شل کد را در درون سیستم خود اجرا میکنیم و قادر نیستند به سیستم های راه دور حمله کنند ، معمولا این شل کد ها به صورت آزمایشی اجرا میگردند که اگر بدرستی اجرا شد و بدون اشکال بود میتوان آن را بر روی سیستم های دیگر انجام داد و بصورت شل کد Remote در آورد .

Remote Shell Code میتواند در درون یک شبکه محلی و یا اینترنت بر روی یک سیستم راه دور اجرا گردد، در واقع Remote Shell Code همان Local Shell Code می باشد ولی با این تفاوت که در آن برای کار بر روی شبکه های محلی و یا اینترنت از برنامه نویسی TCP/IP socket استفاده شده است . این شل کد ، انواع مختلفی وجود دارد :

  1. Download and execute shellcode : در این نوع شل کد ما میتوانیم یک تروجان و یا کرم را از آدرسی مشخص دانلود و در جایی از سیستم قربانی ذخیره کرده و سپس آن را اجرا کنیم ، این تکنیک هم در روشی به نام Drive-by download استفاده میگردد که این روش بدینگونه است ، وقتی قربانی صفحه اینترنتی را مشاهده میکند در پشت این صفحه کدهایی قرار دارد که فایلی را در سیستم قربانی ذخیره میکند و سر انجام فایل مورد نظر ، که هرچیزی میتواند باشد را اجرا کرده و قربانی را مورد حمله قرار داده و بقولی هک میکند .

  2. Staged shellcode : به این روش ، روش مرحله ای گویند ، اول یک تکه شل کد کوتاه در درون سیستم مورد نظر اجرا میشود که بعد این شل کد کوتاه ، شل کد بزرگتری را دانلود کرده و در سیستم اجرا میکند .


چگونگی اجرا کردن Shell Code:
اکسپلویت ها معمولا شل کد را به درون پروسه هدف تزریق میکنند ، در عین حال اکسپلویت یک آسیب پذیری می باشد که کنترل پروسه هدف را بدست می آورد و شل کد را اجرا میکند . تزریق شل کدها اغلب بدینگونه است که در درون داده های ارسالی قرار گرفته و از طریق شبکه به پروسه آسیب پذیر ارسال میشود .