TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 610 subscribers
Post #103 122
#security #bug
دسته بندی Remote Code Execution (RCE)

باگ Remote Code Execution (RCE) یکی از خطرناک‌ترین باگ‌های امنیتی است که به حمله‌کننده اجازه می‌دهد کد مخرب یا دستورات خود را بر روی سرور یا برنامه‌ای اجرا کند. این باگ می‌تواند به دسترسی نامحدود به سیستم یا دسترسی به اطلاعات حساس منجر شود.

مثال:

فرض کنید یک وب‌سایت با یک فرم جستجو دارید که کاربران می‌توانند در آن عبارت مورد نظر خود را وارد کنند. این عبارات سپس به‌عنوان پارامترها به یک برنامه‌ی سمت سرور ارسال می‌شوند. اگر تأمین اطلاعات ورودی کافی نباشد و بدون اعتبارسنجی و فیلترینگ، ورودی‌ها به عنوان کد اجرایی در نظر گرفته شوند، حمله‌کننده می‌تواند کد مخرب خود را در ورودی وارد کند و با اجرای آن، کنترل کامل بر سرور را به دست آورد.

$query = $_GET['query']; 
$result = exec("grep " . $query . " data.txt");
echo "نتایج جستجو: " . $result;

حالت بدیهی این است که اگر حمله‌کننده ورودی‌هایی مخرب مانند "data.txt; rm -rf /" وارد کند، دستورات خطرناک مانند حذف همه‌ی فایل‌ها روی سرور اجرا خواهند شد.

روش‌های جلوگیری:

1- هرگز ورودی‌ها را به‌صورت مستقیم به عنوان کد اجرایی در نظر نگیرید. اطمینان حاصل کنید که ورودی‌ها مورد اعتبارسنجی و فیلترینگ قرار گیرند.

2- از توابع و روش‌های امن در اجرای دستورات استفاده کنید. به عنوان مثال، اگر از PHP استفاده می‌کنید، از توابع مانند escapeshellcmd() یا escapeshellarg() برای اجرای دستورات استفاده کنید.

2- بخش‌های مختلف کد خود را از یکدیگر تفکیک کنید و اجازه ندهید ورودی‌های کاربری به عنوان بخش‌های اجرایی تلقی شوند.

3- از مکانیزم‌های اجرایی امن و محدود بهره ببرید. به‌عنوان مثال، به جای استفاده از exec() در PHP، از توابع دیگری مانند shell_exec() استفاده کنید.

————-
از دیگر باگ های امنیتی این دسته بندی میتوان به Code Injection اشاره کرد که قبلا توضیح داده شده. (مشاهده)
.
More from @amirhdeveloper
  1. Sep 30, 2026پکیج LaraGram Sentinel منتشر شد؛ یک پنل مانیتورینگ که هیچ چیزی از زیر دستش در نمی‌ره! تمام…
  2. Sep 23, 2026از امروز با کاهش شدید حاکرها مواجه میشیم
  3. Sep 19, 2026🔴 سوال سوم دو Region دارید: US-East و EU-West. کاربران در هر دو Region هستند. سیستم باید…
  4. Sep 19, 2026🟠 سوال دوم فرض کنید Service A به Service B درخواست می‌زند. B به‌دلیل overload، latency با…
  5. Sep 19, 2026🟢 سوال اول فرض کنید یک سرویس backend داریم که به PostgreSQL وصل می‌شود. تعداد requestها ن…
  6. Sep 19, 2026خیلی وقته پست‌های کانال فقط درمورد LaraGram بوده، وقتشه یکم جالب‌ترش کنیم اگر ممبرها هنوز…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →