![]() |
eXeL@B —› Основной форум —› прога PDF-Tools 3.50 build 0100 осталось вроде совсем чуть чуть... |
Посл.ответ | Сообщение |
|
Создано: 05 мая 2006 11:57 · Личное сообщение · #1 ссылка на прогу есть в топике "запорсы на взлом программ" на 23 странице... скачал я ее значит... ни чем она не запакована... после инстала появилось вот что в папке с прогой есть папка TLanguages\ а в ней файлы примерно следующего содержания ; Language template file for PDF-Wizards3 ; Copyright (C) 2002-2005 by Tracker Software. $langname = "Russian" ; different IDs ; Ukrainian: 0x422 ; Russian: 0x419 ; English (US): 0x409 ; English (UK): 0x809 ; French: 0x40c ; German (Gr): 0x407 $langid = 0x419 $flag = ; Don't change this string $productID = "PDFWizards3" "Start" = "Пуск" "Tool Description" = "Описание инструмента" "Select Tool" = "Выбор инструмента" "Preferences..." = "Установки..." "Advanced Mode..." = "Дополнительно..." "Edit Registration Information..." = "Редактирование регистрационных данных..." "Comments" = "Комментарии" "Application" = "Программа" "Support for PDF-Tools" = "Поддержка для PDF-Tools" "Demo Version" = "Демо версия" "Single User" = "На одного пользователя" "10 Users License" = "На 10 пользователей" "25 Users License" = "На 25 пользователей" "50 Users License" = "На 50 пользователей" "100 Users License" = "На 100 пользователей" "250 Users License" = "На 250 пользователей" "500 Users License" = "На 500 пользователей" "1000 Users License" = "На 1000 пользователей" "Product ID:" = "Ид. продукта:" "Licence Type:" = "Тип лицензии:" следовательно прога при любом исходе регистрации должна читать из этого файла. При регистрации не активная кнопка "ОК" и она похоже должна разлочится при вводе верного серийника, кнопку разлочил нажал (обычно этого хватает) вроде как всё нормально но все равно пишет демо версия. нашёл вызов GetWindowTextW вот тут: 0042C350 /$ 53 PUSH EBX 0042C351 |. 8B5C24 08 MOV EBX,DWORD PTR SS:[ESP+8] 0042C355 |. 53 PUSH EBX ; /hWnd 0042C356 |. FF15 10745100 CALL DWORD PTR DS:[<&USER32.IsWindow>] ; \IsWindow 0042C35C |. 85C0 TEST EAX,EAX 0042C35E |. 75 12 JNZ SHORT PDFTools.0042C372 0042C360 |. 8B4C24 0C MOV ECX,DWORD PTR SS:[ESP+C] 0042C364 |. 68 08885100 PUSH PDFTools.00518808 0042C369 |. E8 32E5FDFF CALL PDFTools.0040A8A0 0042C36E |. 33C0 XOR EAX,EAX 0042C370 |. 5B POP EBX 0042C371 |. C3 RETN 0042C372 |> 56 PUSH ESI 0042C373 |. 57 PUSH EDI 0042C374 |. 53 PUSH EBX 0042C375 |. FF15 9C935400 CALL DWORD PTR DS:[54939C] ; PDFTools.004E9DC2 0042C37B |. 8B7424 14 MOV ESI,DWORD PTR SS:[ESP+14] 0042C37F |. 8D78 01 LEA EDI,DWORD PTR DS:[EAX+1] 0042C382 |. 6A 01 PUSH 1 0042C384 |. 57 PUSH EDI 0042C385 |. 8BCE MOV ECX,ESI 0042C387 |. E8 0487FEFF CALL PDFTools.00414A90 0042C38C |. 8B06 MOV EAX,DWORD PTR DS:[ESI] 0042C38E |. 57 PUSH EDI 0042C38F |. 50 PUSH EAX 0042C390 |. 53 PUSH EBX 0042C391 |. FF15 A0935400 CALL DWORD PTR DS:[5493A0] ; USER32.GetWindowTextW 0042C397 |. 837E 04 00 CMP DWORD PTR DS:[ESI+4],0 0042C39B |. 74 27 JE SHORT PDFTools.0042C3C4 0042C39D |. 8B06 MOV EAX,DWORD PTR DS:[ESI] 0042C39F |. 85C0 TEST EAX,EAX 0042C3A1 |. 74 21 JE SHORT PDFTools.0042C3C4 0042C3A3 |. 50 PUSH EAX 0042C3A4 |. FF15 28935400 CALL DWORD PTR DS:[549328] ; kernel32.lstrlenW 0042C3AA |. 8B4E 04 MOV ECX,DWORD PTR DS:[ESI+4] 0042C3AD |. 8D4400 02 LEA EAX,DWORD PTR DS:[EAX+EAX+2] 0042C3B1 |. 3BC1 CMP EAX,ECX 0042C3B3 |. 8946 08 MOV DWORD PTR DS:[ESI+8],EAX 0042C3B6 |. 76 13 JBE SHORT PDFTools.0042C3CB 0042C3B8 |. 5F POP EDI 0042C3B9 |. 894E 08 MOV DWORD PTR DS:[ESI+8],ECX 0042C3BC |. 5E POP ESI 0042C3BD |. B8 01000000 MOV EAX,1 0042C3C2 |. 5B POP EBX 0042C3C3 |. C3 RETN 0042C3C4 |> C746 08 000000>MOV DWORD PTR DS:[ESI+8],0 0042C3CB |> 5F POP EDI 0042C3CC |. 5E POP ESI 0042C3CD |. B8 01000000 MOV EAX,1 0042C3D2 |. 5B POP EBX 0042C3D3 \. C3 RETN после этого прога возвращается в такую функцию: 0042F0B0 /$ 6A FF PUSH -1 0042F0B2 |. 68 58465000 PUSH PDFTools.00504658 ; SE handler installation 0042F0B7 |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0] 0042F0BD |. 50 PUSH EAX 0042F0BE |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP 0042F0C5 |. 83EC 0C SUB ESP,0C 0042F0C8 |. 53 PUSH EBX 0042F0C9 |. 33DB XOR EBX,EBX 0042F0CB |. 56 PUSH ESI 0042F0CC |. 57 PUSH EDI 0042F0CD |. 8BF1 MOV ESI,ECX 0042F0CF |. 895C24 14 MOV DWORD PTR SS:[ESP+14],EBX 0042F0D3 |. 895C24 10 MOV DWORD PTR SS:[ESP+10],EBX 0042F0D7 |. 895C24 0C MOV DWORD PTR SS:[ESP+C],EBX 0042F0DB |. 8B46 04 MOV EAX,DWORD PTR DS:[ESI+4] 0042F0DE |. 8B3D F4735100 MOV EDI,DWORD PTR DS:[<&USER32.GetDlgIte>; USER32.GetDlgItem 0042F0E4 |. 8D4C24 0C LEA ECX,DWORD PTR SS:[ESP+C] 0042F0E8 |. 51 PUSH ECX 0042F0E9 |. 68 FF030000 PUSH 3FF ; /ControlID = 3FF (1023.) 0042F0EE |. 50 PUSH EAX ; |hWnd 0042F0EF |. 895C24 2C MOV DWORD PTR SS:[ESP+2C],EBX ; | 0042F0F3 |. FFD7 CALL EDI ; \GetDlgItem 0042F0F5 |. 50 PUSH EAX 0042F0F6 |. E8 55D2FFFF CALL PDFTools.0042C350 :\тут вызов GetWindowTextW 0042F0FB |. 83C4 08 ADD ESP,8 0042F0FE |. 8D5424 0C LEA EDX,DWORD PTR SS:[ESP+C] 0042F102 |. 52 PUSH EDX 0042F103 |. 8BCE MOV ECX,ESI 0042F105 |. E8 B6B4FFFF CALL PDFTools.0042A5C0 <-------------- (!!!) 0042F10A |. 8B76 04 MOV ESI,DWORD PTR DS:[ESI+4] 0042F10D |. 50 PUSH EAX 0042F10E |. 6A 01 PUSH 1 0042F110 |. 56 PUSH ESI 0042F111 |. FFD7 CALL EDI 0042F113 |. 50 PUSH EAX 0042F114 |. FF15 7C935400 CALL DWORD PTR DS:[54937C] ; USER32.EnableWindow 0042F11A |. 8B4424 0C MOV EAX,DWORD PTR SS:[ESP+C] 0042F11E |. 5F POP EDI 0042F11F |. 5E POP ESI 0042F120 |. 3BC3 CMP EAX,EBX 0042F122 |. 5B POP EBX 0042F123 |. 74 09 JE SHORT PDFTools.0042F12E 0042F125 |. 50 PUSH EAX 0042F126 |. E8 94E90B00 CALL PDFTools.004EDABF 0042F12B |. 83C4 04 ADD ESP,4 0042F12E |> 8B4C24 0C MOV ECX,DWORD PTR SS:[ESP+C] 0042F132 |. 33C0 XOR EAX,EAX 0042F134 |. 64:890D 000000>MOV DWORD PTR FS:[0],ECX 0042F13B |. 83C4 18 ADD ESP,18 0042F13E \. C2 1000 RETN 10 чуть ниже видно вызов 0042F105 |. E8 B6B4FFFF CALL PDFTools.0042A5C0 а дальше идет 0042F114 |. FF15 7C935400 CALL DWORD PTR DS:[54937C] ; USER32.EnableWindow которая очевидно и разлочивает кнопку "ОК" а для этого в EAX должно быть 1ца которую туда должна поместить вызываемая до функция. Вот что в ней: 0042A5C0 /$ 8B4424 04 MOV EAX,DWORD PTR SS:[ESP+4] 0042A5C4 |. 8B48 08 MOV ECX,DWORD PTR DS:[EAX+8] 0042A5C7 |. D1E9 SHR ECX,1 0042A5C9 |. 83E9 01 SUB ECX,1 0042A5CC |. 83F9 23 CMP ECX,23 ;/ очевидно длинна вводимого кода 35 символов Edit вмещает ровно столько же - проверял 0042A5CF |. 74 05 JE SHORT PDFTools.0042A5D6 0042A5D1 |. 33C0 XOR EAX,EAX 0042A5D3 |. C2 0400 RETN 4 0042A5D6 |> 8B08 MOV ECX,DWORD PTR DS:[EAX] 0042A5D8 |. 56 PUSH ESI 0042A5D9 |. 33D2 XOR EDX,EDX 0042A5DB |. 33F6 XOR ESI,ESI 0042A5DD |. 8D49 00 LEA ECX,DWORD PTR DS:[ECX] 0042A5E0 |> 83FA 05 /CMP EDX,5 0042A5E3 |. 0FB701 |MOVZX EAX,WORD PTR DS:[ECX] 0042A5E6 |. 75 0A |JNZ SHORT PDFTools.0042A5F2 0042A5E8 |. 66:3D 2D00 |CMP AX,2D 0042A5EC |. 75 30 |JNZ SHORT PDFTools.0042A61E 0042A5EE |. 33D2 |XOR EDX,EDX 0042A5F0 |. EB 18 |JMP SHORT PDFTools.0042A60A 0042A5F2 |> 66:3D 3000 |CMP AX,30 0042A5F6 |. 72 06 |JB SHORT PDFTools.0042A5FE 0042A5F8 |. 66:3D 3900 |CMP AX,39 0042A5FC |. 76 09 |JBE SHORT PDFTools.0042A607 0042A5FE |> 83C0 BF |ADD EAX,-41 0042A601 |. 66:3D 1900 |CMP AX,19 0042A605 |. 77 17 |JA SHORT PDFTools.0042A61E 0042A607 |> 83C2 01 |ADD EDX,1 0042A60A |> 83C6 01 |ADD ESI,1 0042A60D |. 83C1 02 |ADD ECX,2 0042A610 |. 83FE 23 |CMP ESI,23 0042A613 |.^7C CB \JL SHORT PDFTools.0042A5E0 0042A615 |. B8 01000000 MOV EAX,1 <--- (!!!) 0042A61A |. 5E POP ESI 0042A61B |. C2 0400 RETN 4 <--- выход с 1ей в EAX для открытия кнопки "ОК" 0042A61E |> 33C0 XOR EAX,EAX <--- EAX =0 0042A620 |. 5E POP ESI 0042A621 \. C2 0400 RETN 4 <--- кнопка ОК залочена значит выше по коду перед успешным выходом проверка валидности кода... так? а как теперь сделать кейген? помогите пожалуйста? ![]() |
|
Создано: 05 мая 2006 14:58 · Личное сообщение · #2 |
|
Создано: 05 мая 2006 16:48 · Поправил: [HEX] · Личное сообщение · #3 Нужен именно КейГен? Или патч пройдет? Патч теоретически такой: 0042A5CF |. 74 05 JE SHORT PDFTools.0042A5D6 замени на PUSH ESI JMP SHORT PDFTools.0042A615 Хотя помоему это только разлочит кнопку и все =) Дальше смотри где уже будет сама проверка серийника на валидность и активизацию проги. ----- Computer Security Laboratory ![]() |
|
Создано: 05 мая 2006 17:05 · Личное сообщение · #4 это все понятно... кнопка разлочится при любом введённом коде в таком случае... но там дальше где то ещё что то проверяется и прога пишет DEMO VERSION, а можно как нибудь узнать какая последовательность сомволов пройдет через эту функцию и выйдет с 1ей в EAX ? тогда править переходы не придётся и некоторые из них будут верными ключами... Это можно какнибудь сделать? Просто там дальше прога покриптованные функции из Dll-ек вызывает. Да и в самой проге много закриптовано. И везде разными алгоритмами. ![]() |
|
Создано: 05 мая 2006 19:44 · Личное сообщение · #5 Alexus2006 беглым взглядом видна проверка символов 30-39 и 2D что проверяет символы от 0 до 9 и символ - Помоему здесь больше ничего нет =) Поэтому скорей всего код должен быть из одних цифр с каким то разделителем ввиде знака минус ( - ). Ты особо не заморачивайся на этом, лучше дальше смотри что и как происходит с твоим введеным серийником. ----- Computer Security Laboratory ![]() |
|
Создано: 08 мая 2006 10:15 · Личное сообщение · #6 Через каждые пять символов должен быть "-" я так понял: 0042A5E0 |> 83FA 05 /CMP EDX,5
----- Недостаточно только получить знания:надо найти им приложение ![]() |
|
Создано: 08 мая 2006 10:58 · Личное сообщение · #7 |
|
Создано: 08 мая 2006 12:32 · Поправил: Mifodix · Личное сообщение · #8 |
|
Создано: 08 мая 2006 13:31 · Личное сообщение · #9 |
|
Создано: 08 мая 2006 18:58 · Личное сообщение · #10 |
|
Создано: 08 мая 2006 19:51 · Личное сообщение · #11 |
|
Создано: 08 мая 2006 20:21 · Личное сообщение · #12 |
|
Создано: 08 мая 2006 22:22 · Личное сообщение · #13 |
|
Создано: 08 мая 2006 22:41 · Личное сообщение · #14 |
|
Создано: 09 мая 2006 08:30 · Личное сообщение · #15 |
|
Создано: 10 мая 2006 09:57 · Поправил: Rascal · Личное сообщение · #16 0040B848 |. FF15 24785100 CALL NEAR DWORD PTR DS:[<&xccdx30.DS_crc32>] ; xccdx30.DS_crc32 Код SHA1 весьма интересен ![]() 006166E0 > MOV EAX,ECX
Зато где-то неподалёку какой-то длиннннный фрагмент кода, по таблице шарится исходя из цифр кода. Есть пркдложение забить на эту прогу и юзать другую ![]() ----- Недостаточно только получить знания:надо найти им приложение ![]() |
|
Создано: 10 мая 2006 15:34 · Личное сообщение · #17 |
|
Создано: 10 мая 2006 16:13 · Личное сообщение · #18 |
|
Создано: 10 мая 2006 22:38 · Личное сообщение · #19 Alexus2006 пишет: попробовать убить эту падлу.... Знать бы, как вообще работают с pdf, проблем бы не было, ватермарки не дали б записать и усё... Mifodix пишет: Чё-то я не догнал. Эта SHA1 для запугивания что ли? Ну там библа, в которой SHA1, есть и другие, более серьёзные методы. Плюс там crc32 используется. Nitrogen, как нашёл места эти??? Судя по совпадению ключей с другими прогами этой фирмы ключ состоит из частей, то есть там 2 проерки регистрации, мож ключ шифрования разный, а может и сам метод ----- Недостаточно только получить знания:надо найти им приложение ![]() |
![]() |
eXeL@B —› Основной форум —› прога PDF-Tools 3.50 build 0100 осталось вроде совсем чуть чуть... |