Сейчас на форуме: vsv1, r0lka, -Sanchez-, testrev1337, johnniewalker, Kybyx (+3 невидимых)

 eXeL@B —› Крэки, обсуждения —› Привязка программы к флешке, можно ли сломать без нее?
<< . 1 . 2 . 3 . >>
Посл.ответ Сообщение


Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 24 сентября 2007 08:54
· Личное сообщение · #1

Вобщем написал я к своей проге защиту от копирования, привязку к номеру флехи.
Бинарник ксорится серийником, и потом, при запуске расшифровывается на лету.
Интересно, а можно будет потом сломать прогу, без флешки? Ну типа брутфорс или подобное?




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 24 сентября 2007 14:07
· Личное сообщение · #2

bloom пишет:
могут и есть.


Зачем на твердотельных накопителях эмулировать геометрию жесткого диска? Думаю, эмуляция происходит даже не на уровне контроллера флешки, в на уровне USB драйвера виндов. Никакой "вшитой" поддержки FAT или NTFS там нет.

infern0 пишет:
а ты в курсе, что у многих производителей серийник флеша одинаков на всей партии ?


Наверное у дешевых, китайских флешек? Слышал, что MS жестко предупредила производителей USB устройств, о том, чтобы в каждом устройстве присуствовал неизменяемый SerialNumber, т.к. из-за безопастности, в новых версиях виндов, устройства без серийника не будут работать.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 24 сентября 2007 14:12
· Личное сообщение · #3

Azur1d пишет:
ИМХО, в этом случае проще будет посмотреть что и откуда читается, и пропатчить прогу.


А вот если во флешку запихать ресурсы от игры, гигабайт картинок, музыки и видео. И все это в нестандартной файловой системе. Какая-нибудь блочная запись типа как в CP/M. По мере необходимости, картинки подкачиваются с флешки. Указатель на каждый файл вычисляется, через серийник флешки, одновременно и расшифровываясь.



Ранг: 369.8 (мудрец), 400thx
Активность: 0.390
Статус: Участник

Создано: 24 сентября 2007 14:20
· Личное сообщение · #4

Gmc пишет:
а если он флешку как-то будет детектить, читать серийник и т.п., тоже патчить придется или эмулятор какой-то?

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

-----
PGP key <0x1B6A24550F33E44A>




Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 24 сентября 2007 14:26
· Личное сообщение · #5

jangle пишет:
А вот если во флешку запихать ресурсы от игры, гигабайт картинок, музыки и видео.


Будет образ на несколько гиг и все. Если кому-то очень надо, то сделают... ntldr прав.



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 24 сентября 2007 14:35
· Личное сообщение · #6

jangle пишет:
Зачем на твердотельных накопителях эмулировать геометрию жесткого диска? Думаю, эмуляция происходит даже не на уровне контроллера флешки, в на уровне USB драйвера виндов. Никакой "вшитой" поддержки FAT или NTFS там нет.

Тю и вам здрасьте :/
А кто писал про вшитую поддержку ФС??
С любого дискового накопителя (и флешка не исключение) можно читать физические сектора.
К файловой системе это не имеет ни малейшего отношения.
Учи матчасть.



Ранг: 115.1 (ветеран), 3thx
Активность: 0.070
Статус: Участник

Создано: 24 сентября 2007 14:57 · Поправил: __
· Личное сообщение · #7

а почему привязываете именно к флешке? Можно к CD/DVD разместив там часть данных
и затруднив копирование диска




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 24 сентября 2007 15:00
· Личное сообщение · #8

ну дык еще и не прозвучало хотя бы назначение софтины. Может это новомодный Блокнот, есть ли смысл вообще так извращаться?




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 24 сентября 2007 15:17
· Личное сообщение · #9

cppasm пишет:
С любого дискового накопителя (и флешка не исключение) можно читать физические сектора.
К файловой системе это не имеет ни малейшего отношения.
Учи матчасть.


Как можно читать сектора? Через DeviceIoControl? Т.е. через драйвер виндов. А где гарантия, что там есть эти "физические" сектора, и они не эмулируются совместными усилиями драйвера винды и контроллера флешки?

__ пишет:
а почему привязываете именно к флешке? Можно к CD/DVD разместив там часть данных
и затруднив копирывание диска


Cлишком просто клонировать CD

Ara пишет:
ну дык еще и не прозвучало хотя бы назначение софтины. Может это новомодный Блокнот, есть ли смысл вообще так извращаться?


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



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 24 сентября 2007 15:45
· Личное сообщение · #10

jangle пишет:
Как можно читать сектора? Через DeviceIoControl? Т.е. через драйвер виндов. А где гарантия, что там есть эти "физические" сектора, и они не эмулируются совместными усилиями драйвера винды и контроллера флешки?

