FROST؛ جاسوسی از تبها با زمانبندی SSD
خلاصهٔ کاملتر
FROST مخفف Fingerprinting Remotely using OPFS-based SSD Timinge؛ یه حمله که نشون میده یه صفحهٔ وب فقط با جاوااسکریپت معمولی میتونه حدس بزنه کاربر چه سایتها یا اپهای دیگهای باز کرده — بدون دوربین، میکروفون یا افزونهٔ مخرب.
ایدهٔ اصلی یه کانال جانبی زمانیه. وقتی چند برنامه همزمان (مثلاً ایمیل، ویدیو و سایت بانک) روی دیسک SSD کار میکنن، سر استفاده از دیسک رقابت میکنن و هر خوندن/نوشتن یهذره بیشتر طول میکشه. به گفتهٔ منبع، FROST همین تأخیرهای میلیثانیهای رو اندازه میگیره تا بفهمه دیسک چقدر مشغوله.
برای این کار از OPFS (یعنی Origin Private File System) سوءاستفاده میشه؛ یه فضای ذخیرهٔ خصوصی که مرورگر به هر سایت میده و قاعدتاً برای کارهای بیخطر مثل ذخیرهٔ آفلاینه. سایت با ساختن یه فایل و زمانگرفتن خوندنش، شلوغی دیسک رو لحظهبهلحظه میسنجه و یه الگو از تأخیرها میسازه؛ وقتی تب تازهای باز میشه، الگو عوض میشه و همین تغییر، سیگناله.
الگوی جمعشده به سرور مهاجم فرستاده میشه و اونجا تحلیل میشه؛ به گفتهٔ منبع، توی یه حملهٔ واقعی یه مدل هوش مصنوعی آموزشدیده روی هزاران الگو حدس میزنه چی بازه. خطر عملی اینه که اگه سایت بفهمه کاربر به بانک لاگین کرده، میتونه دقیقاً همون لحظه یه پاپآپ فیشینگ نشون بده.
این حمله جالبه چون از هیچ مجوز خاصی استفاده نمیکنه و فقط به رفتار عادی ذخیرهسازی و تابع performance.now() تکیه داره. منبع نمونهکد این روش رو منتشر کرده، ولی هستهٔ خطر همین نشت اطلاعات از طریق زمانبندیه؛ یعنی APIهای بهظاهر بیخطر مرورگر هم میتونن به کانال جانبی تبدیل شن.
نکات کلیدی:
- FROST با جاوااسکریپت معمولی حدس میزنه چه تب/اپی بازه
- مبنا: اندازهگیری تأخیر خوندن/نوشتن SSD بهعنوان کانال جانبی
- از فضای ذخیرهٔ خصوصی مرورگر (OPFS) و performance.now() استفاده میکنه
- الگوی تأخیرها به سرور میره و طبق منبع با مدل AI تحلیل میشه
- خطر عملی: تشخیص باز بودن سایت بانک و زمانبندی فیشینگ




