Сейчас на форуме: asfa, Rio, _MBK_, Adler (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Ошибка code LP5
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 11 апреля 2013 20:59
· Личное сообщение · #1

На любое изменение кода при попытке запуска прога выбрасывает наг: "Error while unpacking program, code LP5...".
Поиск здесь ничего не дал. В Google стонов полно, но ничего относящегося к реверсингу обнаружить не удалось.
Какова методика поиска нага в коде и как его убить?




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 11 апреля 2013 21:01 · Поправил: ARCHANGEL
· Личное сообщение · #2

Chris пишет:
Какова методика поиска нага в коде и как его убить?

Нужно воспользоваться этим:


-----
Stuck to the plan, always think that we would stand up, never ran.


| Сообщение посчитали полезным: Abraham

Ранг: 281.8 (наставник), 272thx
Активность: 0.250.01
Статус: Участник
Destroyer of protectors

Создано: 11 апреля 2013 21:08
· Личное сообщение · #3

Chris
судя по мессаге, прога твоя армой накрыта. ищи туторы по ней, их много)



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

Создано: 12 апреля 2013 08:59
· Личное сообщение · #4

LP5 это проверка целостности




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 12 апреля 2013 09:21
· Личное сообщение · #5

можно инлайн сделать, или проще анпакнуть.

туторы: http://tuts4you.com/download.php?list.11

-----
[nice coder and reverser]




Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 15 апреля 2013 04:35
· Личное сообщение · #6

Похоже, что прямой поиск проблемы на самом деле безнадёжное дело. Убираешь LP5 - возникает LP3. После LP3 появляется "Cannot locate protected program data" - и т.д.

Пытаюсь заломать EZ CD Audio Converter. До версии 1.0.5.1 проблем не было: Inline patch MrExodia работал безупречно, при этом копирование в экзешник Secured Section не мешало ему нормально запускаться. В последних версиях проги авторы что-то намудрили, и теперь вместо запуска фига LP5.
Причину как бэ нашёл: MrExodia неправильно извлекает CRC. И если CRC1 ещё похоже на правду, то остальные четыре - явная лажа.
Каким образом можно найти эти значения CRC?




Ранг: 275.9 (наставник), 340thx
Активность: 0.22=0.22
Статус: Участник
RBC

Создано: 15 апреля 2013 07:29 · Поправил: Kindly
· Личное сообщение · #7

Chris, вообще инлайн от Mr.Exodia поправлять нужно в зависимости от версии армы или поставленой задачи. У меня в одной проге counter-ы модифицировались и затирались при выполнении армы, в результате переходил инлайн на патч раньше, чем секция расшифровывалась в память, я это для своего случая пофиксил так:

Code:
  1. pushfd
  2. CMP BYTE PTR DS:[@counter1],0 - 0 когда счетчик затирается при выполнении
  3. jnz @already_done
  4. inc byte ptr ds:[@counter2] - накидываем в счетчик по одному байт при выполнении
  5. CMP BYTE PTR DS:[@counter2],5 - когда равно 5 переходим на патч (у нас уже расшифрованы при этом code, data, rsrc - если надо только code, то расшифровывается помоему при значении 3)
  6. jnz @already_done
  7. pushad


ну и про fullaccess в секции не забывай

-----
Array[Login..Logout] of Life




Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 15 апреля 2013 16:34
· Личное сообщение · #8

Kindly
Спасибо за отзывчивость, но в данном случае причина зарыта не здесь, уж как только не крутил. Сравниваю с работающей версией 1.0.5.1, и в результате всё ведёт к CRC (если только разрабы не заложили совсем что-то хитрое). Версия Армы та же: 9.6. Ну, всё там одинаково. И реакция 1.0.5.1 на неправильный CRC такая же - LP5. Пробовал Armadillo CRC Finder (он выдаёт четыре группы CRC1 - CRC5), но у него, видимо, алгоритм устарел, т.к. его варианты и в 1.0.5.1 не работают.
Где ещё копать?




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 15 апреля 2013 16:41
· Личное сообщение · #9

Chris получи CRC руками и сравни. в чем сложность?

-----
[nice coder and reverser]




Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 15 апреля 2013 16:49
· Личное сообщение · #10

Hellspawn
Сложность в нехватке знаний. Мануалов много, если не трудно, подскажите, пожалуйста, где описана методика.



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 15 апреля 2013 17:36
· Личное сообщение · #11

У Mr.Exodia за основу взят этот метод
http://tuts4you.com/download.php?view.320

Точнее этот метод взят задолго до появления Mr.Exodia и уже много лет используется разными тулзами, в том числе и моей армадилловкой.

| Сообщение посчитали полезным: Chris


Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 16 апреля 2013 08:50
· Личное сообщение · #12

