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

 eXeL@B —› Вопросы новичков —› Подскажите по распаковке
Посл.ответ Сообщение

Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 04 февраля 2013 13:56
· Личное сообщение · #1

Сдампил программу в Олли, с помощью Импрека восстановил ресурсы, они были без "инвалида". Программа запускается, при нажатии кнопки открывается вспомогательное окно. Но при нажатии в этом окне кнопки тест, с подключенным диагностическим кабелем, вылетает ошибка :
Code:
  1. Microsoft Visual C++ Runtime Library
  2. Program: H:\......................
  3. R6002
  4. -floating point support not loaded

Подскажите пожалуйста, в каком направлении вести поиск ошибки?

2080_04.02.2013_EXELAB.rU.tgz - Runtime Error past depack.JPG




Ранг: 253.5 (наставник), 684thx
Активность: 0.260.25
Статус: Участник
radical

Создано: 04 февраля 2013 13:58
· Личное сообщение · #2

Kuzya69
--> Это <-- читал ?

-----
ds


| Сообщение посчитали полезным: Kuzya69, Flint, alexpol


Ранг: 307.9 (мудрец), 196thx
Активность: 0.180
Статус: Участник

Создано: 04 февраля 2013 14:29
· Личное сообщение · #3

Kuzya69
Если не поможет то что дали выше: что распаковывал, чем было накрыто, выложи оригинал и распакованный файл ?

-----
Don_t hate the cracker - hate the code.




Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 04 февраля 2013 14:54
· Личное сообщение · #4

DimitarSerg
Даже не знаю, помогло или нет, но теперь выскакивает другая ошибка.
Code:
  1. Visual Studio Just-In-Time Debugger
  2. An unhandled win32 exception occured in dump_.EXE[2216]. Just-In-Time debugging..........

mysterio
Выложить-то не проблема, но как проверять будете? Эта ошибка появляется только при подключенном кабеле.
Выложу чуть позже.

0bd6_04.02.2013_EXELAB.rU.tgz - 2_VisualStudJustTimDebug.JPG



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

Создано: 05 февраля 2013 09:52
· Личное сообщение · #5

импреком даже арчер не востановит ресурсы


| Сообщение посчитали полезным: ClockMan, -Sanchez-, daFix

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

Создано: 05 февраля 2013 10:34
· Личное сообщение · #6

Была такая же проблема с R6002, поправил, под ХР запускается, а под семеркой ни в какую.
Под семеркой еще не дебажил, не было времени, может кто сталкивался с такой проблемой и есть решение?




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

Создано: 05 февраля 2013 11:49
· Личное сообщение · #7

Johnny Mnemonic пишет:
импреком даже арчер не востановит ресурсы

поржал

по теме: там же просто надо выставить атрибуты у одной секции



Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 05 февраля 2013 13:17 · Поправил: Kuzya69
· Личное сообщение · #8

Парни, спасибо. Разобрался сам. Не без вашей помощи. Стал копать в зоне этого патча, что во втором сообщении указали. И заметил, что та фукция вызывается только в распакованной программе, а в запакованной нет. Вот и нашел этот злосчастный условный джамп. Это была защита от распаковки видимо. Но теперь запускается и работает, но только на том ноуте на котором распаковываешь. На "чужом" ноуте завешивает намертво систему. Что это может значить, куда копать?



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

Создано: 05 февраля 2013 14:29
· Личное сообщение · #9

дык вм нужна разбиратъ



Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 05 февраля 2013 15:11 · Поправил: Kuzya69
· Личное сообщение · #10

Johnny Mnemonic
Там внутри 4 реализации ВМ и 75 вызовов. 46 вызовов я уже декомпильнул из известных. Не могу еще с 5-ю вызовами справится, но это вопрос времени и знаний. А вот остальные вызовы вообще не учавствуют в программе, вернее они может и учавствуют, но на другом кабеле.
Я не думаю, что тут ВМ виновата, ведь прогу распаковывают, для перевода, и без снятия ВМ вообще.
Может какие косяки с ресурсами, хотя Импрек вообще все без проблем сделал.
Ах да, забыл.
http://zalil.ru/34232961
Там 3.2 метра, если интересно поглядите. Внутри и оригинальный и сдампленный и нужный для работы программы бин-файл.




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 05 февраля 2013 16:24
· Личное сообщение · #11

Да проверки на анпак там, ищи и выправляй.



Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 05 февраля 2013 17:10
· Личное сообщение · #12

Archer
Тоесть с ресурсами не заморачиваться? Просто уж как-то легко они восстановились, на младших версиях как минимум одна, но была инвалидная функция.
А вообще примерный метод поиска защиты от анпака не подскажите? Кроме как трейсить километровые коды. Может на какие апи-функции обратить особое внимание?




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

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

