Защита дисков

Обсуждение программ и аппаратных средств

Модераторы: Oden, Сочин, maniac, Boo

Сообщение Eek 10 Март Суббота, 2007 11:44

Недавно набрел на интереснейший материал насчет StarForce:

(взято с ru-board.com. All rights reserved)

    A LONG TIME AGO IN A GALAXY FAR, FAR AWAY …
    ====================================

    По непроверенным данным (полагаю вы понимаете, что все давно поросло мхом и уплыло в туманы Андромеды) история создания отечественной защиты берет начало с реинжениринга исходных кодов западной защиты дисков CDCops от компании LinkDataSecurity. Первые версии Старфорса практически полностью повторяли схему действия и принципы работы западной программы, но со временем значительно ушли далее. Причем ушли далее не из-за скудоумности западных коллег и собственной гениальности, а именно из-за того, что российские реалии и наплевательское отношение к пользователям позволило им нарушить джентльменские соглашения программирования и на основе «грязных» приемов и недокументированных и нерекомендуемых возможностях взрастить свою программу. Теперь же вся эта нелицеприятная программистская кухня называется «коммерческой тайной» и разглашению/обнародованию/обсуждению не подлежит.


    FANTOM MENACLE
    =============

    Давайте сначала разберем принципы работы Старфорса. Защита программного обеспечения данной системой состоит из следующих этапов:

    1) Измерение физических характеристик вставляемого компакт-диска и сравнивание получаемой оцифрованной информации (физический ключ) с поставляемым с игрой цифробуквенных кодом (заводской ключ). К сожалению, только на наш взгляд все компакт диски одинаковы, на физическом уровне есть тонкие различия даже между партиями, напечатанными вчера и завтра, не говоря уже о различных типах штамповочных «станков». Я не буду вдаваться в детали, любознательные сами найдут все подробности, добавлю лишь одно: структура CDR еще больше отлична от заводского CD уже даже на разметочном уровне, так что до физической составляющей, как правило, вопрос и не заходит. В настоящее время есть и так называемая «безключевая» технология защиты, но на самом деле принцип все тот же, просто ключ не надо вводить руками, он уже записан на самом диск в специальном секторе.

    2) Фирменная особенность Старфорса (гордость его разработчиков) – существование интерпретатора исполняемого кода приложения. В процессе разработки существует возможность зашифровать/запрятать любую исполняемую функцию игры или какой её модуль таким образом, что только при работе оной происходит вторичная проверка легальности использования и динамическое расшифрование спрятанных данных. В общем и целом работа Старфорса на данном этапе напоминает работу виртуальной машины по расшифровке и обработке данных в процессе реального времени, т.е. в процессе игры.

    Рассмотрим эти пункты по порядку. Из вышеперечисленного видно, что обыкновенное домашнее копирование на болванки на обыкновенных домашних приводах результатов не приносит. Иногда все же удается скопировать диск один в один, но только при наличии хорошего, грамотного, можно сказать «профессионального» сидирома. Радость от этого деяния не очень велика – только сэкономленные соседу Васе деньги, а неудобства пользования все равно остаются.

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

    Также интересен вопрос о снижении быстродействия игры из-за работы через виртуальную машину Старфорса, но, если судить по рекламным материалам Старфорса, этот вопрос не существенен, т.к. разработчики игр предпочитают зашифровывать какую-либо одиночную функцию, срабатывающую лишь однажды, например, при загрузке данных в память. Наличие такое интерпретационной возможности не дает «злобным хакерам» быстро сделать простой «nocd», т.к. на поиски блуждающей зашифрованной части могут уходить месяца и при этом от хакера требуется недюжинная квалификация и терпение. А так как всем хочется «сейчас», то пользователю приходится покупать лицензию. Тормоза и безалаберность русских паблишеров уже относиться к другому вопросу.

    Другим интересным моментом работы Старфорса, является его сопротивляемость корректировкам самого модуля защиты, а не защищаемой им игры. Ловкий ум любителей халявы и народная мудрость «умный в гору не пойдет, умный гору обойдет» решил взяться за проблему с другой стороны, т.е. если сопротивляется взлому сама игра, так давайте «засандалим» самому Старфорсу. К чести народных умельцев надо сказать, что разработчики такого не ожидали и первые вариации Старфорса 3 были «надруганы» самым элементарным «патчиньем» его рабочих библиотек. Но долго это продолжаться не могло. Разработчикам Старфорса уже снились розовые мечты о богатом западном рынке с непаханым полем зеленой капусты, а тут такое. Ничуть не смутившись возможными проблемами будущих легальных пользователей, он закрутили работу функций Windows c аппаратурой по самое «не балуйся». Во-первых, они сделали полный перехват обращений к сидирому – кто, зачем, куда и как. Во-вторых, при запуске защищенного модуля, обращение к аппаратуре осуществляется только самим Старфорсом и только на физическом уровне, т.е. работа с аппаратурой напрямую – вот основная причина железной несовместимости и глюков при запуске. Чтобы не дать обмануть себя, Старфорс полностью перехватывает и модернизирует ядро операционной системы по работе в связке IDE-ATAPI. Повторюсь, все это происходит на машине легальных пользователей, т.е. в независимости от факта кражи/покупки игры. Доказать нарушение прав и целостности операционной системы не представляется возможным, т.к. все работа происходит в оперативной памяти компьютера и физические файлы системы остаются нетронутыми.


    ATTACK OF CLONES
    ==============

    Как вам уже стало понятно, простого подкорректированного исполняемого файла так просто уже не сыскать и не сделать. Единственный случай его нахождения это наличие версии игры, не защищенной Старфорсом и выпущенной на другом рынке, т.е. там, где законодательство не позволяет так «надругиваться» над пользователем. Но, судя по обстановке и противоварезных тенденциях, у разработчиков Старфорса есть все шансы успешно существовать, конечно, если западные стражи легальности софта тоже не начнут закручивать свои гайки, т.е. не наступит конкурентная война. Но вернемся к нашим баранам. У пользователей в наличии пока остается единственный метод играть без диска (или просто скопировать игру для себя или для друга Васи) в общем и целом это использование «образов» оригинального диска и виртуальное подсовывание его Старфорсу. В «профессиональной» среде такие образы известны как «топологии» - т.е. сборники информации о физической составляющей компакт-дисков. Но в бытовой среде и «образы» и «топологии» считают одним и тем же. Грубо говоря, «образы» это сама информация, а «топология» это физические данные о хранении этой самой информации. Но это не столь важно. Напомню еще раз - получить дома хорошую топологию довольно трудно, нужен очень хороший сиди-привод.

    Вполне удобноваримые топологии в настоящее время можно взять в рунете. Ссылки даны в конце сего писания.

    0) Версию и тип защиты игры можно узнать с помощью программы «A-Ray Scaner», это необходимо для того, что узнать как и как сильно болен пациент и какие методы возможны для его лечения. Старым версиям защиты много валерьянки не нужно.

    1) Рассмотрим приложение, такое близкое к сердцу русского человека, с интересным названием «Alcohol 120%». С его помощью вы можете не только создать топологию диска, но и даже сделать в системе виртуальный сидиром, на который можно будет повесить получившуюся топологию. Для сего предприятия необходим оригинальный диск игры и свежая версия «Алкоголя». Настройки создания топологии следующие:

    [StarForce 3.x сonfig]
    MAX Read Speed=65535
    Skip Read Error=0
    Fast Skip Read Error=0
    Read SubChannel Data=0
    Read PreGap Area=0
    DPM=1
    DPM Precision=1
    MAX Write Speed=65535
    Fix EFM Error=0
    Burn RMPS on Disc=0
    RecordMethodCount=4
    RecordMethod_00=0x01
    RecordMethod_01=0x02
    RecordMethod_02=0x03
    RecordMethod_03=0x04

    Далее в зависимости от настроения можно здорово облегчить получившуюся топологию до минимального веса путем редактирования топологии чем-нибудь вроде «UltraISO» - надо просто удалить все файлы и каталоги и сохранить новый образ. Файлы можно удалить, потому что они уже установлены на жесткий диск.

    Недостатком данного метода является то, что в новых версиях Старфорса это программу уже обошли. Разработчики Старфорса ради этого пошли на видоизменение ядра Windows для получения привилегий в обработке данных и отключению обычной файловой системы при проверке диска.

    2) Также хорошо с виртуализацией дисков справляется «DaemonTools» - это демоническая тулза крошечного размера. Данная программа отличается от «Алкоголя» возможностью только виртуализации уже созданных в другом месте топологий. Недостатки все те же.

    3) Безвременно погибшая программа с грязным названием «StarFuck». Она работала сопутствующим приложением предыдущим программам, т.е. с ними в паре. Она позволяла патчить сам Старфорс и виртуально убирать/подключать сидиромы в системе, что позволяло пугать Старфорс со страшной силой. Была удобна именно автоматизацией всех пунктов. Есть подозрение, что гражданку убили.

    3) «Starforce Nightmare» - возрожденная на костях «StarFuck» программа уже никак не относящаяся и не ссылающаяся на Старфорс, кроме названия, является её ребеночком. Так же как и мама, она позволяет отключать/включать сидиромы в системе. Юридически говоря, мы теперь просто вручную включаем и отключаем сидиромы и Старфорс тут не причем.

    Отключать сидиромы приходиться только в том случае, если в использованной для защиты версии Старфорса был задействован алгоритм «ISO Protection», который просто направлен на детектирование использования топологий. Иногда помогает следующий прием:

    1) Заходим в реестр
    2) Открываем в дереве раздел
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\SYSTEM\,
    там будут четыре папки (0000, 0001, 0002, 0003). Находим в какой из них
    параметр "Service" имеет значение "a347bus".
    3) На той папочке (которую мы нашли), кликаем правой клавишей
    мышки и выбираем пункт "Разрешения...".
    4) В появившемся окошке Выделяем пользователь SYSTEM,
    и ставим ему запреты на "Полный доступ" и "Чтение".
    5) Нажимаем ОК и все!

    Т.е. мы защищаем от Старфорса наш виртуальный сидиром. Перед установкой новой версии виртуалов, надо отменить эти действия, иначе виртуальный диск не удалится и не установится с новой версией программы


    NEW HOPE
    ========

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

    Давайте заглянем в будущее и посмотрим возможные варианты развития событий:

    а) «Грязные» методы работы разработчиков Старфорса сделают свое дело и они как-нибудь и куда-нибудь залетят. В суд, например. Или упрутся рогами в новое железо и в новые подходы к построению структуры ОС. Конечно, такой вариант развития событий маловероятен, все же они разработчики грамотные люди и будут искать новые пути. Повторюсь, сегодняшнее развитие программы таково, что хорошая защита возможна лишь в связке IDE-ATAPI и уже сейчас не работает при использовании SCSI и USB сидиромов.

    б) В связи с выходом на западный рынок и курированием уже крупных игр, эту систему защиты заметят матерые хакеры и все же порвут как Тузик чью-то грелку. В общем, это вариант из серии «надежда юношей питала». Я уже видел несколько «nocd» именно для игры со Старфорсом, но паблишеры уже на следующий день выпускают патч для игры (который пользователи тут же ставят, надеясь на лучшее) и все начинается заново. Но в любом случае предпосылки уже есть.

    с) Выйдет новый «Alcohol 120%» и «DaemonTools» с уже правильной эмуляцией Старфорса 3, но как сами понимаете, он будет со своими грязными методами, ведь в белых перчатках нельзя помыть туалет и не запачкаться.

    д) Все умрут или будет апокалипсис. Старфорса соответственно тоже не будет. Хотя, это просто шутка.


    POSTMORTEM
    ==========

    Рекомендую время от времени чистить систему от разных версий Старфорса, он их плодит как кроликов, практически с каждой игрой свой вариант Старфорса. За Старфорс не волнуйтесь, он в случает чего без спросу снова себя напихает куда захочет.
Eek

 
Сообщения: 308
Зарегистрирован: 26 Декабрь Понедельник, 2005 15:46
Откуда: Донецк

Пред.

Вернуться в Hard&Soft

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

cron