CreateFile("\.\PhysicalDriveX");
ReadFile/WriteFile
Гарантия в физическом устройстве флешки.
Что значит сектора эмулируются? А на накопителе данные что хранятся при помощи силы мысли и магии?
А вообще за гарантией сходи сюда: www.usb.org и сюда www.usb.org/developers/devclass_docs и почитай какие запросы поддерживает флешка на физическом уровне.
Плюс как человек писавший драйвер под DOS могу тебя заверить что сектора там действительно есть - это не фантастика
Но даже если предположить что контроллер флешки их эмулирует - что с того?
В обход этого самого контроллера ты с накопителя всё равно ничего не прочитаеш.



Ранг: 129.7 (ветеран), 2thx
Активность: 0.070
Статус: Участник

Создано: 24 сентября 2007 17:45
· Личное сообщение · #11

jangle пишет:
хочу написать универсальный навесной протектор

Что универсально защищено - униерсально сломается.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 24 сентября 2007 21:14
· Личное сообщение · #12

Azur1d пишет:
Что универсально защищено - униерсально сломается.


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




1bf9_24.09.2007_CRACKLAB.rU.tgz - Project1.zip



Ранг: 160.1 (ветеран)
Активность: 0.070
Статус: Участник

Создано: 24 сентября 2007 22:15
· Личное сообщение · #13

jangle пишет:
Слышал, что MS жестко предупредила производителей USB устройств, о том, чтобы в каждом устройстве присуствовал неизменяемый SerialNumber, т.к. из-за безопастности, в новых версиях виндов, устройства без серийника не будут работать.

что значит "без серийника" ? он там есть, просто он одинаков на всей партии ;)




Ранг: 156.2 (ветеран), 2thx
Активность: 0.090
Статус: Участник

Создано: 24 сентября 2007 23:24
· Личное сообщение · #14

jangle
ты тему вопросом назвал "...можно ли сломать?"
а можно ли архив WinRar запароленный сломать?? Вот тебе и ответ!!!




Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 25 сентября 2007 01:36
· Личное сообщение · #15

jangle пишет:
А вот если во флешку запихать ресурсы от игры, гигабайт картинок, музыки и видео.


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

jangle пишет:
Как можно читать сектора? Через DeviceIoControl? Т.е. через драйвер виндов.


Тебе же сказали - учи мат.часть



Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 26 сентября 2007 09:34
· Личное сообщение · #16

jangle пишет:
Нужно встречаться с кракером лично, и передать ему флеху с программой.


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




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 26 сентября 2007 13:37
· Личное сообщение · #17

Gmc пишет:
Так и тебе придется встречаться с покупателем лично, через инет ты прогу не продашь. По почте будешь флешки рассылать.


Можно сделать так, пользователь скачает утилиту которая определит HardwareID (SN+другие служебные поля) его флешки, и перешлет этот ключ мне. Я сформирую защиту таким образом, чтобы этот HardwareID был ключом для расшифровки бинарного кода и вышлю программу пользователю. Таким образом программа будет привязана к флешке, и встречаться не надо.




Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 26 сентября 2007 13:47
· Личное сообщение · #18

Кстати а HardwareID не эмулируется и не подменяется никак? Может перепрошивается? Если подобная возможность есть, то все сводиться к покупке одного данного продукта

-----
Computer Security Laboratory





Ранг: 141.4 (ветеран)
Активность: 0.050
Статус: Участник

Создано: 26 сентября 2007 13:50
· Личное сообщение · #19

jangle, а что в таком случае помешает отреверсить "утилиту которая определит HardwareID (SN+другие служебные поля) его флешки" и затем сделать что-то эмуля именно этих данных?.. Стойкость защиты определяется её самым слабым звеном.



Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 26 сентября 2007 14:03
· Личное сообщение · #20

[HEX] пишет:
все сводиться к покупке одного данного продукта


Отвязывается от флешки и выкладывается в инет.

intro пишет:
а что в таком случае помешает отреверсить "утилиту которая определит HardwareID (SN+другие служебные поля) его флешки" и затем сделать что-то эмуля именно этих данных?.. Стойкость защиты определяется её самым слабым звеном.


Он хочет привязывать криптор к этому ключу, т.е. для каждого юзера будет разный билд проги, HardwareID это пароль к расшифровке ехе. Поэтому эта "утилита" не поможет.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 26 сентября 2007 14:22
· Личное сообщение · #21

[HEX] пишет:
Кстати а HardwareID не эмулируется и не подменяется никак? Может перепрошивается? Если подобная возможность есть, то все сводиться к покупке одного данного продукта


Под HardwareID я подрозумеваю, некий хешированный образ суммы различных полей флешки. Серийный номер, строка производителя, версия прошивки контроллера и т.д.

intro пишет:
jangle, а что в таком случае помешает отреверсить "утилиту которая определит HardwareID (SN+другие служебные поля) его флешки" и затем сделать что-то эмуля именно этих данных?.. Стойкость защиты определяется её самым слабым звеном.



В таком случае, можно вообще не определять HardwareID в утилите , а просто вырезать кусок служебной памяти флешки (1-2 кбайт) и отсылать его разработчику. А он уже сам определит, к каким адресам привязываться. Причем сделать все в автоматическом режиме, вошел в инет, запустил утилиту, нажал кнопку и дамп ушел.



Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 26 сентября 2007 14:33
· Личное сообщение · #22

