Мой блог
Как защита шеврор-CD с Quake рухнула за 39 дней после релиза в 1996 году

В эпоху, предшествовавшую повсеместному распространению быстрого широкополосного интернета, разработчики видеоигр выпускали свои новейшие релизы на shareware-дисках, чтобы игроки могли опробовать проект перед покупкой. Именно так поступила компания id Software при выпуске Quake в 1996 году. Как вспоминает инженер-программист Google Фабьен Санглард, студия выпустила на компакт-диске как демонстрационную, так и полную версию Quake всего за 10 долларов.


Заманчивая идея и скрытые гигабайты
Поскольку shareware-вариант и полная игра занимали на диске лишь 22 мегабайта из доступных 640 мегабайт, оставшиеся 618 мегабайт практически пустовали. У id Software возникла идея записать на тот же диск полные зашифрованные версии всех остальных своих игр того времени. Желая разблокировать любую из полных игр на носителе, пользователю нужно было позвонить в специальный «Центр разблокировки Quake», сообщить код проверки, отображаемый программой на диске, и предоставить данные своей кредитной карты (или родительской). После этого оператор на другом конце провода диктовал комбинацию для разблокировки выбранного проекта.




На первый взгляд это казалось блестящей концепцией: игроки, приобретавшие Quake, могли с такой же легкостью купить любую другую игру id Software без необходимости отправляться в местный магазин розничной торговли. Такая схема также позволяла исключить посредников, оставляя разработчику бо́льшую часть выручки от продаж. К сожалению, студия недооценила угрозу со стороны хакеров и крэкеров для подобной модели распространения.




Уязвимость защиты и взлом за 39 дней
Любители халявы принялись взламывать шифрование диска сразу же после его релиза. Хакерской группе GNOMON потребовалось всего 39 дней на то, чтобы выпустить утилиту QCRACK.exe, которая умела генерировать серийные номера для всех игр на компакт-диске, обеспечивая невероятную окупность тех самых потраченных 10 долларов. Выяснилось, что id Software и компания TestDrive, с которой был заключен контракт на создание shareware-диска, положились на метод безопасности через неясность.



Хотя серийный номер, который оператор сообщал покупателю по телефону, был полуслучайным из-за меняющегося кода проверки, запрашиваемого программой разблокировки вместе с оплатой, его также можно было получить с помощью данных, навсегда зашитых на самом диске. В те дни, когда онлайн-аутентификация еще не была распространена, эти жестко закодированные сведения и привели к краху всей схемы. Приложение, открывающее полные версии игр, работало путем проверки соответствия введенного пользователем серийного номера тому, который генерировался на основе локальных жестко закодированных данных. Стоило лишь вычислить алгоритм извлечения серийников на основе кода проверки, и необходимость в оплате отпадала полностью.




Последствия для студии и исторический урок
Именно это хакерская группировка GNOMON и проделала чуть более чем за месяц. Хакеры не раскрывали детали создания крэка, а его внутреннее устройство стало известно лишь в 2018 году благодаря обратному проектированию, проведенному Рубеном Молиной. Независимо от того, как именно GNOMON обошла защиту id Software, это откровение обернулось абсолютной катастрофой для компании.




В конечном итоге разработчикам пришлось прекратить распространение shareware-дисков. Из-за появления взлома на руках осталось 150 000 физических носителей, которые так и не удалось продать. Эта история с крэком для Quake наглядно показывает, что противостояние между игровыми издателями и пиратами велось задолго до наступления эпохи повсеместного интернета. И по сей день печально известная система защиты DRM Denuvo регулярно взламывается во всех защищенных ею одиночных играх, что фактически сводит ее пользу на нет, хотя компании продолжают совершенствовать свое антипиратское ПО в этой бесконечной игре в кошки-мышки.


Источник: tomshardware.com

