TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 611 subscribers
Post #89 119
#security #bug
دسته بندی Injection Attacks

باگ Command Injection یک نوع باگ امنیتی است که در برنامه‌ها و نرم‌افزارها رخ می‌دهد و اجازه می‌دهد که حمله‌کننده دستورات سیستم عامل را به طور غیرمجاز در برنامه اجرا کند. این حمله معمولاً به وسیله‌ی متغیرهای تزریق‌شده و ورودی‌های ناامن به برنامه انجام می‌شود. با استفاده از Command Injection، حمله‌کننده می‌تواند برنامه را کنترل کرده و اطلاعات محرمانه را فاش کند، دستورات سیستمی اجرا کند یا عملیات‌های خرابکارانه دیگر انجام دهد.

مثال :

فرض کنید یک برنامه وب با زبان PHP نوشته شده است که قصد دارد یک سیستم پشتیبان‌گیری را اجرا کند و فایل‌های مورد نیاز را از یک مسیر خاص به مسیر دیگر کپی کند. کد PHP به صورت زیر است:
$source_file = $_POST['source_file'];
$destination_path = $_POST['destination_path'];

$command = "cp $source_file $destination_path";
$output = shell_exec($command);
echo "File copied successfully.";

حمله‌کننده می‌تواند در فیلد‌های ورودی، دستورات سیستم عامل را به صورت تزریق‌شده وارد کند. به عنوان مثال:
source_file: /etc/passwd
destination_path: /var/www/html/

پس از اجرای برنامه، دستورات سیستم عامل به شکل زیر تبدیل می‌شود:
cp /etc/passwd /var/www/html/

این دستور کپی فایل /etc/passwd (که یک فایل حاوی اطلاعات حساب‌های کاربری سیستم است) به مسیر /var/www/html/ اجرا می‌شود و حمله‌کننده ممکن است به اطلاعات حساب‌های کاربری سیستم دسترسی پیدا کند.

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

1- همانند SQL Injection و Code Injection، استفاده از Prepared Statements می‌تواند از تزریق‌های دستور سیستم عامل جلوگیری کند.

2- برنامه‌نویسان باید ورودی‌ها را با دقت فیلتر سازی و تقویت کنند. این کار شامل حذف و یا اسکیپ کردن کاراکترهای غیرمجاز است.

3- از فراخوانی‌های محدود یا محدود‌سازی‌شده که فقط اجازه فراخوانی دستورات سیستم مشخص را به برنامه‌ها می‌دهد، استفاده کنید.

4- مطمئن شوید که برنامه‌ها و کاربران فقط به کمترین دسترسی لازم برای انجام کارهای خود دسترسی دارند.

5- اطلاعات خطا در برنامه‌ها نباید جزئیاتی از ساختار سیستم عامل یا کدهای خطرناک را فاش کند.

.
  • 🔥 1
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 →