версия 9? нету под рукой софта с такой версией, чтобы глянуть. ну а так:
Code:
  1. бряк на kernel32.OutputDebugStringA
  2. после вызова сразу будет код:
  3. 02453CAF     C705 C0445202 4C15>MOV DWORD PTR DS:[25244C0],250154C
  4. 02453CB9     8B0D 9C885202      MOV ECX,DWORD PTR DS:[252889C]
  5. 02453CBF     8B15 9C885202      MOV EDX,DWORD PTR DS:[252889C]
  6. 02453CC5     A1 9C885202        MOV EAX,DWORD PTR DS:[252889C]
  7. 02453CCA     8B40 78            MOV EAX,DWORD PTR DS:[EAX+78]
  8. 02453CCD     3382 84000000      XOR EAX,DWORD PTR DS:[EDX+84]
  9. 02453CD3     3341 64            XOR EAX,DWORD PTR DS:[ECX+64]
  10. 02453CD6     3345 EC            XOR EAX,DWORD PTR SS:[EBP-14] <- CRC
  11. ... чуть ниже
  12. 02453D43     6A 00              PUSH 0
  13. 02453D45     8B8D BCFEFFFF      MOV ECX,DWORD PTR SS:[EBP-144]
  14. 02453D4B     51                 PUSH ECX
  15. 02453D4C     8B15 A4165302      MOV EDX,DWORD PTR DS:[25316A4] 
  16. 02453D52     52                 PUSH EDX
  17. 02453D53     8D45 D8            LEA EAX,DWORD PTR SS:[EBP-28] <- CRC
  18. 02453D56     50                 PUSH EAX
  19. 02453D57     E8 34E70200        CALL 02482490

ну как бы CRC: [ebp-14]_1_dwords + [ebp-28]_4_dwords

-----
[nice coder and reverser]




Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 16 апреля 2013 16:30
· Личное сообщение · #13

Vovan666
Hellspawn
Спасибо.
Версия 9.6 (так определил Mr.Exodia). Неожиданный затык: не срабатывает BP OutputDebugStringA. Какая здесь может быть тонкость? - Всё делаю по мануалу...
--> ezcd.exe <--



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

Создано: 16 апреля 2013 16:47 · Поправил: JMPer
· Личное сообщение · #14

Chris пишет:
BP OutputDebugStringA

OutputDebugStringW


EZ Converter - имхо без ключа не сделаешь нормально (хотя тут и без него можно), а мой вот забанили в этой версии



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 16 апреля 2013 17:50
· Личное сообщение · #15

JMPer пишет:
OutputDebugStringW

Пробовал и эту - не срабатывает...




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 16 апреля 2013 20:27
· Личное сообщение · #16

Chris а у меня брякается. обходим дебаг блокер OpenMutexA,
дальше второй бряк на OutputDebugStringA
адреса будут другие:
Code:
  1. 03071189     FF15 C0411403        CALL DWORD PTR DS:[31441C0] ; kernel32.OutputDebugStringA
  2. 0307118F     68 AC7F1403          PUSH 3147FAC
  3. 03071194     E8 B7760200          CALL 03098850
  4. 03071199     83C4 04              ADD ESP,4
  5. 0307119C     8B0D C4D51703        MOV ECX,DWORD PTR DS:[317D5C4]
  6. 030711A2     8B15 C4D51703        MOV EDX,DWORD PTR DS:[317D5C4]
  7. 030711A8     A1 C4D51703          MOV EAX,DWORD PTR DS:[317D5C4]
  8. 030711AD     8B40 08              MOV EAX,DWORD PTR DS:[EAX+8]
  9. 030711B0     3342 7C              XOR EAX,DWORD PTR DS:[EDX+7C]
  10. 030711B3     3341 34              XOR EAX,DWORD PTR DS:[ECX+34]
  11. 030711B6     3345 EC              XOR EAX,DWORD PTR SS:[EBP-14] <- !

дальше сам.

-----
[nice coder and reverser]


| Сообщение посчитали полезным: Chris

Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 17 апреля 2013 02:58
· Личное сообщение · #17

Не срабатывает BP OpenMutexA. Какая может быть причина?



Ранг: 160.9 (ветеран), 1thx
Активность: 0.050
Статус: Участник

Создано: 17 апреля 2013 13:30
· Личное сообщение · #18

Chris пишет:
Не срабатывает BP OpenMutexA. Какая может быть причина?

Ага, а причина зовется, что программа чекает первый байт на CC опкод. Выход поставь бряк внутрь АПИ байтов так на 5-ть вперед.



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 17 апреля 2013 17:20
· Личное сообщение · #19

Нашёл точку входа OpenMutexA, поставил ВР, F9, стою на ней. Ставлю BP OutputDebugStringA. Что нужно сделать, чтобы она сработала? Перепробовал все варианты F9 и Ctrl+F9 - никак...




Ранг: 275.9 (наставник), 340thx
Активность: 0.22=0.22
Статус: Участник
RBC

Создано: 17 апреля 2013 17:26 · Поправил: Kindly
· Личное сообщение · #20

Chris, так арму никто не снимает. Почитал бы туторы сперва или видики чтоле посмотрел Даже был где-то видеотутор по отлому этой проги, только как она по-старому называлась.

-----
Array[Login..Logout] of Life




Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 17 апреля 2013 17:46
· Личное сообщение · #21

Kindly пишет:
так арму никто не снимает

Я уже снимал с помощью Inline Patch'a с предыдущих версий этой проги. Не получается пока перейти к последним версиям. Для этого мне надо пройти тот же путь, который описан в посте Hellspawn #16.



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