Kuzya69
Ресурсы - это иконки, курсоры, картинки и т.д. Импорт (импортируемые функции) - это функции, код которых расположен за пределами исполняемого файла и импортируется ехе-шником. Т.е. для вызова передаётся управление на адреса, лежащие за пределами ехе. А то уже не смешно.

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




Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 05 февраля 2013 17:30
· Личное сообщение · #14

ARCHANGEL
Пардон, действительно оговорился, я имел ввиду импорт. Просто всю ночь посвятил отлавливанию бага с R6002. И чего-то видимо "замкнуло".



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

Создано: 06 февраля 2013 10:56
· Личное сообщение · #15

ниче не трейсить километраме
просто апи проверяет цифроподписъ
опыта у тебя маловато
сделатъ дамп и запустить плагин
особого ума не нада!




Ранг: 527.7 (!), 381thx
Активность: 0.160.09
Статус: Участник
Победитель турнира 2010

Создано: 06 февраля 2013 12:24
· Личное сообщение · #16

Вероятно с вашей проблемой поможет вот это

-----
127.0.0.1, sweet 127.0.0.1




Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 06 февраля 2013 12:39
· Личное сообщение · #17

Johnny Mnemonic
Вот и пытаюсь научиться. Я примерно так и думал, что что-то с импортом не так.
OKOB
Эта проблема уже решена. Теперь встала проблема непереносимости распакованной программы на другой комп.



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

Создано: 06 февраля 2013 12:51
· Личное сообщение · #18

с импартом нормулъ
исчо раз топег перечитай штоле



Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 06 февраля 2013 14:53 · Поправил: Kuzya69
· Личное сообщение · #19

Johnny Mnemonic
просто апи проверяет цифроподписъ
опыта у тебя маловато

Подскажите пожалуйста, на какую апи обратить внимание? Про опыт не спорю, действительно маловато. Поэтому и пишу в раздел новичков.




Ранг: 529.0 (!), 110thx
Активность: 0.290.04
Статус: Участник
5KRT

Создано: 06 февраля 2013 16:45
· Личное сообщение · #20

-Sanchez- пишет:
по теме: там же просто надо выставить атрибуты у одной секции


Kuzya69, я файл-то не смотрел, но подобная ошибка появляется после распаковки. Прога проверяет атрибуты секции и если не совпадает с константой, тогда рантайм не инициализируется

-----
Research For Food




Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 06 февраля 2013 18:26 · Поправил: Kuzya69
· Личное сообщение · #21

daFix
Я так понимаю, что все отвечают на первый вопрос. Но он уже решен. Наверно надо новую тему создавать. Или атрибуты секции тоже могут влиять на переносимость программы с одного компа на другой?



Все, разобрался со второй проблемой. Спасибо, добрые люди помогли. Оказалось, действительно косяки с импортом. А у меня, в настройках импрека не стояла галка "создать новую секцию". Вот импрек и пытался восстановить старые таблицы. А они по размеру даже были меньше новой секции.




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

Создано: 16 февраля 2013 14:44
· Личное сообщение · #22

R6002 floating point support not loaded - после распаковки // для гугла

Тема довольно актуальная, столкнулся с этой ошибкой после снятия армы, решил провести небольшой реверс и вот что вышло. Метод указанный Manhunter не совсем корректен и вот почему:

- мы патчим уже результат проверки, но никак не причину
- на данный момент, я знаю софт, в котором патч fptrap > RET убивает поддержку вещественных чисел.
- патчить нужно или атрибуты секций (что не всегда реально, если это секция data) либо искать причину.

загружаем софт, ставим мемори бряк на заголовок файла, прерываемся трейсим и ставим, повторяем до тех пор пока не окажемся здесь:
Code:
  1. 005FDB40    $  55               PUSH EBP
  2. 005FDB41    .  8BEC             MOV EBP,ESP
  3. 005FDB43    .  8B45 08          MOV EAX,DWORD PTR SS:[EBP+8]
  4. 005FDB46    .  B9 4D5A0000      MOV ECX,5A4D
  5. 005FDB4B    .  66:3908          CMP WORD PTR DS:[EAX],CX
  6. 005FDB4E    .  74 04            JE SHORT dump_SCY.005FDB54
  7. 005FDB50    .  33C0             XOR EAX,EAX
  8. 005FDB52    .  5D               POP EBP
  9. 005FDB53    .  C3               RETN
  10. 005FDB54    >  8B48 3C          MOV ECX,DWORD PTR DS:[EAX+3C]
  11. 005FDB57    .  03C8             ADD ECX,EAX                                                         ; dump_SCY.00400000
  12. 005FDB59    .  33C0             XOR EAX,EAX
  13. 005FDB5B    .  8139 50450000    CMP DWORD PTR DS:[ECX],4550
  14. 005FDB61    .  75 0C            JNZ SHORT dump_SCY.005FDB6F
  15. 005FDB63    .  BA 0B010000      MOV EDX,10B
  16. 005FDB68    .  66:3951 18       CMP WORD PTR DS:[ECX+18],DX
  17. 005FDB6C    .  0F94C0           SETE AL                                                             ; Non-standard form of command
  18. 005FDB6F    >  5D               POP EBP
  19. 005FDB70    .  C3               RETN

