جلوگیری از هک شدن سایت توسط اینکلود کردن فایلهای ناخواسته

i-php-i

Active Member
سلام
به نظر من بهترین کار توی استفاده از include استفاده از ارایه هاست.

اسم فایل هایی رو که باید اینکلود بشن رو توی خونه های ارایه بریزید بعدش توی شرط ها چک کنید که با کدوم یکی از ایندکس های ارایه یکی هستش و بعد اون ایندکس رو توی اینکلود قرار بدید این طوری از مقداری که توسط کاربر فرستاده میشه استفاده نمیشه توی خود دستور اینکلود و کاملا امن هستش.
موفق باشید.
این روش که همون متغیرها می شه. آرایه در واقع یه مجموعه از متغیرهاست.

بطور کلی، فرض کنید که تصمیم داریم از ثابتها استفاده کنیم. آیا هکر می تونه توی سورس برنامه دست ببره و با قرار دادن یه شرط توی سورس برنامه، ثابت رو دور بزنه؟ اصلا همچین چیزی برای کسی که وارد سی پنل نشده امکان پذیر هست؟
 

greencat

Member
سلام
جناب به این راحتی ها و بی قانونی هم نیستش دیگه:) اگه قرار بودش که کسی بتونه سورس برنامه رو که با یه زبان سمت سرور نوشته شده رو ببینه اسم متغییر هاش رو بدونه و یا اینکه کدش رو تغییر بده که دیگه سنگ رو سنگ بند نمی‌شد!!
هکر برای اینکار باید یه کد رو به کدهای صفحه‌ی شما اضافه کنه اگر از طریقه آرایه ها استفاده کنید از طریق Include شدن غیر قابل هک میشید (چیزی که شما پرسیده بودید) و نمی تونه این کار رو کنه، حالا ممکنه شما باگ های دیگه ای داشته باشید و یا اینکه از یه راه دیگه ای نفوذ کرده باشه هکر در این صورتم دیگه چه نیازی داره کدهاتون رو عوض کنه مستقیم هر کاری بخواد میکنه دیگه!!
 

mtchabok

Member
عزیزم شما اگه بتونید امنیت شرطی رو که آدرس فایلها رو چک میکنه تامین کنید بعدش دیگه فرقی نداره که توی متغیر بریزید یا ثابت .
ولی میدونید که ثوابت به صورت عمومی در کل صفحات و در همه جا قابل دسترسی هستن که خوب شما دیگه مشکلات وجود نداشتن متغیر در محل استفاده رو ندارید .
یه راه دیگه هم استفاده از یه کلاس هس .
به این صورت که یه کلاسی رو ایجاد کنید و تک تک فایلهایی که قراره اینکلود بشن رو بهش بدید و خودش اینکار رو انجام بده .
 

جدیدترین ارسال ها

بالا