Сейчас на форуме: asfa, bartolomeo (+7 невидимых)

 eXeL@B —› Вопросы новичков —› Photo Recovery. Нужна помощь однако!
Посл.ответ Сообщение

Ранг: 6.0 (гость), 1thx
Активность: 0.010
Статус: Участник

Создано: 22 апреля 2012 07:39
· Личное сообщение · #1

Немного лирики.
Освобождая место на флешке, удалил несколько нужных фоток. «Да не проблема! В инете полно программ для возвращения «блудных попугаев» и таблеток для них.» - подумал я. Лезу в интернет, …но что-то не лезется! Провайдер унылым голосом сообщает, что де землекопы совсем распоясались и рвут кабели с применением тяжелой техники, и ближайшие несколько дней никакой глобальной сети не будет! Значит каждый сам по себе, тихо сам с собою. Досадно… Вспоминаю, что где то валяются диски от компьютерных журналов, может на них что-то есть. Так и есть (простите за тавтологию)! Easy Digital Photo Recovery v. 2.3. Устанавливаю, запускаю. Программа действительно нашла фотографии и даже показала их в предпросмотре, но увы без ключа ни одну фотку восстанавливать не захотела. Ладно, познакомимся с ней поближе. Исполняемый файл накрыт Аспротектом. Распаковал КАМАЗОМ (спасиб
PE_Kill-у).
Ограничения незареганой версии:
- надпись «Незарегистрированная версия» в заголовке окна и в окне About;
- пункт меню «Ввести рег.код» в опциях;
- жирная кнопка «Купить» на форме;
- ну и самое основное, после выбора фотографий для восстановления выводит окно ввода ключа.
Функция проверки ключа находится по адресу 589Е40 и вызывается восемь раз. Шесть раз в составе функции чтения ключа из реестра и его проверки, после ввода ключа в регистрационную форму, и после попытки восстановить найденные файлы.
Пишу в начале функции MOV EAX, 1; RET запускаю. Та-а-ак, надписи пропали, но все остальные ограничения на месте. Посмотрим повнимательнее. Опаньки! Это что еще за фуета…

00571C25 . B9 41C18300 MOV ECX,EasyDigi.0083C141
00571C2A . E8 D1820100 CALL EasyDigi.00589F00 < ----проверка
00571C2F . 0FB6D0 MOVZX EDX,AL
00571C32 . 85D2 TEST EDX,EDX
00571C34 . 74 25 JE SHORT EasyDigi.00571C5B
00571C36 . E9 20000000 JMP EasyDigi.00571C5B

Получается, что при любом раскладе переходим на 00571C5B. ИМХО здесь после проверки ключа, где то в памяти взводится флажок по которому программа решает нужно ли показывать кнопку «купить», меню регистрации и др. Очевидным показалось, что флажок находится по адресу 0083C141, ан нет, ошибочка вышла. Все мои попытки найти адрес с флажком закончились провалом. Ладно, пробую разобраться с алгоритмом проверки ключа.
Итак, ключ должен быть не меньше 14h символов, далее создается вот такой массив
01 23 45 67 89 AB CD EF FE DC BA 76 54 32 10 F0 E1 D2 C3, берем первые 13h символов от ключа, меняем местами каждые четыре символа (например ABCD - > DCBA и т.д.) и со всем этим заваривается такая каша, понять которую мой мозг отказывается!
Поэтому прошу мудрецов подсказать где собака порылась! Что бы не тратить много времени на поиск файлов лучше указывать для поиска флешку небольшого размера.

Ссылка на программу и распакованный файл. http://rghost.ru/37704588

P.S. На офсайте лежит версия 3.0 и стоит не дорого, но дело то уже не в этом! Да и разработчикам думаю не будет обидно если их старую версию проинспектируют на предмет защиты.




Ранг: 57.3 (постоянный), 67thx
Активность: 0.060
Статус: Участник

Создано: 22 апреля 2012 08:37
· Личное сообщение · #2

Spirt_Fire пишет:
Получается, что при любом раскладе переходим на 00571C5B

Потому что код пошифрован и без правильного ключа, по-моему, не распаковать.



Ранг: 6.0 (гость), 1thx
Активность: 0.010
Статус: Участник

Создано: 22 апреля 2012 09:16
· Личное сообщение · #3

-Sanchez- пишет:
Потому что код пошифрован

По каким признакам определил?



Ранг: 315.1 (мудрец), 631thx
Активность: 0.30.33
Статус: Модератор
CrackLab

Создано: 22 апреля 2012 09:58 · Поправил: SReg
· Личное сообщение · #4

