Сейчас на форуме: padad42664, kris_sexy, site-pro, vasilevradislav (+6 невидимых) |
![]() |
eXeL@B —› Крэки, обсуждения —› MP3book2005 - читает с интонацией. Исследоввание защиты. |
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 15 . 16 . >> |
Посл.ответ | Сообщение |
|
Создано: 02 мая 2006 13:31 · Личное сообщение · #1 Прошло много лет и я снова заинтересовался речевыми движками. Оказывается народ много сделал для этого. Как вы знаете нужна специальная программа - читалка. Сейчас в интернете все больше становится популярной MP3book2005, которая читает с интонацией и имеет массу удобных функций. Вот ее я и решил исследовать. mp3book2005.narod.ru/MP3book2005.zip Сразу бросается в глаза простая уязвимость - программа выводит сообщение при вводе неправильного ключа. Причем использует банальную функцию msvbvm60.rtcMsgBox. Программа написана на Vb. Упакована как показывает Peid ASPack 1.06b / 1.061b -> Alexey Solodovnikov. Но по-моему автор там еще самодеятельностью занимался. Ограничения программы - все работает, кроме сервисных функций: пополнения словаря, поиск омографов, имен. В общем дополнительная комфортность. Каждая ограниченная функция выводит сообщение, что дескать просим зарегистрироваться. Путем установки бряков удалось выяснить, что сообщение о неправильном ключе выводится по адресу 0047B2F4, пройдя выше потерял след на адресе 0047AF22. Решил зайти с другого бока, выяснил, что по адресу 0047A9Ac загружается введеный код и происходит его обработка. Но вот беда программа почти не дает ставить бряки, сразу вываливается в исключения. Пишет "ошибка переполнения". Ломал Олей. Любимый отладчик. Кто может помочь с распаковкой или советом, как предолеть эту преграду, пишите. Но вот все же кусочек отломил. Чтобы программа сохраняла обработанный текст достаточно заменить по адресу 0046D209 JZ на JNZ. Хочется разумеется боьшего. ![]() |
|
Создано: 02 мая 2006 13:42 · Поправил: nikitosk · Личное сообщение · #2 |
|
Создано: 02 мая 2006 14:01 · Личное сообщение · #3 |
|
Создано: 02 мая 2006 18:12 · Личное сообщение · #4 К сожалению как писал Alexus2006 у меня не получилось(пока), может после распаковки получится. Но я написал Лоадер (удобно никакой распаковки). Текст внизу. Изменить значение байта в адресном пространстве открытого процесса #485C3A 117 (#75) 4Изменить значение байта в адресном пространстве открытого процесса #48B775 133 (#85) 5Изменить значение байта в адресном пространстве открытого процесса #46D209 117 (#75) 6Изменить значение байта в адресном пространстве открытого процесса #482E0C 117 (#75) Основные функции включились. У всех функций защита однотипная. Поднимаешься на несколько строк над Box-ом и меняешь переход. ![]() |
|
Создано: 03 мая 2006 06:26 · Личное сообщение · #5 |
|
Создано: 03 мая 2006 08:57 · Личное сообщение · #6 |
|
Создано: 03 мая 2006 11:16 · Личное сообщение · #7 |
|
Создано: 03 мая 2006 11:38 · Личное сообщение · #8 |
|
Создано: 03 мая 2006 13:38 · Личное сообщение · #9 |
|
Создано: 03 мая 2006 15:30 · Личное сообщение · #10 может если надо кому... распаковал... пропатчил exe... реагирует на любой код <=9 символов... запаковал ASPack 2.12 (снимается в 3 сек если надо подправить) размер 144 КБ ![]() ![]() |
|
Создано: 03 мая 2006 19:43 · Личное сообщение · #11 Чем запаковано было (оригинал)? Самодельное что-то? Вот с распаковкой сколько ни старался, не смог освоить. Патчу на лету и никаких проблем. Да кстати, Alexus2006, а ты нашел процедуру обработки введеного кода? Прога работает только с движком Nicola Cube. Кряк я к нему нашел, если нужно кину для поклонников компьютерных дикторов. Вообще могу поделиться опытом работы с программой. ![]() |
|
Создано: 04 мая 2006 05:51 · Личное сообщение · #12 |
|
Создано: 05 мая 2006 13:40 · Личное сообщение · #13 Вот кряк для речевого движка. Сейчас напишу об особенностях работы проги. ![]() ![]() |
|
Создано: 05 мая 2006 13:49 · Личное сообщение · #14 |
|
Создано: 05 мая 2006 14:04 · Личное сообщение · #15 Если прочитали два прежних сообщения, расскажу, чем понравилась мне прога. В ней можно устанавливать паузы между абзацами. Ужасно это напрягает, когда диктор строчит без перерыва. Но чтобы паузы работали нужно текст правильно отформатировать и избавиться от лишних переносов. Вот как я справляюсь с этими проблемами: Скачал еще одну читалку - Cool reader. Брать здесь: www.soft-info.ru/bot/hits.php?id=3766&url=http://buggins.fromru.com/cr2-00-44a.zip Эта читалка не очень продвинутая, но текст форматирует классно. Загружаешь, потом сохраняешь в формате RTF. Все абзацы форматируются так как нужно. Для удаленя лишних переносов скачал макрос Верстка 5. Ну с макросом наверное разберетесь. Прикрепляю его ниже Потом сохраняете в режиме текст Windows (по-умолчанию). Такое жонглирование стоит результата. ![]() ![]() |
|
Создано: 16 июня 2006 15:18 · Личное сообщение · #16 Кстати, насчет mp3b2005 версия 336. А патчик 335. Далее, копируем в прогу, запускаем, вводим 9 символов. Все ОК, прога зарегистрирована. Требуется перезапустить прогу. Запускаем - видим, что опять НЕЗАРЕГИСтрированная версия. Может это связано с версией? Да и файл по другому называется в 336 версии --- "Mp3book2005.exe". В 335 версии - Mp3b2005.exe. 335 версию этой проги не найти уже. ![]() |
|
Создано: 17 июня 2006 03:58 · Личное сообщение · #17 Распаковал прогу. Открыл в VBDecompiler: code->reg->Command12_481d50. Открыл прогу в Оле. Перешел на "00481D50" соответственно. Тупо ввел поиск "cmp ecx,eax". Сразу нашел строку "00482428 . 3BC8 CMP ECX,EAX". Посмотрел, а в ней сравнивается ключ что я ввел с числом "270035971". Дальне ничего интересного. Перезапустил прогу, ввел "270035971". Регистрация прошла успешно. В папке появился файл "MP3book2005.key" с введенным ключом. ![]() ![]() |
|
Создано: 17 июня 2006 09:27 · Личное сообщение · #18 В общем, автор лучше б уж использовал AsProtect'овские механизмы. А зачем до регистрации в программе оставлять код, который только после неё работает? Просто прислать бы потом dll'ку и всё. iSFix как ты догадался искать именно эту команду? У меня так никогда не получалось. Или это особенности VB? Я с программами на VB никогда ещё не сталкивался. ![]() |
|
Создано: 17 июня 2006 10:06 · Личное сообщение · #19 iSFix Дак как насчет патчика 336 версии-то? Вот на 335 версию Alexus2006 все хорошо сделал, "правильно". А то "Распаковал прогу. Открыл в VBDecompiler: code->reg->Command12_481d50. Открыл прогу в Оле. Перешел на "00481D50" соответственно. Тупо ввел поиск "cmp ecx,eax". Сразу нашел строку "00482428 . 3BC8 CMP ECX,EAX". Посмотрел, а в ней сравнивается ключ что я ввел с числом "270035971". Дальне ничего интересного. Перезапустил прогу, ввел "270035971"........ Как -то не интересно. Если серьезно, сваргань патчик, если не сложно, нужная прога, интересная. ![]() ![]() |
|
Создано: 17 июня 2006 12:54 · Личное сообщение · #20 Да я тоже VB не очень люблю. ![]() А так, всегда как ломаю прогу сначала ищу процедуру регистрации, а в ней стандартно: String Reference, lstrcmp, cmp ecx, eax, ..._cmpstr.. (для VB) и т.д., и соответственно бряки на MessageBox/Beep, GetWindowTextA и т.п. (если не помагает, начинаю исследовать код). Касательно патча - сложно, т.к. изучать проги начал меньше месяца назад, не знаю ни одного языка программирования (начал учить асм) ![]() ![]() ![]() |
|
Создано: 17 июня 2006 17:07 · Личное сообщение · #21 |
|
Создано: 17 июня 2006 23:30 · Личное сообщение · #22 Alexus2006 пишет: я кста закегенить так и несмог напишить подробно как сделать кейген на эту прогу... дык вродь все ясно: 00482414 8B8D 2CFFFFFF MOV ECX,DWORD PTR SS:[EBP-D4] 0048241A FF15 B0104000 CALL DWORD PTR DS:[<&msvbvm60.__vbaI4Abs>; msvbvm60.__vbaI4Abs 00482420 8B4D E4 MOV ECX,DWORD PTR SS:[EBP-1C] 00482423 35 E8C7F400 XOR EAX,0F4C7E8 00482428 3BC8 CMP ECX,EAX с [EBP-D4] берем 4исло, делаем ему NEG (0048241A) и ксорим с 0F4C7E8h. Вопрос только один - с какого адреса происходит запись hardware-id (имхо) в [EBP-04] ----- HOW MUCH BLOOD WOULD YOU SHED TO STAY ALIVE ![]() |
|
Создано: 18 июня 2006 18:57 · Личное сообщение · #23 Проверьте кто-нибудь, пожалуйста. Положите мою версию файла в папку с прогой и запустите. Программа должна регистрироваться на любое число (патча не делал, т.к. прога в инстале пакованая). ![]() ![]() |
|
Создано: 18 июня 2006 19:58 · Личное сообщение · #24 Может кому интересно. По поводу изменений в программе MP3Book2005.exe Сначала было так: 00482420 8B4D E4 MOV ECX,DWORD PTR SS:[EBP-1C] 00482423 35 E8C7F400 XOR EAX,0F4C7E8 00482428 . 3BC8 CMP ECX,EAX 0048242A 0F85 0C030000 JNZ MP3BOO~3.0048273C 00482430 . 393D 10604B00 CMP DWORD PTR DS:[4B6010],EDI Так в 00482428 сравнивается наше число из ECX с правильным из EAX. Чуть выше наше число было взято из стека: DWORD PTR SS:[EBP-1C] Открыл ArtMoney (прога для взлома игр) и включил поиск моего числа, оно оказалось только по этому адресу: 0012F5F4 или же [EBP-1C]. Проверил, файл "MP3book2005.key" еще не создан, знач он создается при закрытии программы (что и показала проверка). К сожалению, эта же проверка показала, что изменить только ECX недостаточно, т.к. в файл записывается число, введенное нами (которое в стеке). Поэтому добавил строку MOV DWORD PTR SS:[EBP-1C],EAX чтоб положить правильное число вместо нашего в стек. Т.к. нехватало места пришлось удалить строки: MOV ECX,DWORD PTR SS:[EBP-1C] (была по адресу 00482420) JNZ MP3BOO~3.0048273C (была по адресу 0048242A) В принципе можно было удалить и некоторые другие строки, но я поленился ![]() Вобщем получилось так: 00482420 . 35 E8C7F400 XOR EAX,0F4C7E8 00482425 . 8BC8 MOV ECX,EAX 00482427 . 3BC8 CMP ECX,EAX 00482429 . 8945 E4 MOV DWORD PTR SS:[EBP-1C],EAX 0048242C . 90 NOP 0048242D . 90 NOP 0048242E . 90 NOP 0048242F . 90 NOP 00482430 . 393D 10604B00 CMP DWORD PTR DS:[4B6010],EDI ![]() |
|
Создано: 19 июня 2006 11:26 · Личное сообщение · #25 |
|
Создано: 19 июня 2006 11:32 · Личное сообщение · #26 |
|
Создано: 19 июня 2006 12:56 · Личное сообщение · #27 |
|
Создано: 19 июня 2006 13:22 · Личное сообщение · #28 |
|
Создано: 19 июня 2006 18:33 · Личное сообщение · #29 |
|
Создано: 19 июня 2006 18:56 · Личное сообщение · #30 iSFix Победа!!! Спасибо тебе мил человек, все вроде заработало. Скопировал в дирек. проги, запустил. Потом запустил файл проги, зарегистрировался (ввел 9-ти значный цифровой код) и прога стала нормальной. Поработаем, посмотрим, ничего там не попортилось. От лица пользователей MP3Book2005 версии 336 выражается офигенная благодарность!!! ![]() |
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 15 . 16 . >> |
![]() |
eXeL@B —› Крэки, обсуждения —› MP3book2005 - читает с интонацией. Исследоввание защиты. |
Эта тема закрыта. Ответы больше не принимаются. |