سی‌دی ۱۰ دلاری Quake که قرار بود راهی ارزان و ساده برای دسترسی به بازی‌های id Software باشد، به‌سرعت توسط کرک Quake بی‌اعتبار شد. گروه هکری GNOMON، تنها در 39 روز پس از انتشار، ابزاری به‌نام QCRACK.exe منتشر کرد که شمارهٔ سریال تمام عناوین رمزگذاری‌شده روی دیسک را تولید می‌کرد و id را با حدود 150,000 دیسک فروخته‌نشده و بی‌فایده باقی گذاشت.

پیش‌زمینه و سازوکار فعال‌سازی

وقتی Quake در 1996 منتشر شد، id Software نسخهٔ شیروِیر و نسخهٔ کامل را روی یک سی‌دی 640 مگابایتی عرضه کرد. هر دو نسخه کمتر از 22 مگابایت فضا اشغال می‌کردند و بیش از 600 مگابایت از سی‌دی بلااستفاده ماند.

ایده این بود که نسخه‌های کامل سایر عناوین نیز به‌صورت رمزگذاری‌شده روی همان دیسک قرار گیرند و خریداران با پرداخت 10 دلار و تماس تلفنی با «Quake Unlock Center» بتوانند هر عنوان را فعال کنند. برنامهٔ روی دیسک یک «کد چالشی» نمایش می‌داد و اپراتور پس از دریافت اطلاعات پرداخت، یک کد بازشگشایی می‌داد تا بازی فعال شود.

نمونه سی‌دی شیروِیر Quake و طرح بسته‌بندی

نقطه‌ضعف امنیتی

مکانیزم فعال‌سازی براساس «امنیت از طریق ابهام» طراحی شده بود: شمارهٔ سریال ظاهراً با کد چالشی ترکیب می‌شد، اما همان شماره را می‌شد از داده‌های ثابت و تعبیه‌شده روی دیسک تولید کرد. در آن دوران و پیش از همه‌گیر شدن احراز هویت آنلاین، برنامهٔ بازشگشایی فقط بررسی می‌کرد که شمارهٔ واردشده با شمارهٔ تولیدشده از داده‌های محلی مشابه باشد. کافی بود الگوریتم تولید سریال از روی کد چالشی معکوس شود تا تماس تلفنی و پرداخت حذف شود؛ همین آسیب‌پذیری به کرک Quake امکان‌پذیر شد.

GNOMON و انتشار QCRACK

گروه GNOMON ظرف 39 روز پس از انتشار دیسک، نسخه‌ای از QCRACK.exe را منتشر کرد که می‌توانست شمارهٔ سریال تمام بازی‌های روی سی‌دی را تولید کند. این کرک دسترسی رایگان به همهٔ عناوین را فراهم کرد و ارزش خرید ۱۰ دلاری سی‌دی را از بین برد؛ جزئیات دقیق داخلی کرک آن زمان فاش نشد و بخش‌هایی از سازوکار آن بعدها و با مهندسی معکوس منتشر شد.

پیامدها برای id Software

پس از انتشار کرک Quake، id توزیع سی‌دی‌های شیروِیر را متوقف کرد و حدود 150,000 دیسک عملاً غیرقابل فروش باقی ماندند. این رویداد یکی از نمونه‌های برجستهٔ شکست یک سیاست DRM مبتنی بر داده‌های محلی و نبود احراز هویت سرور-محور است.

آموزه‌های فنی

  • هرگاه مکانیزم‌های فعال‌سازی به داده‌های محلیِ قابل خواندن وابسته باشند، امکان مهندسی معکوس و تولید سریال وجود دارد.
  • احراز هویت سرور-محور، امضای دیجیتال و زیرساخت کلید عمومی می‌توانند سطح امنیت را به‌طرز محسوسی افزایش دهند؛ اما پیاده‌سازی آن‌ها هزینه و پیچیدگی اضافی دارد.
  • تعادل میان تجربهٔ کاربری، هزینهٔ توزیع و امنیت باید در طراحی DRM در نظر گرفته شود؛ روش‌های سخت‌تر لزوماً بهترین راه برای همهٔ ناشران نیستند.

قابلیت مقایسه با DRMهای مدرن

این حادثه تاریخی، زمینهٔ بحث‌های امروزی دربارهٔ اثربخشی DRM را روشن می‌کند. حتی DRMهای مدرنی مانند Denuvo نیز در بسیاری از موارد شکسته شده‌اند؛ حمله و دفاع در حوزهٔ حفاظت نرم‌افزار همچنان جریان دارد و هر راه‌حل جدید، تهدیدات نوآورانه‌ای را به‌دنبال دارد.

منابع برای مطالعهٔ بیشتر

برای مطالعهٔ بیشتر می‌توانید به صفحهٔ id Software در ویکی‌پدیا و مطالب تحقیقاتی فابیان سانگلارد مراجعه کنید: fabiensanglard.net.