поднимаемся к месту вызова по RET:

Code:
  1. 005FDAD3    .  50               PUSH EAX                                                            ; /Arg2
  2. 005FDAD4    .  68 00004000      PUSH dump_SCY.00400000                                              ; |Arg1 = 00400000
  3. 005FDAD9    .  E8 52FFFFFF      CALL dump_SCY.005FDA30                                              ; \dump_SCY.005FDA30
  4. 005FDADE    .  83C4 08          ADD ESP,8
  5. 005FDAE1    .  85C0             TEST EAX,EAX
  6. 005FDAE3    .  74 3A            JE SHORT dump_SCY.005FDB1F
  7. 005FDAE5    .  8B40 24          MOV EAX,DWORD PTR DS:[EAX+24] // EAX = C0000040
  8. 005FDAE8    .  C1E8 1F          SHR EAX,1F // EAX = 00000001
  9. 005FDAEB    .  F7D0             NOT EAX // EAX = FFFFFFFE
  10. 005FDAED    .  83E0 01          AND EAX,1 // EAX = 0 bad boy( 1 - for good boy

после CALL dump_SCY.005FDA30 в EAX указатель на секцию .rdata (в моем случае)
дальше берём аттрибуты секции и проверяем:

в битовом представлении C0000040 = 11000000000000000000000001000000
в битовом представлении 40000040 = 01000000000000000000000001000000

собственно понятно, что делать? процедура должно возвращать в EAX 1, патч:
Code:
  1. 005FDAED       33C0             XOR EAX,EAX
  2. 005FDAEF       40               INC EAX

вот так правильнее и красивее

-----
[nice coder and reverser]


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


Ранг: 568.2 (!), 464thx
Активность: 0.550.57
Статус: Участник
оптимист

Создано: 16 февраля 2013 15:40
· Личное сообщение · #23

--> Link <--

-----
Чтобы правильно задать вопрос, нужно знать большую часть ответа. Р.Шекли.


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


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

Создано: 16 февраля 2013 16:15
· Личное сообщение · #24

ClockMan оу, гуглом не отдавалась та темка решил подробненько написать, может теперь поиском будет находиться норм.

-----
[nice coder and reverser]




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 16 февраля 2013 16:40
· Личное сообщение · #25

Лучше по разбору вм писали что-то




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

Создано: 16 февраля 2013 16:45
· Личное сообщение · #26

matrix а чего про них писать? инструменты есть, статьи тоже, разбирайтесь

-----
[nice coder and reverser]




Ранг: 13.0 (новичок), 2thx
Активность: 0.030
Статус: Участник

Создано: 16 февраля 2013 17:00
· Личное сообщение · #27

Hellspawn
Просто про всякую хрень в этом топике написали уже раз десять
Другое дело что вм разберет не каждый
Статьи есть но качества сомнительного



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

Создано: 16 февраля 2013 17:31 · Поправил: alexpol
· Личное сообщение · #28

HellspawnClockMan
Спасибо Вам большое, не поддающаяся до этого прога сдалась.



Ранг: 30.1 (посетитель)
Активность: 0.070
Статус: Участник

Создано: 16 февраля 2013 19:30
· Личное сообщение · #29

ClockMan
Именно так, как по ссылке, эта программа и защищалась. Переписывала адреса коссвенных обращений к другим функциям, если атрибуты верны. Если-же атрибуты неверны, то адреса все вели на выдачу этого сообщения. И патчить пришлось именно результат проверки секций. Но все равно совет, патчить "fptrap > RET", помог попасть в эту проверку атрибутов секции. Потому-как бряк на этом патче, в распакованной проге, срабатывал. А в оригинальной не срабатывал. Дальше было дело за трассером, отследить место развилки.


 eXeL@B —› Вопросы новичков —› Подскажите по распаковке
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати