رفتن به محتوای اصلی
بازگشت به وبلاگ
امنیت

فایلی که نباید اجرا شود

یک فایل HTML اشتراکی می‌تواند در مرورگر به صفحه‌ای زنده روی نشانی سرور شما تبدیل شود. این یادداشت توضیح می‌دهد جعبه‌ی شنی چیست و ابردرایو در نسخه‌ی 2026.10.10 با آن چه کرده است.

تاریخ انتشار
صفحه‌ی وبی که درون قابی شیشه‌ای محصور شده است، کنار پیوندی کوچک با ساعت شنی

کسی یک فایل HTML را در یک سرویس اشتراک فایل بارگذاری می‌کند و لینکش را برای دیگران می‌فرستد. صفحه‌ای که باز می‌شود شبیه صفحه‌ی ورود است و نشانی بالای مرورگر هم نشانی همان سرویس آشنا. هر کس آنجا رمزش را وارد کند، آن را دودستی به کلاه‌بردار داده است.

بیشتر فایل‌ها فقط داده‌اند: یک عکس نشان داده می‌شود، یک PDF خوانده می‌شود. اما بعضی فایل‌ها، مثل HTML، SVG و XML، در مرورگر به یک صفحه‌ی وب زنده تبدیل می‌شوند و می‌توانند کد اجرا کنند. این یادداشت توضیح می‌دهد چرا این برای یک پلتفرم اشتراک فایل مهم است و ابردرایو در نسخه‌ی 2026.10.10 (سبلان) با آن چه کرده است. کوتاه‌تر هم به یک تغییر دوم می‌رسیم: لینک دانلودی که زود از کار می‌افتد.

۱. فایل اشتراکی، صفحه‌ی زنده نمی‌شود

وقتی فایلی را در صفحه‌ی اشتراک پیش‌نمایش می‌کنید، مرورگر آن را از نشانی خود سرور باز می‌کند. برای یک عکس فرقی نمی‌کند. اما یک فایل HTML در همان لحظه یک صفحه‌ی وب واقعی روی همان نشانی است، با همان اعتباری که سایت شما دارد.

اگر آن فایل اسکریپت داشته باشد، می‌تواند هر چه بازدیدکننده تایپ می‌کند بخواند و جای دیگری بفرستد. به این کار فیشینگ می‌گویند: صفحه‌ای جعلی برای گرفتن رمز یا اطلاعات. خطرش در این است که نشانی بالای مرورگر درست است و هیچ نشانه‌ی ظاهری از فریب ندارد.

SVG مثال خوبی است. بیشتر مردم آن را یک تصویر می‌دانند، اما یک فایل SVG هم می‌تواند اسکریپت داشته باشد و از نامش نمی‌شود این را فهمید.

راه‌حل، جعبه‌ی شنی (sandbox) است: امکانی در خود مرورگر که صفحه را نشان می‌دهد ولی اجازه‌ی اجرای اسکریپت و فرستادن فرم را از آن می‌گیرد. متن و تصویرها دیده می‌شوند؛ هیچ کدی اجرا نمی‌شود.

در نسخه‌ی 2026.10.10، ابردرایو هر فایل HTML، SVG یا XML را که در نمای اشتراک یا پیش‌نمایش باز می‌شود، داخل جعبه‌ی شنی و بدون اجازه‌ی اسکریپت و فرم نمایش می‌دهد. یک فایل اشتراکی دیگر نمی‌تواند روی نشانی سرور شما کد اجرا کند یا نقش صفحه‌ی ورود را بازی کند. صفحه‌هایی که با اسکریپت تعاملی می‌شوند، حالا ایستا دیده می‌شوند. نوع‌های دیگر فایل، مثل عکس و PDF، مثل قبل نمایش داده می‌شوند.

یک لایه‌ی دیگر هم کنار این است: سرور به مرورگر می‌گوید نوع فایل را حدس نزند. بدون این قاعده، مرورگر گاهی از روی محتوا تصمیم می‌گیرد فایلی که نامش متن ساده است، در واقع صفحه‌ی وب است و آن را اجرا می‌کند.

۲. لینک دانلود با تاریخ مصرف

لینکی که تا ابد کار کند، کلیدی است زیر پادری. لینک‌ها در تاریخچه‌ی مرورگر و پیام‌رسان‌ها جا می‌مانند و نمی‌شود همه‌ی آن جاها را پاک کرد.

پیوند امضاشده لینکی است که زمان انقضا و امضایی دارد که فقط سرور می‌تواند بسازد. اگر کسی حتی یک نویسه از آن را عوض کند، امضا دیگر جور درنمی‌آید.

حالا هر دانلود از صفحه‌ی اشتراک، و دانلود فایل‌های خودتان، از چنین پیوندی می‌گذرد. پیوند ده دقیقه عمر دارد و به همان اشتراک، همان فایل و رمز فعلی اشتراک بسته است؛ اگر صاحب اشتراک رمز را عوض کند، پیوندهای قبلی از کار می‌افتند. هنگام باز شدن پیوند، سرور دسترسی را دوباره بررسی می‌کند، پاسخ همیشه یک دانلود است و مرورگر آن را در حافظه‌ی موقتش نگه نمی‌دارد.

در همین نسخه، ادامه‌ی یک بارگذاری نیمه‌کاره هم فقط از همان کاربری پذیرفته می‌شود که آن را شروع کرده است.

اگر هر پلتفرم فایلی را ارزیابی می‌کنید

این ایده‌ها مختص ابردرایو نیستند. پرسش‌هایی که از هر پلتفرمی می‌شود پرسید:

  • اگر کسی یک فایل HTML یا SVG به اشتراک بگذارد، در مرورگر بازکننده اجرا می‌شود یا نه؟

  • لینک دانلودی که سیستم می‌سازد چقدر عمر می‌کند، و با عوض شدن رمز اشتراک چه می‌شود؟

  • بررسی دسترسی فقط هنگام ساختن لینک انجام می‌شود یا هنگام باز شدنش هم؟

جواب خوب به این پرسش‌ها معمولاً کوتاه و مشخص است.

یادداشت نسخه‌ی 2026.10.10 در راهنمای ابردرایو آمده است.