|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Апр 19, 2004 11:28:35 Доброго времени. Есть приложение(хотя пока его нет)) Которое при запуске проверяет наличее внешнего ключа, которыи цепляется на ЛПТ вход. Есть ли способ как-нить это побороть? |
|
|
Дата: Апр 19, 2004 11:43:21 ууу, а программа наверное 1C :))) |
|
|
Дата: Апр 19, 2004 11:52:21 Нет, не 1с, другая. Ключь к неи есть, праблема в том, что ее надо на ноутбук засунуть, да только в современных ноутах нет лпт(( |
|
|
Дата: Апр 19, 2004 12:11:26 · Поправил: q_q SammIk ноутах нет лпт И переходников, например, на usb, в природе не существует? |
|
|
Дата: Апр 19, 2004 12:59:32 Понятия не имею, если есть то хорошо. Но всеже возможно эмулировать такие ключи? |
|
|
Дата: Апр 19, 2004 13:32:19 afaik через те переходники и принтеры-то глючат. А нормальный донгл совсем не должен работать Сорри за оффтоп |
|
|
Дата: Апр 19, 2004 13:48:40 Тогда, что же с этои сволочью делать? |
|
|
Дата: Апр 19, 2004 15:00:53 SammIk Ну ты как маленький ребенок :) Если ключ легальный - обращайся к производителю софта, который тебе этот ключ дал, пусть он тебе его заменит на "такой же, только с перламутровыми пуговицами", то есть USB. Если производитель не в состоянии это сделать - задумайся, так ли чильно тебе нужна эта софтина? Если нелегальный - то теоретически ("если нечто запускается, то оно может быть сломано") при наличии работоспособного ключа можно сделать его эмулятор. А практически - зависит от твоего опыта и терпения (ну и везение тоже не помешает). Универсальных решений твоей проблемы скорее всего нет (может, что-то где-то и есть, но лично я этого "чего-то" руками не щупал). S_T_A_S_ А можно краткое объяснение для новичка, почему эта тема - оффтоп? Если совсем оффтоп - тогда напиши на ник@mail.ru. |
|
|
Дата: Апр 19, 2004 18:55:57 S_T_A_S_ Намек понял, исправляюсь :) Обычно разработчику защищаемого ПО всесте с ключом дают еще кучу док и (в зависимости от количества уплаченных за защиту денег) некоторое количество софта. В этот софт обязательно (ну, может, и не совсем обязательно - в тех случаях, которые видел я) входит драйвер для работы с ключом из ring0 и DLL-библиотека, с помощью которой можно обращаться к драйверу из ring3. Драйвер не документирован вообще, а функции, экспортируемые библиотекой, документированы довольно подробно, иногда даже с примерами. И еще может быть софт, который умеет запаковывать защищаемую прогу по каким-то своим хитрым недокументированным алгоритмам. Запакованная таким софтом прога может обращаться к драйверу, минуя DLL (часть кода DLL при этом дублируется в запакованной проге). Дальше все зависит от используемого способа защиты. Если используется DLL, то здесь все очень просто. Пишется своя DLL-библиотека, которая содержит функции с теми же именами. Эти функции сначала тупо дампят все передаваемые параметры (а они, как я уже говорил, хорошо документированы) и вызывают функции из оригинальной библиотеки (здесь вместо написания своей библиотеки можно даже воспользоваться любым API-монитором). А потом, когда ты уверен, что "поснифил" все нужные данные, пишешь свою DLL, которая будет возвращать те результаты, которые возвращала оригинальная DLL, пока ты их дампил. После чего подменяешь библиотеки, и все готово. При переносе проги на другой комп ты даже можешь не устанавливать на том компе драйвер ключа - достаточно твоей библиотеки. Если прога запакована, и библиотека не используется, то можно попытаться перехватывать вызовы драйвера (например, функцию DeviceIoControl), и все равно оставаться при этом в ring3 - хотя это и намного сложнее, чем в случае с DLL, но попытаться можно. Если же хочется сделать универсальное решение, тогда надо писать свой драйвер, и подменять им драйвер ключа. Тут я посоветовать ничего не могу (никогда ничего не писал под ring0), но подозреваю, что проблем будет очень много - функции совсем недокументированы, а драйвер наверняка запакован, так что тебе придется хорошенько помучиться, прежде чем ты сможешь его подменить. Хотя может быть, этот метод и ненамного сложнее, чем перехват DeviceIoControl... не знаю, не пробовал. В любом случае ты подходишь к драйверу, как к "черному ящику" - ты не знаешь, что делает драйвер (да и ключ тоже), да и знать не хочешь. Ты только знаешь, что в ответ на определенные данные он должен выдать определенный результат. Таким образом, эмулятор написать теоретически можно. А теперь самое время вспомнить про всевозможные проверки целостности, ужаснуться и отказаться от затеи с эмуляцией ;) |
|
|
Дата: Апр 19, 2004 19:57:39 SammIk А что за ключ? HASP? Rainbow Super Pro? Самопальное что-то (т.е. без марки)? Если последнее, то ответ RobinFood'а более чем исчерпывающий ;-) В противном случае следует искать доки/статьи по взлому конкретного семейства донглов. На васме кое-что есть... В сети море информации. |
|
|
Дата: Апр 20, 2004 07:47:08 Ок, всем спамибо, буду искать. |
|
|
Дата: Июл 22, 2004 09:56:48 |
|
|
Дата: Июл 22, 2004 09:56:53 · Поправил: MeteO : |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.050 |