Архивы: по дате | по разделам | по авторам

Золотой ключик

Архив
автор : Георгий Башилов   15.02.2001

Редакция награждает Павла Урусова, автора лучшего письма недели, трехмесячной подпиской на еженедельник

Редакция награждает Павла Урусова, автора лучшего письма недели, трехмесячной подпиской на еженедельник


Возвращаясь к теме статьи Константина Великова «Wizard of OS», хочу сказать, что я только что обнаружил АБСОЛЮТНО безболезненный способ по превращению Windows NT Workstation (или Windows 2000 Professional) в серверную редакцию.

В реестре существуют два ключа, причем изменению одного из них система активно препятствует. Если же изменить только один, при загрузке система вылетает в синий экран с сообщением SYSTEM_LICENSE_VIOLATION, и ее восстановление может быть чрезвычайно нетривиальным занятием.

Что за ключи? Во-первых, строковый ключ ProductType в разделе HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ProductOptions. Его значение по умолчанию - «WinNT» (без кавычек, естественно), а если изменить значение на «ServerNT», то операционная система превратится в серверный вариант. Однако операционная система принудительно возвращает «умолчальное» значение ключа, пугая при этом пользователя сообщением, что он-де нарушает лицензионное соглашение и может преследоваться в соответствии с законом. Второй из «волшебных» ключиков - бинарный ключ SystemPrefix в разделе HKEY_LOCAL_MACHINE\System\Setup.

Тут я привожу цитату из найденного в Сети документа «Differences Between NT Workstation and Server are Minimal» (автор - Andrew Schulman): «The SystemPrefix value is a binary value which the kernel treats as two DWORDs, of which the only important piece of information seems to be the bit represented by the mask 0x04000000 in the high-order DWORD. If ProductType is «ServerNT» or «LanmanNT», then this bit must be set. If ProductType is «WinNT» then the bit must be off (any inconsistency results in a blue-screen error at system boot)».

Что же надо делать, чтобы ограбить корпорацию Microsoft? Как известно, раздел реестра HKEY_LOCAL_MACHINE\System\CurrentControlSet строится ДИНАМИЧЕСКИ при каждом запуске Windows NT/2000, а в файлах реестра все данные хранятся в ветвях HKLM\System\ControlSet001 и HKLM\System\ControlSet002. При этом - внимание, сейчас я покажу фокус, - изменение ключа ProductType в разделе ControlSet002 НЕ ОТСЛЕЖИВАЕТСЯ операционной системой!

Изменяем значение этого самого ключика, а потом идем в раздел HKLM\System\Select и ставим в ключике Default (тип REG_DWORD) значение 0x00000002(2). Советую поставить значение параметра LastKnownGood в 0x00000001(1), чтобы в случае чего загрузиться в Last known good configuration и привести реестр в исходное состояние. Далее, изменяем значение ключа SystemPrefix в соответствии с приведенной выше цитатой. После перезагрузки команда NET ACCOUNTS рапортует: «Роль компьютера: СЕРВЕР», и меняется bitmap в стартовом меню (вместо «Windows 2000 Professional» появляется надпись «Windows 2000 Server»).

Если этого мало, можно в разделе HKEY_CURRENT_USER\Control Panel\Desktop изменить значение ключа PaintDesktopVersion на 0x00000001(1) и перелогиниться, в правом нижнем углу рабочего стола должна появиться надпись «Windows 2000 Server. Сборка 2195». Все! Пользуйтесь своим «сервером» на здоровье.

Прошу особо отметить тот факт, что это не теоретические рассуждения, которых много в Интернете, а информация, проверенная на собственной шкуре (то есть на собственной Windows 2000 Professional RUS). Правда, потом я все-таки превратил «сервер» обратно в рабочую станцию, потому что дома мне на stand-alone машине Server, в общем-то, ни к чему, только памяти больше жрет.

Почему я занимаюсь такими вещами? Только из любопытства. У меня и в мыслях не было заниматься воровством (будем называть вещи своими именами: «модернизируя» подобным образом одну копию Windows 2000 Professional, я фактически краду у Microsoft одну инсталляцию Windows 2000 Server), просто мне интересно, как работает такая большая и сложная программа, как операционная система.

Опять-таки, изучая принципы, на которых зиждется Windows 2000, я нарушаю лицензионное соглашение, но… запретить пользователю компьютера смотреть, как устроены программы, которыми он пользуется, - все равно что запрещать ребенку разбирать игрушки, которыми он играет. Я всецело ратую за цивилизованный рынок ПО, поскольку в будущем хотел бы зарабатывать деньги на сопровождении и технической поддержке компьютерных систем, а программы являются, пожалуй, даже более важной частью подобных систем, чем «железо». Пока люди не приучатся платить за используемое ими ПО в полной мере, они не будут по достоинству оплачивать и труд системного администратора.

Павел Урусов

P. S. Если вы, уважаемые редакторы «Компьютерры», вдруг решите опубликовать это письмо (в чем я сильно сомневаюсь), интересно будет посмотреть на реакцию Microsoft. Скорее всего, поступят, как с NT: выпустят какой-нибудь ServicePack, в состав которого войдет заплатка, устраняющая эту «проблему».

ОТ РЕДАКЦИИ: К сожалению, когда писался ответ, ни одной станции под рукой не оказалось - одни серверы, поэтому ответсвенность за описанные выше манипуляции оставляем на «шкуре» автора.

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

На самом деле, с точки зрения права, никакой подмены не произошло. Ведь вы купили именно W2K Prof, его же установили на компьютер, и эта программа так и осталась собой, вне зависимости от произведенных вами манипуляций. С тем же успехом можно было просто заменить картинку в logo.sys - это же не означает изменения объекта.

Любопытно, как будет в таком случае реагировать служба поддержки Microsoft, особенно в свете нововведений по оказанию саппорта на платной основе?

[i38360]

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.