اسیب پذیری Remote Code Execution) RCE)

اسیب پذیری RCE

اشنایی با اسیب پذیری RCE یا Remote Code Execution برای تست نفوذ وب اپلیکیشن با ما در ادامه این اموزش هک و امنیت همراه باشید

اسیب پذیری RCE

یکی از راه های نفوذ به وب سایت ها جستجو باگ از وب اپلیکیشن ان است این باگ ها و حفره های امنیتی اغلب از اشتباهات برنامه نویس به وجود می ایند و همیشه در بسیاری از برنامه های تحت وب کشف میشود حتی بزرگ ترین ان ها مانند وردپرس و .. که هر چند وقت یکبار شاهد منتشر شدن اسیب پذیری حتی از هسته ان ها هستیم. ما در این اموزش میخواهیم اسیب پذیری RCE را معرفی کنیم و با کاربرد و نحوه جستجو ان اشنا شوید. در اموزش قبل باگ RCE از نوع Remote Command Execution را اموزش داده ایم که در واقع میتوانستیم بر روی سرور از راه دور دستور اجرا کنیم اما در این اموزش حفره امنیتی RCE از نوع Remote Code Execution را می اموزید که تفاوت بسیار کمی باهم دارند.

RCE در Php

Remote Code Execution به معنای اجرای کد از راه دور است که به نفوذگر این اجازه را میدهد تا کد های خود را در وب اپلیکیشن اجرا کنید برای مثال در یک وب سایت نوشته شده به زبان PHP در صورت وجود این حفره امنیتی میتوانید کد های PHP خود را در ان اجرا کنید.
این این باگ در صورت استفاده نادرست از تابع eval() به وجود می اید و برای رفع این اسیب پذیری باید ورودی خود را کنترل کنید و یا کارکتر های خاص مانند ();? را فیلتر کنید
 

مثال اسیب پذیری RCE:

ورودی اسیب پذیر را پیدا کنید

http://127.0.0.1/rce.php?id=1

حال در این ورودی میتواند کد های php خود را وارد کنید
نکته : برای اجرای کد نیازی به باز کردن تگ های php نداریم و فقط کافیست کد های خود را وارد کنیم

;()http://127.0.0.1/rce.php?id=phpinfo

در ورودی اسیب پذییر phpinfo را فراخوانی کرده ایم تا اطلاعات مربوط به سرور و php را نمایش دهد
اسیب پذیری Remote Code Execution) RCE)
برای استفاده از این اسیب پذیری RCE میتوانید حتی دستورات خود را هم در سرور با استفاده از تابع های php وارد کنید

;(http://127.0.0.1/rce.php?id=exec(pwd

در url بالا exec تابع اجرای دستور را فراخوانی کرده ایم و در ان دستور pwd برای نمایش مسیر فایل را وارد کرده کردیم
حال میتوانید به راحتی بکدور خود را در سرور برای کنترل سایت ایجاد کنید.
 
در صورت هرگونه سوال در رابطه با این اموزش از بخش دیدگاه مطرح کنید.
شاد و پیروز باشید.

0/5 (0 نظر)

نیما حسینی هستم بنیان گذار تیم پن تست کور و مدرس دوره های امنیت شبکه و راه های مقابله با نفوذ ، در 7 سال گذشته متمرکز بر مباحث روز امنیت سایبری بوده ام و بعد از کسب دانش و تجربه های ارزشمند تصمیم بر به اشتراک گذاری نتیجه ان ها با دیگران گرفته ام.

مطالب مرتبط

۸ دیدگاه در “اسیب پذیری Remote Code Execution) RCE)”

  • الیاس اردیبهشت 23, 1398 پاسخ

    با سلام خدمت مدیر محترم سایت
    مطالب سایتتون مفید و بروز هست
    فقط آموزشهایی که در مورد باگها و طریقه نفوذ هستن ناقص هست
    برای مثال باگهایی که قرار دادین هیچ دورک ی برای یافتن سایت با باگ مورد نظر قرار ندادین
    بااینکه از طریق سرچ بدست میاد ولی مطالب سایتتون رو ناقص نشون میده …
    و اینکه آموزشهاتون مرحله ب مرحله نیست ” افراد مبتدی و آماتور نمیتونن ازش
    استفاده کنن ..
    با تشکر از زحمات شما .

    • Nima Nani خرداد 4, 1398 پاسخ

      درود
      خیر اموزش ها ناقص نیستند ما سعی کردیم هر موضوع را به صورت تخصصی در مطالبی جداگانه اموزش دهیم مانند دورک که مثال زدید میتوانید در سایت جستجو کنید و اموزش های مختلفی در رابطه با ان را به صورت کامل مشاهده کنید
      اگر اموزش را به صورت کامل مطالعه کرده باشید از صفر توضیح داده شده است و به صورت مرحبه به مرحله گفته شده باید چه کاری انجام دهید اموزش های ویدیو ای را هم میتوانید مشاهده کنید
      از نظر شما سپاس گذاریم

  • eyzed اردیبهشت 26, 1399 پاسخ

    راست میگه اموزش ها ناقص است باید کامل و جامع توضیح دهید

    • نیما حسینی اردیبهشت 30, 1399 پاسخ

      درود
      برخی از اموزش ها هر کدام متفاوت هستند و با پیش نیاز هایی که در اموزش های قبل ان ها گفته شده و تکمیل کننده هم هستند ،حتی اگر این اموزش هم کامل نباشد نباید جمع ببندید چون بسیاری از اموزش های پن تست کور بسیار کامل و دقیق هستند.

  • eyzed اردیبهشت 31, 1399 پاسخ

    بله عذر خواهی میکنم ولی برای مثال rce در php چیز های دیگه ای هم هست مثلا فرم های ثبت نام و ورود و …

    • نیما حسینی اردیبهشت 31, 1399 پاسخ

      داخل این اموزش هدف ما این بوده تا با کلیت باگ اشنا بشوید و به صورت مفهومی ان را درک کنید ، چون این باگ در هر جایی ممکن است وجود داشته باشد و در بخش هایی مانند فرم ثبت نام و ورود محدود نمی شود و نباید اموزش ها را دیکته ای ببینید و با درک ان باید اسیب پذیری از هر جایی پیدا کنید.

  • eyzed اردیبهشت 31, 1399 پاسخ

    خیلی ممنون حالا چطور میتونیم ؟ و () را فیلتر کنیم؟

    • نیما حسینی اردیبهشت 31, 1399 پاسخ

      باید یک Functions جدید بسازید و در ان درخواست کنید در صورتی که )( استفاده شده ورودی به تابع اصلی مورد نظر ارسال نشود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

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