Сейчас на форуме: site-pro, kris_sexy, vasilevradislav (+5 невидимых) |
eXeL@B —› Крэки, обсуждения —› Radmin 3.0 Final |
Посл.ответ | Сообщение |
|
Создано: 19 апреля 2007 10:45 · Личное сообщение · #1 сама программа Trial: --> Radmin 3.0 trial <-- http://www.radmin.ru/download/radmin30ru.zip Имеется программа для продления триальности по принципу чистки реестра с алгоритмом: О продлении триальности программы Radmin Server 3.0 1. Radmin Server 3.0 устанавливает в реестре две записи о времени начала использования программы. Этот процесс происходит не при инсталляции программы, а при первой попытке клиента RadminViewer подключиться к серверу. 2. Обе записи находятся в ветке HKEY_CLASSES_ROOT\CLSID Причем, одна запись - это создается одна новая ветка с параметрами визуально похожими на бессмысленный мусор. Имя этой ветки зависит от HardWare компьютера, на котором установлен Rserver. Алгоритм формирования имени известен только Rserver. А вторая запись - это по известному только RadminServer алгоритму выбирается уже существующая ветка и в ней модифицируется запись "Default". Имя этой ветки зависит от HardWare компьютера, на котором установлен Rserver. Причем, модификация заключается в добавлении к значению ключа "Default" нескольких символов, которые следуют уже за маркером конца строки. Поэтому в regedit не видно факта изменения значения параметра "Default" (и сделать такую модификацию стандартными средствами нельзя). Можно только увидеть в Win2000 в regedt32.exe или в WinXP в regedit.exe при выборе просмотра edit->modify binary data. Эти ключи выбираются программой Rserver только один раз и их расположение больше не меняется (для конкретно взятого компьютера). Для продления срока триальности программы достаточно уалить новую ветку с "мусором", а в модифицированной ветке перезапизать значение "Default". 3. Есть два способа сделать это: а) Перед первым обращением клиента к серверу необходимо сделать слепок реестра программой Regsnap и второй слепок реестра сделать сразу после попытки обращения клиента к серверу. Сравнить эти два слепка и в строке NewKeys найти что-то типа: New keys HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28} HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28}\InprocServer32 HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28}\InprocServer32\@ Value: String: "C:\WINDOWS\system32\ikcjafej.dll" HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28}\Vsg HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28}\Vsg\@ Value: String: "ZWDEqsOi5hKn8qCrNZRM" Значит, ветка HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{40DEBFCD-419C-5972-20DC-1E6 65D31BA28} должна быть целиком удалена. Теперь ищем вторую запись в разделе Modified keys. Это должна быть запись "пустого" изменения параметра что-то типа такого: Modified keys HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{12D73610-A1C9-11D3-BC90-00C 04F72DF9F}\@ New: String: "SpITNProcessor Class" Old: String: "SpITNProcessor Class" Значит, необходимо перезаписать значение "SpITNProcessor Class" Это делается созданием REG-файла: Windows Registry Editor Version 5.00 [-HKEY_CLASSES_ROOT\CLSID\{40DEBFCD-419C-5972-20DC-1E665D31BA28}] [HKEY_CLASSES_ROOT\CLSID\{12D73610-A1C9-11D3-BC90-00C04F72DF9F}] @="SpITNProcessor Class" Достаточно запускать этот REG-файла раз в месяц. Выгружать Rserver не надо. б) А если отсчет триального периода уже начался? Тогда для вылавливания новой ветки с мусором запускаем программу Regmon от Sysinternals. Устанавливаем фильтр по rserver3.exe и включаем на запись все обращения к реестру и делаем попытку обращения клиента к серверу. Останавливаем запись и просто просматриваем протокол записи - ищем "мусор" типа "ZWDEqsOi5hKn8qCrNZRM". Соответственно, убиваем эту ветку. Не закрывем этот протокол. Теперь будем искать модифицированную запись. Для этого надо FAR v1.70 и плагин Registry Browser - Вьюер-редактор системного реестра для FAR Версия 2.19, 11.10.2003 Запускаем FAR запускаем плагин Registry Browser. Идем в ветку HKEY_CLASSES_ROOT\CLSID Нажимаем комбинацию Alt+F7 в поле "A file mask or several file masks:" пишем (Default) отмечаем галку [Х] Search for hex вносим в поле "Containing text:" два нуля 00 и нажимаем [ Find ] Среди найденных значений нас интересуют только те, у которых длина записи больше 4. Все остальные (а их очень немного) можно проверить по имени ветки на предмет присутствия при обращении rserver3.exe в Regmon от Sysinternals. А можно и просто все эти значения перезаписать. Для этого просто открываем в реестре это значение и жмем OK. END -------------------------------------------------- Теперь поставил задачу сделать ее триальной навсегда, для этого достаточным и необходимым условием является выборочный запрет на запись/чтение в реестр. есть несколько путей, я попытался пойти по пути написания proxy/stub библиотеки для advapi32.dll но результат надо сказать плачевный, программа не подхватывает мою прокси библиотеку лежащую вместе с radmin, а все равно берет из system32 вот вопросы, как сделать так чтоб бралась из той папки (в WinXP вроде есть функция использования разных версий библиотек для разных программ WinSxS, как ее заюзать?). есть какие нить соображения? или может кто нить путем внедрения при помощи лоадера сможет это реализовать? |
|
Создано: 19 апреля 2007 10:49 · Личное сообщение · #2 |
|
Создано: 19 апреля 2007 10:52 · Личное сообщение · #3 |
|
Создано: 19 апреля 2007 12:54 · Личное сообщение · #4 |
|
Создано: 19 апреля 2007 13:42 · Личное сообщение · #5 |
|
Создано: 19 апреля 2007 14:26 · Личное сообщение · #6 |
|
Создано: 19 апреля 2007 14:48 · Личное сообщение · #7 |
|
Создано: 19 апреля 2007 15:12 · Личное сообщение · #8 |
|
Создано: 19 апреля 2007 15:20 · Личное сообщение · #9 |
|
Создано: 19 апреля 2007 16:43 · Личное сообщение · #10 |
|
Создано: 19 апреля 2007 17:07 · Личное сообщение · #11 |
|
Создано: 19 апреля 2007 18:07 · Личное сообщение · #12 WoLFeR, там защищен он от отладки, SoftIce с трудом пашет, так что реверсить тяжко... поэтому думаю проще будет цепануть RegOpenKeyA (RegOpenKeyExA) и в них производить разбор параметров, типа если это его родная ветка, то пускаем, если куда то в дебри полез, вываливаем с ошибкой(смею предположить что этот финт может прокатить), или мож уже на чтении/записи значений перехватывать... конечно проще всего подсунуть ему свою advapi32.dll, но чет не придумаю как... если тока лоадер написать, который будет перехватывть LoadLibraryA... и отслеживать загрузку advapi32 и подменять ее нашей... |
|
Создано: 19 апреля 2007 19:02 · Личное сообщение · #13 |
|
Создано: 22 апреля 2007 21:34 · Личное сообщение · #14 |
|
Создано: 23 апреля 2007 08:32 · Личное сообщение · #15 |
|
Создано: 24 апреля 2007 14:11 · Личное сообщение · #16 |
|
Создано: 24 апреля 2007 17:43 · Личное сообщение · #17 |
|
Создано: 24 апреля 2007 17:50 · Личное сообщение · #18 |
eXeL@B —› Крэки, обсуждения —› Radmin 3.0 Final |
Эта тема закрыта. Ответы больше не принимаются. |