دسته بندی
Access Control and Data Exposure
باگ File Inclusion Vulnerabilities به معنای آسیبپذیریهای مرتبط با اضافه کردن فایلها به یک برنامه یا سیستم است. دو نوع رایج از این آسیبپذیریها عبارتند از:1-
Local File Inclusion (LFI):در این حمله، حملهکننده سعی میکند فایلهای محلی از روی سرور را به برنامه اضافه کند.
2-
Remote File Inclusion (RFI):در این حمله، حملهکننده به برنامه اجازه میدهد فایلهای از راه دور (از سرورهای دیگر) را به برنامه اضافه کند.
مثال:
فرض کنید یک وبسایت دارای صفحهای با پارامتر مانند "
page" است که فایلهای HTML مختلف را به عنوان صفحه نمایش میدهد. بدون احراز هویت صحیح، کاربر میتواند از هر فایل HTML از روی سرور استفاده کند.$page = $_GET['page'];حملهکننده میتواند با تنظیم پارامتر "
include($page . '.html');
page" به یک مسیر محلی یا فایل مخرب، به فایلهای محلی یا خارجی دسترسی پیدا کند:https://example.com/index.php?page=../../etc/passwdبا این دستور، حملهکننده میتواند به فایل
/etc/passwd دسترسی پیدا کرده و اطلاعات مهمی از سرور را به دست آورد.روشهای جلوگیری:
1- همواره ورودیهای ارسالی از کاربر را تأیید کنید و محدودیتهای معتبری برای آنها تعریف کنید.
2- بهتر است از مسیرهای ثابت برای فایلهای مورد استفاده استفاده کنید تا از حملات
LFI جلوگیری شود.3- تنظیمات دسترسی را در سیستم بهینه کنید تا کاربران توانایی دسترسی به فایلهای حساس را نداشته باشند.
4- فایلها را تنها به کاربرانی که دارای دسترسی معتبر هستند نمایش دهید.
.