Spirt_Fire пишет:
По каким признакам определил?
Code:
  1. 0057C7B2    .  0FB6D0             MOVZX EDX,AL
  2. 0057C7B5    .  85D2               TEST EDX,EDX
  3. 0057C7B7    .  74 6E              JE SHORT 0057C827
  4. 0057C7B9    .  E9 67000000        JMP 0057C825
  5. 0057C7BE       5F                 DB 5F
  6. 0057C7BF       B1                 DB B1
  7. 0057C7C0       06                 DB 06
  8. 0057C7C1       23                 DB 23
  9. 0057C7C2       0C                 DB 0C
  10. 0057C7C3       EA                 DB EA
  11. 0057C7C4       E8                 DB E8
  12. 0057C7C5       2B                 DB 2B
  13. 0057C7C6       89                 DB 89
  14. 0057C7C7       45                 DB 45
  15. 0057C7C8       BF                 DB BF
  16. 0057C7C9       2A                 DB 2A
  17. 0057C7CA       E7                 DB E7
  18. 0057C7CB       60                 DB 60
  19. 0057C7CC       C5                 DB C5
  20. 0057C7CD       DB                 DB DB
  21. 0057C7CE       00                 DB 00
  22. 0057C7CF       45                 DB 45
  23. 0057C7D0       13                 DB 13
  24. 0057C7D1       7A                 DB 7A
  25. 0057C7D2       6D                 DB 6D
  26. 0057C7D3       42                 DB 42
  27. 0057C7D4       41                 DB 41
  28. 0057C7D5       FD                 DB FD
  29. 0057C7D6       F8                 DB F8
  30. 0057C7D7       15                 DB 15
  31. 0057C7D8       E3                 DB E3
  32. 0057C7D9       86                 DB 86
  33. 0057C7DA       5C                 DB 5C
  34. 0057C7DB       18                 DB 18
  35. 0057C7DC       2A                 DB 2A
  36. 0057C7DD       96                 DB 96
  37. 0057C7DE       DF                 DB DF
  38. 0057C7DF       FA                 DB FA
  39. 0057C7E0       4F                 DB 4F
  40. 0057C7E1       3E                 DB 3E
  41. 0057C7E2       FF                 DB FF
  42. 0057C7E3       EC                 DB EC
  43. 0057C7E4       41                 DB 41
  44. 0057C7E5       55                 DB 55
  45. 0057C7E6       76                 DB 76
  46. 0057C7E7       E1                 DB E1
  47. 0057C7E8       84                 DB 84
  48. 0057C7E9       6D                 DB 6D
  49. 0057C7EA       3F                 DB 3F
  50. 0057C7EB       D3                 DB D3
  51. 0057C7EC    .  68 A6E4F7C8        PUSH C8F7E4A6
  52. 0057C7F1    .  C2 7524            RETN 2475
  53. 0057C7F4       C8                 DB C8
  54. 0057C7F5       E2                 DB E2
  55. 0057C7F6       3C                 DB 3C
  56. 0057C7F7       81                 DB 81
  57. 0057C7F8       DC                 DB DC
  58. 0057C7F9       2F                 DB 2F
  59. 0057C7FA       98                 DB 98
  60. 0057C7FB    .  02                 DB 02
  61. 0057C7FC    .  37 AE              ASCII
  62. 0057C7FE       7B                 DB 7B
  63. 0057C7FF       DA                 DB DA
  64. 0057C800       E8                 DB E8
  65. 0057C801       91                 DB 91
  66. 0057C802       1F                 DB 1F
  67. 0057C803       F3                 DB F3
  68. 0057C804       54                 DB 54
  69. 0057C805       A0                 DB A0
  70. 0057C806       C0                 DB C0
  71. 0057C807       DA                 DB DA
  72. 0057C808       BE                 DB BE
  73. 0057C809       F6                 DB F6
  74. 0057C80A       06                 DB 06
  75. 0057C80B       5D                 DB 5D
  76. 0057C80C       C4                 DB C4
  77. 0057C80D       1E                 DB 1E
  78. 0057C80E       75                 DB 75
  79. 0057C80F       96                 DB 96
  80. 0057C810       33                 DB 33
  81. 0057C811       43                 DB 43
  82. 0057C812       32                 DB 32
  83. 0057C813       D4                 DB D4
  84. 0057C814       8D                 DB 8D
  85. 0057C815       C4                 DB C4
  86. 0057C816       D9                 DB D9
  87. 0057C817       06                 DB 06
  88. 0057C818       58                 DB 58
  89. 0057C819       42                 DB 42
  90. 0057C81A       AD                 DB AD
  91. 0057C81B       8D                 DB 8D
  92. 0057C81C       E9                 DB E9
  93. 0057C81D    .  5B                 POP EBX
  94. 0057C81E    .  D0EE               SHR DH,1
  95. 0057C820    .  5D                 POP EBP
  96. 0057C821    .  C8 BB52C7          ENTER 52BB,0C7
  97. 0057C825    >  EB 60              JMP SHORT 0057C887
При распаковке с ключем тут будет код.



Ранг: 6.0 (гость), 1thx
Активность: 0.010
Статус: Участник

Создано: 22 апреля 2012 12:14
· Личное сообщение · #5

Вопрос исчерпан! Спасибо!


 eXeL@B —› Вопросы новичков —› Photo Recovery. Нужна помощь однако!
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати