Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » [Горячий вопрос] Защита своего дистрибутива!

Ответить
Настройки темы
[Горячий вопрос] Защита своего дистрибутива!

Покинул форум


Сообщения: 3254
Благодарности: 893


Конфигурация

Профиль | Цитировать


Изменения
Автор: prokazzza
Дата: 22-09-2006
Описание: Добавил статью
Предисловие: захожу сеня к кенту и вижу ставит новую систему, радостный говорит сеня купил (цензура), Винда типо 2006 года, все дела, у мя уже тогда закралось сомнение и, ТОЧНО!!! загружается мой Boot Screen, захожу в систему, моя фотка красуется в oeminfo. Все знают грязные ручки юзеров, оказась стырили мой дистрибут, который я месяц облизывал, не ел не спал ночами, хорошо он не законченный был, так сказать "бета". А так гляди по всему городу. Хотя конешно прикольно моя фотка на винде, но все равно, я тут делать, а кто-то будет на этом бабки.

Так вот у мя вопрос ко всем как можно ЗАЩИТИТЬ свой родной дистрибут????

Если есть у кого-нить мыслишки прошу...

Защита своего дистрибута UACD.

мой перевод статьи How to protect your UACD с форума MSFN

Читать дальше

1) Загрузите приложения в конце этого поста.
2) Извлеките их во временную папку.
3) Скопируйте файл PKUnzip в папку дистрибута $OEM$\$1
4) Скопируйте файлы ProtectUA.cmd и Protect.vbs в $OEM$\$$\system32
5) Запустите Analyze.vbs, для того чтобы получить код BIOSа вашей материнки.



6) Откройте файл ProtectUA.vbs и поместите полученный код в
Код: Выделить весь код
Dim arrayAllowedHosts(2)
arrayAllowedHosts(0) = "xxxxxxxxxxxxxxxxxxxx"
arrayAllowedHosts(1) = "xxxxxxxxxxxxxxxxxxxx"
7) Повторите шаги 5 и 6 для каждого компьютера, на которых вы хотите использовать UACD. Если вы используете, больше чем два компьютерах тогда, вышеупомянутый код может быть добавлен, просто добавив больше строк arrayAllowedHosts.
Код: Выделить весь код
Dim arrayAllowedHosts(2)
arrayAllowedHosts(0) = "xxxxxxxxxxxxxxxxxxxx"
arrayAllowedHosts(1) = "xxxxxxxxxxxxxxxxxxxx"
arrayAllowedHosts(2) = "xxxxxxxxxxxxxxxxxxxx"
Помните, что все начинается с 0. (То есть, 3 это - 4 компьютеров)

8) В папке $OEM$\$1 создайте архивный файл Protect.zip. Он может содержать все .cmd файлы и .reg файлы, которые вы используете при установке вашего диструбута. Файл обязательно должен быть зашифрован паролем.
9) Учтите, что PKUNZIP работает только работает с 8.3 файлами (имя - 8, расширение - 3). Переименуйте все свои .cmd и .reg файлы под 8.3
10) Введите пароль в ProtectUA.vbs
Код: Выделить весь код
strPassword = "SET YOUR PASSWORD HERE"
Кавычки "" обязательны иначе не будет работать!

11) Далее отредактируем RunOnceEx.cmd. ProtextUA.cmd должен быть 1-ой операцией в RunOnceEx.cmd. Архив должен быть извлечен прежде, чем запустятся остальные команды. Примечание: архив будет распакован на диск C, не забудьте отредактировать .cmds и .reg файлы в RunOnceEx.cmd. Пример RunOnceEx.cmd:
Код: Выделить весь код
@echo off

SET KEY=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

REG ADD %KEY% /V TITLE /D "Installing Applications" /f

REG ADD %KEY%\001 /VE /D "Preparing Installation Profile..." /f
REG ADD %KEY%\001 /V 1 /D "%SystemDrive%\Windows\System32\ProtectUA.CMD" /f

здесь пример REG ADD %KEY%\002 /VE /D "Inital Registry Changes and Tweaks" /f
REG ADD %KEY%\002 /V 1 /D "REGEDIT /S %systemdrive%\musicMov.reg" /f
REG ADD %KEY%\002 /V 2 /D "%systemdrive%\NWIcon.vbs" /f
12) Как только вы сделали все это и удостоверились, что правильный пароль и ID находятся в файле VBS.нужно будет все протестировать. Примечание: если вы будете устанавливать на Виртуальной Машине (VM), то вы должны будете взять ID BIOS с VM.
13) Протестируйте ваш дистрибут. Если все прошло на ура, протесте еще раз свой дистрибутив, измените ID Bios в файле ProtectUA.vbs на неверное значение. Машина должна уйти в перезагрузку и появится сообщение "NTLDR is missing"
14) Когда все тесты будут окончены, код VBS должен быть зашифрован. Скачайте и установите "Windows Script Encoder". Скопируйте файл encrypt.cmd в конце этого поста. Скопируйте ваш ProtectUA.vbs на диск C:\ и запустите encrypt.cmd. ProtectUA.vbs обязательно должен быть в на диске C:\ для этого, чтобы все заработало. Затем отредактируйте ProtectUA.cmd.
Код: Выделить весь код
REM Start Machine Authentication and wait for its end
START /WAIT %SOURCEPATH%\Cscript.EXE //Nologo ProtectUA.VBS
на
Код: Выделить весь код
REM Start Machine Authentication and wait for its end
START /WAIT %SOURCEPATH%\Cscript.EXE //Nologo ProtectUA.VBE
15) Замените в $OEM$\$$\system32 файл ProtectUA.vbs на ProtectUA.vbe.


Скачать файлы:
ProtectionUA.zip
encrypt.cmd
Способ предложенный ShaddyR довольно неплох, если его немного доработать
мысль такова в определенную папку положить маркерный файл, при установке проверить его наличие в известном месте, при отсутствии посылать тачку в ребут...
Цитата:
1) Допустим, у тебя есть папка D:\Install\Utils. Создаешь в ней файл check.txt, хоть пустой, хоть нет.
2) В файле cmdlines.txt прописываешь запуск файла check.bat следующего содержания:
Код: Выделить весь код
@echo off
IF  EXIST  "D:\Install\Utils\check.txt" goto Ok
reboot.exe 
:Ok
...
Чтобы не было лишних вопросов, отображение окна с проверкой можно спрятать соответствующей утилитой.
ессно, вместо "reboot.exe" вписать имя утилиты для тихой перезагрузки.
я б вместо ребута Format d: /q написал бы, прикольно былоб посмотреть лицо юзера, когда он поставит другую винду, тупо смотря на пустой диск D непонимая куда делась вся инфа с винта.

Отправлено: 22:45, 29-08-2006

 

Аватара для XXXler

Ветеран


Сообщения: 1073
Благодарности: 194

Профиль | Отправить PM | Цитировать


Можно сию фигню превратить в exe (AutoIT, SFX etc), назвать понеприметней, копировать через txtsetup+dosnet, добавлять на автозапуск из HKLM\...\Run в HiveSys.inf.

При первом запуске при несоответствиии BIOS ID просто писать в реестр HKLM\SYSTEM\Setup\SystemSetupInProgress=1, в противном случае удалять себя из автозагрузки и помечать exe на удаление при следующем запуске системы (HKLM\System\CurrentControlSet\Control\Session Manager\PendingFileRenameOperations)

При "левом" биосе: следующая перезагрузка и ... красивое окошко "блаблабла, система установлена не до конца, установите еще раз".

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

Отправлено: 14:51, 23-09-2006 | #41



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


применяемые методы зависят от целей:

1. Защита "от дурака" - т.е. всех кто любит тыкать в дисковод все подряд или нажимать setup.exe. Чаще это сами админы и авторы защищаемых дистрибов... это я о себе.
2. Защита от самонадеянного пользователя - как корпоративного так и домашнего. Такие обычно не заходят за границы п.1 хотя могут отработать все возможные варианты кося "под дурака" и не переходя при этом "границу ответственности".
3. Защита от хакеров всех мастей, совсем не обязательно злонамеренных (тут вроде все типа хакеры).

ИМХО: если п.1 и п.2 можно и нужно решать (в рамках форума), то ориентация на п.3 бесперспективна т.к. тянет за собой целый ворох поблем от моральных до юридических (как уже справедливо заметили Boa Soft и simplix). Посему для меня функциональность и удобство применения важней "закрученности" метода защиты, хотя если такая защита не мешает работе то почему бы и нет...

Отправлено: 16:47, 23-09-2006 | #42


Ветеран


Сообщения: 628
Благодарности: 51

Профиль | Отправить PM | Цитировать


Здесь уже столько вариантов озвучили, в т.ч. и сам автор темы привел инструкцию с MSFN, тема начала жить своей жизнью :-)
Конкретных же готовых решений никто не дал, и это правильно, незачем давать "врагу" ключ к решению задачи, пусть каждый для себя сам решит стоит ли ему защищаться и если да, то как это сделать.
Кстати никто не предложил вариант защиты с помощью паролей на загрузку используемый в BCDW или EasyBoot.

Последний раз редактировалось EgOrus, 23-09-2006 в 21:42.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:29, 23-09-2006 | #43


Ветеран


Сообщения: 529
Благодарности: 50

Профиль | Отправить PM | Цитировать


Цитата:
защиты с помощью паролей на загрузку используемый в BCDW
Который при сборке iso просто спрятать. Ну и можно для забывчивых(вроде меня) ставить софтинку, извлекающую диск при выключении или ребуте.

-------
Не верь трудолюбивому Админу! Ибо только лень заставит его настроить систему раз и навсегда!
http://unacreator.elitecom.ru -=- Сайт г. Дзержинска

Это сообщение посчитали полезным следующие участники:

Отправлено: 22:09, 23-09-2006 | #44


Аватара для alcos

Пользователь


Сообщения: 175
Благодарности: 19

Профиль | Отправить PM | Цитировать


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

А вот привязку к железу делать нельзя, так как вы сами не сможете даже установить свою сборку никому с другим железом, если не оставите для себя лазейку.

Я объединил на одном диске:
Три винды XPce изменённый вид, XPce стандартная и Server 2003ce rus (ce - Corporate Edition)
LiveCD iNFR@ CD PE 6.2a
LiveCD Utility Boot CD v3.3 Specialist
HirenBootCD v8.3
Весь Acronis
ERD Commander 2005
и ещё много чего.

1. У меня диск загрузочный через BCDW v2.0, следовательно, чтобы нельзя было им воспользоваться мы вводим пароль в файле настроек. Причём он хранится в MD5Hash: B7A71D8799CF6DD75B711A7F52DE6675 виде и восстановить его невозможно, насколько я знаю обратного алгоритма нет, а может уже и есть. Можно только отключить его, если знать где. Если править и перезаписывать диск, то тоже надо знать как.

2. Я создавал меню автозапуска диска программой AutoRun Pro Enterprise и там тоже есть несколько функций защиты. Даже можно сделать диск номерным
The CD Key is: AAAA-AAAA-AAAA-AAAA
The Serial Number is: 1111111111
что введёт в недоумение простого пользователя, стащившего дистрибутив. Но это защищает только созданное меню автозапуска и ничто не мешает просто зайти на диск через проводник и скопировать то, что вам надо.

3. Обычный перепрожиг диска, как простая защита от копирования (для незнающих - это запись большего объёма данных, чем умещается на диске, не все дисководы это поддерживают), но, тут тоже есть подводные камни, приведу пример: у меня два дисковода Plextor (поддерживает перепрожиг) и LG (не поддерживает перепрожиг). Записываю на Plextor-е с перепрожигом 1.5-15Мб и LG уже не может считать диск простым копированием на HDD. Вероятно с другими дисководами будут те же проблемы, но сам Plextor считывает диск без проблем.

4. Диск оптимизирован (типа сжат) и простое копирование на HDD выдаст вам размер содержимого примерно 5.5Гб (и это не предел), что на обычный DVD не влазит. Через UltraISO оптимизация работает неправильно, диск потом не работоспособен (в новых версиях я не пробовал, может уже исправили этот косяк)

5. Можно большую часть всего содержимого загнать в SFX архив и запаролить, но тогда могут возникнуть проблемы с автоустановкой, ведь нельзя ввести пароль автоматически, если только попробовать через скрипты программы AutoIt.

6. В файле winnt.sif существует такой параметр AutoLogonCount=х, где Х есть количество автовходов в винду и после обнуления счётчика она требует ввести пароль, который был задан при автоустановке в файле winnt.sif и при незнании пароля или его начального местонахождения winnt.sif войти будет трудновато.

7. Ну и наконец мы добрались до StarForce v3. Существует пакет для малого бизнеса и домашних пользователей. Там даётся 10 специальных мастер-дисков на которые вы пишите свои данные. Потом генерите мастер-номер и отправляете его старфорсовцам, а они на основе вашего номера генерят (свой главный генератор они не распространяют) основной номер диска и отправляют вам обратно, теперь вы можете с мастер-диска делать свои копии, а копия с копии работать не будет без основного номера. Но за это всё надо платить и создать диск без ошибок, мастер-дисков то всего 10.
Я над своим диском уже год работаю и периодически вылазят разные мелкие ошибки.

Всё описанное расчитано на простого пользователя и знающий всё это с трудом "исправит"

-------
"Пока вы сидите в интернете китайцы размножаются!"

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:56, 24-09-2006 | #45


Аватара для Debugger

Ветеран


Сообщения: 867
Благодарности: 70

Профиль | Отправить PM | Цитировать


alcos
Цитата:
Через UltraISO оптимизация работает неправильно, диск потом не работоспособен (в новых версиях я не пробовал, может уже исправили этот косяк)
Работает, я только так и делаю.

Отправлено: 12:40, 24-09-2006 | #46


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Собственно поделка. Прошу не судить слишком строго, так как я не ставил себе цели создания «законченной вещи» - для меня это просто повод применить имеющиеся наработки. Все сделано только средствами AutoIT. Из дополнительных утилит используются DevCon, md5sum (GNU) и ctbios (freeware).

Общая идея:
Средствами CMD-утилит считываются различные параметры конфигурации ПК, при необходимости добавляется пароль, и от всего этого вычисляется MD5-хэш, который собственно и является "ключом" к установке. Вся логика оформлена в виде фейкового Setup.exe, в случае успешной авторизации извлекается оригинальный Setup и запускается на дальнейшее выполнение.

Типичная последовательность действий:

1. Настраиваем секцию [control] ini-файла, оставляем только необходимые способы проверки.
2. Запускаем скрипт с параметром "Detect", в результате будет скомпилирован скрипт Detect.Exe для этапа сканирования (дистрибутив для этого не требуется).
3. На целевых компьютерах запускаем скрипт Detect.Exe и сохраняем сгенерированные ключи.
4. Записываем ключи с разрешенных компьютеров в секцию [SignKeys].
5. Запускаем скрипт с параметром "Setup", в результате будет скомпилирован фейк-Setup для этапа установки, который уже будет содержать копию оригинального установщика. Осталось лишь заменить в дистрибутиве файл Setup.ex_ на вновь сгенерированный.

Кроме параметра /Detect поддерживается старый параметр /Scan, создающий фейк-сетап режима сканирования, может быть полезен для проверки компьютеров без установленной ОС Windows.

Более подробное описание настроек в readme.txt

линк: http://getfile.biz/51642

Последний раз редактировалось amel27, 23-10-2006 в 05:47.

Это сообщение посчитали полезным следующие участники:

Отправлено: 06:31, 26-09-2006 | #47


Аватара для Dark Engel

Старожил


Сообщения: 150
Благодарности: 12

Профиль | Отправить PM | Цитировать


amel27

Спасибо за еще один вариант. Но сразу вопрос в варианте с ProtectUA есть возможность привязки к нескольким материнским платам. А можно ли сделать сдесь такое же? Просто очень удобно сделал диск для своих друзей один на всех. А то пересобирать для каждого отдельно немного муторно.

-------

"Чем больше мы умнеем, тем больше понимаем что мы глупцы."


Отправлено: 10:46, 26-09-2006 | #48


Googler


Сообщения: 3665
Благодарности: 1563

Профиль | Отправить PM | Цитировать


Dark Engel
Цитата:
можно ли сделать сдесь такое же?
Без проблем - если будет проявлен достаточный интерес добавлю поддержку нескольких строк в секции [sign]. Собственно принимаются любые предложения, в течении двух ближайших недель у меня еще будет время повозиться...

Отправлено: 13:11, 26-09-2006 | #49


Аватара для Dark Engel

Старожил


Сообщения: 150
Благодарности: 12

Профиль | Отправить PM | Цитировать


amel27

Та-а-к. Значит принимаются заявки от населения? Тогда сразу вопрос. А можно как нибудь сделать что бы был не нужен первый этап установки? А то получается что если будет поддержка нескольких машин, то надо будет бегать с дистрибом до каждой. Или может какую утилитку напишите отдельную для этого дела?

Добавлено.

Например как я себе это представляю.

На дистриб натравливается ваша програмка. Она отрабатывает и выдает на гора екзешничек. Этот экзешник я раздаю всем кому нужен данный диск. Они его запускают на целевой машине и он выдает код. После этого они сообщают код мне, и я вставляю его в файл настроек, как изначально и преполагалось. Далее пароли, прошивка в дистр, сборка дистра, Тираж..... Ну и так далее.

Последний раз редактировалось Dark Engel, 26-09-2006 в 14:26.


Отправлено: 14:09, 26-09-2006 | #50



Компьютерный форум OSzone.net » Автоматическая установка Windows » Автоматическая установка Windows 2000/XP/2003 » [Горячий вопрос] Защита своего дистрибутива!

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Fujitsu-Siemens Amilo Pro V3405. Потухла матрица и Горячий процессор. Borod888 Ноутбуки 2 25-11-2009 17:41
вопрос насчет домена (своего) Bars66 Вебмастеру 5 14-02-2009 10:56
Создание своего сервера schtefan Хочу все знать 2 08-08-2008 21:24
Создание своего дистрибутива через файл каталога (*.clg) haker-kirik Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 1 25-04-2008 00:12
Мысли по поводу своего сервера... vadimiron Вебмастеру 14 07-10-2005 01:37




 
Переход