🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ mrpakdel
جلو گیری از اپلود فایل غیر مجاز
جامعه لاراول ایجاد شده در ۲۳ اردیبهشت ۱۴۰۲

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

راه حل مناسب اینه فایل‌ها خارج از روت پروژه اپلود شوند و مفسر php روی پوشه اپلود غیرفعال باشد.

اما اگر بخواهید در محتوای فایل از تزریق کد php جلوگیری کنید میتونید پکیج gd استفاده کنید(برای پردازش تصویر) تا پیکسل‌های تصویر مجدد ساخته شود و خروجی یک تصویر را بگیرید. البته قابل دور زدنه.

این مقاله رو مطالعه کنید.

در مورد جاوااسکریپت، نام+پسوند فایل داخل src تگ img باعث فراخوانی مفسر نمیشه و کدی لود نمیشه.

محسن موحد ۲۳ اردیبهشت ۱۴۰۲، ۰۸:۵۸

من فایل png رو با نوت پد باز کردم و داخلش کد جاوااسکریپت نوشتم و اپلود کردم . لاراول متوجه نشد و اپلود انجا شد و ادرس عکس رو مستقی مصدا میزدی جاوا اسکریپت داخلش هم اجرا میشد . که خیلی اتفاق خطرناکیه

چلوی اینو میخوام بتونم بگیرم ولی ولیدیشن لاراول تشخیص نمیده

mrpakdel ۲۳ اردیبهشت ۱۴۰۲، ۱۰:۰۵

همونطور که گفتم از طریق GD میتونید محتوارو خنثی کنید.

شرایط اجراتونو متوجه نشدم، فایلی که آپلود کردید رو زیپ کنید و اینجا بگذارید و یک اسکرین شات هم از اجرای فایل بگذارید.


محسن موحد ۲۳ اردیبهشت ۱۴۰۲، ۱۰:۱۵