باگ Deathray: یه شیدر WebGPU که مک رو کامل قفل میکنه
خلاصهٔ کاملتر
یه محقق به اسم Auberon López یه ترفند به اسم Deathray ساخته که نشون میده چقدر راحت میشه یه مک رو از کار انداخت. کافیه قربانی روی یه لینک کلیک کنه؛ چند ثانیه بعد کل رابط کاربری macOS قفل میشه و تنها راه برگشت، ریاستارت اجباریه. این مشکل روی کروم، فایرفاکس و سافاری تکرار میشه، چون منشأش خود macOS ـه نه مرورگر خاصی، ولی فقط روی مک اتفاق میافته و ویندوز و لینوکس رو درگیر نمیکنه.
دلیلش یه فناوری تازه به اسم WebGPU ـه (یعنی رابطی که به سایتها اجازه میده مستقیم روی کارت گرافیک کد اجرا کنن، جانشین WebGL قدیمی). Deathray یه شیدر میفرسته که عمداً توی یه حلقهی بینهایت گیر میکنه، در حالی که یه شیدر دیگه منتظر همون داده میمونه.
این تصادم باعث میشه کل صف پردازش گرافیکی مک، از جمله WindowServer (سرویسی که رابط کاربری macOS رو مدیریت میکنه)، قفل کنه. بقیهی سیستم مثل SSH هنوز جواب میده، ولی چون یه Watchdog منتظر جواب WindowServer ـه و جواب نمیگیره، بعد از مدتی خودش کرنل رو پنیک میکنه و سیستم ریاستارت میشه.
این اولین بارم نیست که همچین چیزی سراغ اپل میاد. سال 2023 یه محقق دیگه با یه شیدر مشابه به اسم ShadyShader (این بار روی WebGL) همین بلا رو سر مکها آورده بود و اپل باهاش CVE-2023-40441 رو ثبت کرد و امتیاز 6.5 بهش داد. اپل اون موقع یه لایهی اعتبارسنجی برای شناسایی حلقههای بینهایت اضافه کرد، ولی به گفتهی نویسنده این لایه توی WebGPU خیلی ضعیفتره و یه حلقهی به این سادگی رو نمیگیره.
نویسنده این باگ رو ماه ژوئیه به اپل گزارش داده و اپل اولش قبول کرده که مشکله و قول رفعش رو داده. ولی یه ماه بعد نظرش عوض شده و گفته این مورد رو «مشکل امنیتی» نمیدونه و فقط بهعنوان یه پیشنهاد بهبود به تیم دیگهای میفرستتش؛ یعنی در عمل اولویت بالایی نداره. نویسنده معتقده با اینکه از نظر فنی حرف اپل غلط نیست (نتیجه فقط کرش یا هنگه، نه نشت داده)، اکثر کاربرای عادی همچنان همچین چیزی رو یه شکست امنیتی حساب میکنن، چون همیشه فکر میکردن کلیک روی یه لینک نباید کل کامپیوتر رو مختل کنه.
نکات کلیدی:
- Deathray فقط با کلیک روی یه لینک، مکهای macOS رو (روی هر مرورگری) قفل میکنه.
- علتش یه باگ توی WebGPU ـه که جلوی حلقهی بینهایت توی شیدر رو نمیگیره.
- مشابهش سال 2023 با CVE-2023-40441 (امتیاز 6.5) روی WebGL دیده شده بود.
- اپل بعد از بررسی گفته این مورد رو مشکل امنیتی نمیدونه و اولویتش پایینه.
- تنها راه خروج از قفل، نگهداشتن دکمهی پاور و ریاستارت اجباریه.




