بگو وب سایتی دارید که بارگذاری پرونده ها از نوع خاصی را انجام می دهد و آنها را در یک زیرشاخه قرار می دهد (بگذارید آن را "فیلم" بنامیم) در ریشه وب.
من از منابع مختلف شنیده ام که اعتماد به پرونده های آپلود شده هرگز نیست. ایمن است ، زیرا یک بار payload بارگیری و اجرا می شود ، حتی اگر پسوند پرونده را بررسی کنید. در حالت ایده آل ، شما باید کل پرونده را بررسی کنید (که می تواند باعث کند شدن سیستم شود اگر پرونده بارگذاری شده یک فایل ویدیویی عظیم باشد).
بنابراین سوال من این است – آیا هنوز با پیکربندی زیر ناامن است؟
شما بارگذاری را انجام می دهید. با درخواست های POST به یک اسکریپت PHP که پسوند پرونده را بررسی می کند و فایل را تغییر نام می دهد ، سپس پرونده را در زیر فیلم "فیلم ها" قرار می دهد.
بیایید بگوییم که "فیلم ها" فرعی مانند این محافظت می شود (nginx):
موقعیت مکانی ~ / (فیلم ها / | admin-stuff | و غیره) all همه را انکار می کند. }
وقتی پرونده ها در فهرست قرار می گیرند ، -rw-r - r -
مجوز دارند. اگر درست بفهمم ، پرونده ها به هیچ وجه قابل دسترسی و اجرای نیستند.
آیا این آسیب پذیری هنوز است؟
متشکرم.