jangle пишет:

Под HardwareID я подрозумеваю, некий хешированный образ суммы различных полей флешки. Серийный номер, строка производителя, версия прошивки контроллера и т.д.


jangle пишет:
а просто вырезать кусок служебной памяти флешки (1-2 кбайт) и отсылать его разработчику


Как это все поможет при наличии флешки и работающей с ней прогой?




Ранг: 141.4 (ветеран)
Активность: 0.050
Статус: Участник

Создано: 26 сентября 2007 14:39 · Поправил: intro
· Личное сообщение · #23

jangle, это всё хорошо конечно, пока не найдётся умелец, купивший (взявший на прокат, и тд) полную версию проги и не напишет софт/драйвер виртуального устройства наподобие эмулей CD/DVD. И таким образом, при наличии эмуля, сделав однажды дамп диска и имея копию софта, привязанную к этому брелоку, мы получаем варезную копию. Никто не говорит, что это легко и быстро. Это не так. Но такое возможно.




Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 26 сентября 2007 14:46 · Поправил: jangle
· Личное сообщение · #24

Gmc пишет:
Как это все поможет при наличии флешки и работающей с ней прогой?


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

зашифрованный код -->
xxxxxxxxxxxxxxxxxxxxx[фрейм 1-2 команды]xxxxxxxxxxxxxxxxxxxxxxxxx




Ранг: 35.6 (посетитель)
Активность: 0.020
Статус: Участник

Создано: 26 сентября 2007 15:21
· Личное сообщение · #25

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


А кто говорит дампить, флешку сэмулировать как говорит intro



Ранг: 251.3 (наставник), 81thx
Активность: 0.140.11
Статус: Участник

Создано: 26 сентября 2007 15:49
· Личное сообщение · #26

intro пишет:
jangle, это всё хорошо конечно, пока не найдётся умелец, купивший (взявший на прокат, и тд) полную версию проги и не напишет софт/драйвер виртуального устройства наподобие эмулей CD/DVD.

Это всё сложно слишком.
Гораздо проще отловить API (а их не много) при помощи которого читается серийник с флешки и подставить вместо него нужный (кем-то купленный).
Всё. А код чтения серийника по определению не шифрован, так что проблем не вижу.
jangle пишет:
Например динамическую расшифровку по несколько инструкций и их последовательное исполнение, с последующим зашифрованием пройденных команд

Ага, и в свой мега калькулятор ещё прийдётся дизассемблер встраивать (как минимум дизассемблер длин).
Как ты по другому узнаеш где команда началась и где закончилась?
Плюс если с последующим шифрованием - то это надо код в пошаговом режиме выполнять чтоб перехватывать моменты завершения работы 1-2 инструкций..
Я даже представить боюсь как всё это быстро работать будет.




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 30 сентября 2007 15:23
· Личное сообщение · #27

[HEX] пишет:
Кстати а HardwareID не эмулируется и не подменяется никак?

Ну если VolumeID и HardwareID одно и тоже, то с помощью --> этой <-- http://www.microsoft.com/technet/sysinternals/FileAndDisk/VolumeId.mspx проги меняется на ура...
Если нет, то в чём разница и чем получить HardwareID?

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 71.9 (постоянный), 4thx
Активность: 0.040
Статус: Участник

Создано: 30 сентября 2007 16:41
· Личное сообщение · #28

Isaev пишет:
Если нет, то в чём разница и чем получить HardwareID?


Это разные вещи, см. ранние посты. Серийник флешки хранится в ПЗУ чипа, получить его можно через DeviceIoControl параметр IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 30 сентября 2007 17:03
· Личное сообщение · #29

Спасибо, понял.

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 467.7 (мудрец), 5thx
Активность: 0.270
Статус: Участник
Иной :)

Создано: 04 октября 2007 12:20 · Поправил: [HEX]
· Личное сообщение · #30

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

-----
Computer Security Laboratory





Ранг: 141.4 (ветеран)
Активность: 0.050
Статус: Участник

Создано: 04 октября 2007 13:21
· Личное сообщение · #31

[HEX] пишет:
тут спросили программу с помощью которой можно навесить защиту на запуск любого приложения. Желательно способ индефикации по флешке или на кройняк по паролю что не очень желательно. Чего посоветуете, а то таким вопрос не задавался, а человеку надо чем то помочь

это немного оффтоп, конечно. но если есть время, можно написать что-то типа своего лаунчера, в нём сделать привязку к флэшке, серийнику, да к чему угодно, а экзешники прог при добавлении в лаунчер шифровать/сжимать/переименовывать/изменять расширение наконец Делать в принципе не особо долго, а для данной цели подойдёт как нельзя лучше.

А вообще уже есть готовые лаунчеры для portable-версий прог, но на счёт наличия функции защиты на запуск в таких прогах не уверен.


<< . 1 . 2 . 3 . >>
 eXeL@B —› Крэки, обсуждения —› Привязка программы к флешке, можно ли сломать без нее?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати