![]() |
eXeL@B —› Протекторы —› Объясните как найти спертые байты |
. 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 07 ноября 2005 22:00 · Личное сообщение · #1 Здравствуйте! Пытаюсь распаковать прогу. Дохожу до куска типа: 00489EE6 0000 ADD BYTE PTR DS:[EAX],AL 00489EE8 0000 ADD BYTE PTR DS:[EAX],AL 00489EEA 0000 ADD BYTE PTR DS:[EAX],AL 00489EEC 0000 ADD BYTE PTR DS:[EAX],AL ~~~~~~~~~~~~~~~~~~~~~~~ 00489F0E 0000 ADD BYTE PTR DS:[EAX],AL 00489F10 0000 ADD BYTE PTR DS:[EAX],AL 00489F12 00FF ADD BH,BH 00489F14 15 F8C04800 ADC EAX,Electra.0048C0F8 00489F19 59 POP ECX 00489F1A 830D 84B24900 FF OR DWORD PTR DS:[49B284],FFFFFFFF 00489F21 830D 88B24900 FF OR DWORD PTR DS:[49B288],FFFFFFFF 00489F28 FF15 F4C04800 CALL DWORD PTR DS:[48C0F4] ; MSVCRT.__p__fmode 00489EE6 - ОЕП. То есть имею более 40 спертых байт. Как их найти? Пытался по статье, но у меня не работает команда TC EIP>00900000. Если и работает то пошагово, Enter - Шаг. Мож что в настройках? ![]() |
|
Создано: 07 ноября 2005 22:52 · Личное сообщение · #2 |
|
Создано: 08 ноября 2005 04:37 · Личное сообщение · #3 |
|
Создано: 08 ноября 2005 05:27 · Личное сообщение · #4 |
|
Создано: 08 ноября 2005 12:05 · Личное сообщение · #5 |
|
Создано: 08 ноября 2005 20:24 · Личное сообщение · #6 nice По статье Shift+F9 минус один 00AD2D19 3100 XOR DWORD PTR DS:[EAX],EAX 00AD2D1B 64:8F05 00000000 POP DWORD PTR FS:[0] 00AD2D22 58 POP EAX 00AD2D23 833D 806DAD00 00 CMP DWORD PTR DS:[AD6D80],0 00AD2D2A 74 14 JE SHORT 00AD2D40 00AD2D2C 6A 0C PUSH 0C 00AD2D2E B9 806DAD00 MOV ECX,0AD6D80 00AD2D33 8D45 F8 LEA EAX,DWORD PTR SS:[EBP-8] 00AD2D36 BA 04000000 MOV EDX,4 00AD2D3B E8 14E1FFFF CALL 00AD0E54 00AD2D40 FF75 FC PUSH DWORD PTR SS:[EBP-4] 00AD2D43 FF75 F8 PUSH DWORD PTR SS:[EBP-8] 00AD2D46 8B45 F4 MOV EAX,DWORD PTR SS:[EBP-C] 00AD2D49 8338 00 CMP DWORD PTR DS:[EAX],0 00AD2D4C 74 02 JE SHORT 00AD2D50 00AD2D4E FF30 PUSH DWORD PTR DS:[EAX] 00AD2D50 FF75 F0 PUSH DWORD PTR SS:[EBP-10] 00AD2D53 FF75 EC PUSH DWORD PTR SS:[EBP-14] 00AD2D56 C3 RETN <- бряк Далее Alt+F1 и пишем в строке: TC EIP<900000 и попадаю на код типа: 00AE3E38 E9 0D090000 JMP 00AE474A 00AE3E3D F8 CLC 00AE3E3E E0 17 LOOPDNE SHORT 00AE3E57 00AE3E40 5F POP EDI 00AE3E41 C7 ??? ; Unknown command 00AE3E42 F7DB NEG EBX 00AE3E44 54 PUSH ESP 00AE3E45 EF OUT DX,EAX ; I/O command 00AE3E46 0E PUSH CS 00AE3E47 1C 39 SBB AL,39 00AE3E49 72 3D JB SHORT 00AE3E88 00AE3E4B 49 DEC ECX 00AE3E4C 52 PUSH EDX 00AE3E4D 7E 47 JLE SHORT 00AE3E96 00AE3E4F 8E1D F8A47B56 MOV DS,WORD PTR DS:[567BA4F8] ; Modification of segment register 00AE3E55 CC INT3 Вот потом то и по шагово, Enter - Шаг. Разве так и должно быть? ![]() |
|
Создано: 08 ноября 2005 20:27 · Поправил: AVE · Личное сообщение · #7 |
|
Создано: 08 ноября 2005 20:40 · Личное сообщение · #8 |
|
Создано: 09 ноября 2005 02:53 · Личное сообщение · #9 |
|
Создано: 10 ноября 2005 09:49 · Личное сообщение · #10 nice 1) Может у тебя исключение срабатывает? 2) 00AE3E38 - когда на этой строке стоишь, олька что пишет? 1) Как это узнать, что тогда делать? 2) ни чего не пишет. когда оказываюсь на этой строке, в командной строке еще раз выполняю команду tc eip>900000, оказываюсь тут: 00B54A4A 0FBFEF MOVSX EBP,DI <= здесь 00B54A4D 0FBAED CC BTS EBP,0CC <= Enter уже здесь, и так далее 00B54A51 B9 B269B295 MOV ECX,95B269B2 00B54A56 81F1 0935CF41 XOR ECX,41CF3509 00B54A5C 81F1 39CC4D8A XOR ECX,8A4DCC39 00B54A62 8BF9 MOV EDI,ECX 00B54A64 8AC3 MOV AL,BL 00B54A66 B8 02B0649E MOV EAX,9E64B002 00B54A6B F7D0 NOT EAX 00B54A6D 8BD0 MOV EDX,EAX ![]() |
|
Создано: 10 ноября 2005 10:05 · Личное сообщение · #11 |
|
Создано: 10 ноября 2005 11:06 · Личное сообщение · #12 |
|
Создано: 10 ноября 2005 12:21 · Личное сообщение · #13 |
|
Создано: 11 ноября 2005 10:17 · Личное сообщение · #14 |
|
Создано: 12 ноября 2005 09:23 · Личное сообщение · #15 |
|
Создано: 12 ноября 2005 10:39 · Личное сообщение · #16 |
|
Создано: 12 ноября 2005 15:07 · Личное сообщение · #17 |
|
Создано: 12 ноября 2005 17:53 · Личное сообщение · #18 AVE пишет: ни чего не пишет. когда оказываюсь на этой строке, в командной строке еще раз выполняю команду tc eip>900000, оказываюсь тут: Поменяй знак, т.е. TC EIP<900000 - nice писал же тебе уже... ![]() ![]() ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
|
Создано: 12 ноября 2005 19:36 · Личное сообщение · #19 В итоге, когда трейс закончился, по "серому минусу" нашел, что спертые байты лежат явно даже без мусора: 00B14218 55 PUSH EBP
AVE, все работает на ура... Подправил имя и вперед... ![]() ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
|
Создано: 13 ноября 2005 22:01 · Личное сообщение · #20 |
|
Создано: 14 ноября 2005 12:40 · Личное сообщение · #21 |
|
Создано: 04 декабря 2005 11:19 · Личное сообщение · #22 AVE Как и обещал... http://exelab.ru/rar/dl/CRACKLAB.rU_27.rar Лучше поздно, чем никогда. ![]() ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
|
Создано: 05 декабря 2005 20:29 · Личное сообщение · #23 |
|
Создано: 05 декабря 2005 22:46 · Личное сообщение · #24 |
|
Создано: 05 декабря 2005 23:11 · Личное сообщение · #25 |
|
Создано: 06 декабря 2005 10:30 · Личное сообщение · #26 AVE Посмотри русскую справку к OllyDBG clabz.com/hot/ollydbg_help.rar Там много интересного... AVE пишет: Выполним steps back, используя «серый минус» После трассировки нажми клавишу «серый минус» (та, которая возле цифровой клавиатуры) да посмотри, что получается... Очень удобная штука. ![]() ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
|
Создано: 06 декабря 2005 19:12 · Личное сообщение · #27 |
|
Создано: 07 декабря 2005 09:23 · Личное сообщение · #28 |
|
Создано: 08 декабря 2005 10:36 · Личное сообщение · #29 |
|
Создано: 08 декабря 2005 14:09 · Личное сообщение · #30 AVE пишет: Запускаем трассировку Trace into. Ждем-с… Долго ждать? Вообще должно ли в отладчике в этот момент, что-то скакать, мелькать, прыгать? У меня ни чего не происходит, в правом нижнем углу написано Tracing. И все. Вроде все так и должно быть. Просто жди. Скорость трассировки зависит от "мощности" твоего компа. ----- Сколько ни наталкивали на мысль – все равно сумел увернуться ![]() |
. 1 . 2 . 3 . >> |
![]() |
eXeL@B —› Протекторы —› Объясните как найти спертые байты |