ردیت میگه HTML ساده ناامنه
خلاصهٔ کاملتر
ماجرا از یه جستوجوی معمولی شروع میشه: نویسنده میگه اضافهکردن site: reddit.com به کوئری هنوز مطمئنترین راه برای رسیدن به متنهاییه که واقعاً آدمها نوشتن. ولی این بار بهجای محتوا با صفحهٔ لاگین روبهرو شده. ردیت تو اعلانش نوشته «تجربهٔ بدون لاگین در ردیت قدیمی منبع قابلتوجهی از اسکرپینگ سوءاستفادهگرانه و ترافیک خودکاره» و هدف، امن نگهداشتن پلتفرمه.
سؤال بدیهی که تو همون تاپیک هم پرسیده شده اینه: پس چرا نسخهٔ جدید هنوز بدون لاگین باز میشه؟ پاسخی که ادمین بهش ارجاع داده میگه شکل ترافیک مخرب مدام عوض میشه و ردیت قدیمی «استک امنیتی مدرن» رو نداره. نویسنده تصمیم گرفته خودش با Inspect Element دنبال این تفاوت بگرده.
مشاهدهاش از نسخهٔ قدیمی اینه که تقریباً هیچ کار خاصی نمیکنه: محتوای کاربران در HTML ساده میاد و تا وقتی نخوای کامنت بیشتری لود کنی حتی به جاوااسکریپت هم نیاز نیست. صفحه حدود یک مگابایت میگیره که بیشترش خود HTML ـه، هرچند حدود دو ثانیه معطلی تا اولین پاسخ داره که به گفتهٔ نویسنده بوی rate limiting میده. لودکردن کامنتهای بیشتر هم سبک و سریع بوده.
نسخهٔ جدید تقریباً پنج برابر بار بیشتری لود میکنه و بدون جاوااسکریپت چیزی جز خود پست نشون نمیده. نویسنده برای آزمایش، همهٔ درخواستها جز چند مسیر مشخص مربوط به اسکریپت و سرویس کامنت رو بلاک کرده؛ صفحه باز شده و درخواست کامنتها هم پاسخ متنی گرفته. برداشتش اینه که عملاً «اجرای جاوااسکریپت» تنها مانع واقعیه. یه جای کار هم کپچا دیده ولی نتونسته دوباره تکرارش کنه، و در عوض یه heartbeat دیده که با هر اسکرول و تکونخوردن نشانگر به ردیت فرستاده میشه.
نتیجهگیری نویسنده تنده: به نظر او امنیت اینجا بهانهست و مسئله اینه که ردیت نمیخواد دادهٔ کاربرانش اسکرپ بشه. ضمناً کنایه میزنه که نسخهٔ قدیمی بهطور پیشفرض ۲۰۰ کامنت لود میکنه در برابر ۲۵ کامنت نسخهٔ جدید، پس طبیعیه که اسکرپرها هم سراغ نسخهٔ سبکتر برن. میگه اگه ردیت فقط میگفت «کسی ازش استفاده نمیکنه، برش میداریم» ناراحت نمیشد؛ چیزی که آزارش داده توجیه امنیتی مبهم برای کاری اقتصادیه.
نکات کلیدی:
- دسترسی بدون لاگین به فرانتاند قدیمی ردیت بسته شد، نسخهٔ جدید هنوز بازه
- توجیه رسمی: اسکرپینگ سوءاستفادهگرانه و نبود «استک امنیتی مدرن» در نسخهٔ قدیمی
- در آزمایش نویسنده، اجرای جاوااسکریپت عملاً تنها سد واقعی جلوی گرفتن کامنتهاست
- نسخهٔ جدید حدود ۵ برابر سنگینتره و پیشفرض فقط ۲۵ کامنت میده در برابر ۲۰۰ تا
- برداشت نویسنده: مسئله محافظت از ارزش دادهٔ کاربرانه، نه امنیت کاربر