Создано: 17 апреля 2013 17:52 · Поправил: JMPer
· Личное сообщение · #22

Kindly пишет:
Даже был где-то видеотутор по отлому этой проги, только как она по-старому называлась.

Называлась EASY CD-DA Extractor, тутор был по реплейсу ECDSA, разлочиванию register и регистрацией сгенерированным номерком ( тутор от mr.Exodia).

Chris пишет:
Я уже снимал с помощью Inline Patch'a

Ты либо инлайнил (с помощью инлайнера от того же мэна), либо снимал арму. Хотя я догадываюсь зачем было инлайнить (и кое-что патчить). Армагеддон не брал, верно ?



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 17 апреля 2013 18:20
· Личное сообщение · #23

JMPer
Нет, не так. Просто ответил покороче. Имел ввиду инлайн, регистрация валидным номером и снятие Армагеддон'ом.



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

Создано: 17 апреля 2013 19:18
· Личное сообщение · #24

Chris пишет:
мне надо пройти тот же путь, который описан в посте Hellspawn #16.

Code:
  1. bp kernel32.OpenMutexA - 2 раза, SET EAX=1
  2. bp kernel32.VirtualProtect - до EAX=401000
  3. bp kernel32.CreateThread - bp на "Call EDX" - 2 штуки

Пропустил исправление импорта. OEP - 00402608.
Спасибо Vovan666 за эти три шага.

Vovan666 пишет:
моей армадилловкой

А вот это очень интересно. Секретная тулза?



Ранг: 17.0 (новичок)
Активность: 0.020
Статус: Участник

Создано: 20 апреля 2013 06:48
· Личное сообщение · #25

JMPer пишет:

Kindly пишет:Даже был где-то видеотутор по отлому этой проги, только как она по-старому называлась. Называлась EASY CD-DA Extractor, тутор был по реплейсу ECDSA, разлочиванию register и регистрацией сгенерированным номерком ( тутор от mr.Exodia)

Где скачать? Дайте ссылочку плиз.



Ранг: 419.0 (мудрец), 647thx
Активность: 0.460.51
Статус: Участник
"Тибериумный реверсинг"

Создано: 20 апреля 2013 09:19
· Личное сообщение · #26

neoBlinXaker пишет:
Где скачать?

Туторы (от mr.Exodia) - на http://tuts4you.com, 20 раз уже сказали.
Easy CD-DA Extractor, как обычно - на рутрекере(http://rutracker.org/forum/viewtopic.php?t=4024159)



Ранг: 17.0 (новичок)
Активность: 0.020
Статус: Участник

Создано: 20 апреля 2013 17:28
· Личное сообщение · #27

ELF_7719116
Ты наркоман чтоли. 20 раз там искал, нет такого тутора, а теперь если ты такой умник дай ссылочку?
JMPer
Вы наверное напутали, нет такого тутора от eXoDia, не помню чтобы он делал тутор про эту прогу.



Ранг: 617.3 (!), 677thx
Активность: 0.540
Статус: Участник

Создано: 20 апреля 2013 17:41 · Поправил: Vovan666
· Личное сообщение · #28

Да какая нахрен разница на какую прогу тутор. Патчится не прога а протектор.
И на тутсах даже если и есть тутор на определенную шароварную прогу, в названии она не учавствует т.к. это запрещено правилами.



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

Создано: 20 апреля 2013 18:12
· Личное сообщение · #29

neoBlinXaker
Возможно и напутал, значит было два тутора, по патчу ECDSA (Armadillo_ECDSA_Patching) на примере его крякмиса, и отдельный тутор по распаковке сабжа (Armadillo v8.0(Debug-Blocker+Import_Elimination+Code_Splicing+Nanomites+Extras))
Я просто вспомнил, что применял способ из первого тутора к сабжу.

Vovan666 прав на все 100, какая хрен разница на какую прогу тутор. Нужно понимать хотя бы немного что к чему, чтобы применять данный подход.



Ранг: 26.9 (посетитель), 1thx
Активность: 0.050.01
Статус: Участник

Создано: 22 апреля 2013 06:01 · Поправил: Chris
· Личное сообщение · #30

Привожу часть кода, начиная с вызова OutputDebugStringA. Здесь, по идее, должны находиться адреса CRC1 - CRC5.
Там же часть того, что лежит в стеке, адреса относительно EBP.

Адрес CRC1 [EBP-14] разными методиками и инструментами определяется одинаково, а вот с CRC2 - CRC5 - полная неразбериха. Mr.Exodia, например, считает, что это должны быть [EBP-1С], [EBP-20], [EBP-24] и [EBP-28]. Однако значение [EBP-1С] меняется при каждом запуске, а остальные три - явно не CRC. По тутору by SubZero тоже ничего не сходится.

По каким признакам надо искать адреса CRC2 - CRC5?

c021_22.04.2013_EXELAB.rU.tgz - Code.txt

P.S. А можно как-то вставлять сюда код со скроллом?


. 1 . 2 . >>
 eXeL@B —› Вопросы новичков —› Ошибка code LP5
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати