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

 eXeL@B —› Вопросы новичков —› Привязка импорта к операционной системе - как правильно исправить "переходники"?
Посл.ответ Сообщение

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

Создано: 08 декабря 2012 22:54
· Личное сообщение · #1

Ситуация такая: если анпакаем файл например на ХР, восстанавливаем импорт - всё работает ОК. На любых системах выше 5.1 вылазит ошибка 0хс0000005. Знакомый программист подсказал,что проблема в так называемых "переходниках" - мол,они зависят от конкретной ОС.
Но по-моему когда я анпакаю файл на Семерке,то дамп с импортом работает на всех системах без исключения.
Подскажите,что это за переходники и как их устранить (направить на путь истинный,вернее на валидный адрес)




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

Создано: 08 декабря 2012 23:17 · Поправил: ARCHANGEL
· Личное сообщение · #2

Во-первых, что анпакаете? Файл бы в студию.
Во-вторых, переходники в импорте принесут проблемы даже на семёрке (если они не были восстановлены), ибо ASLR может загрузить библиотеку из таблицы импорта по другому ImageBase при следующем запуске, в этом плане ХР, наоборот, даёт вам кажуюся стабильность.
В-третьих, переходники не зависят от конкретной ОС, они зависят от того, какой адрес выделила VirtualAlloc под код этих самых переходников, т.е. могут разниться, опять-таки, от запуска к запуску.
В-четвёртых, устраняются переходники патчем кода в памяти либо скриптом, либо иными танцами с бубном (плагинами, собственными приложениями).

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


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

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

Создано: 09 декабря 2012 03:16 · Поправил: Модератор
· Личное сообщение · #3

ARCHANGEL
Анпакаю ExeCryptor, есть статейка по поводу того как импорт подогнать под любую Windows?




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

Создано: 09 декабря 2012 03:19
· Личное сообщение · #4

normanCRC пишет:
Анпакаю ExeCryptor, есть статейка по поводу того как импорт подогнать под любую Windows?

--> RAR статьи <--

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




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

Создано: 09 декабря 2012 09:13
· Личное сообщение · #5

normanCRC пишет:
анпакаем файл например на ХР, восстанавливаем импорт - всё работает ОК

Как именно и чем восстанавливаем?
99,9% что импорт восстанавливается по ординалу, а не по имени.



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

Создано: 09 декабря 2012 14:12
· Личное сообщение · #6

Восстанавливаю ImpRec 1.7 .Крашится по адресу 7c802530
Code:
  1. Сигнатура проблемы:
  2.   Имя события проблемы:    APPCRASH
  3.   Имя приложения: Dumped_.exe
  4.   Версия приложения:       0.0.0.0
  5.   Отметка времени приложения:       376d90db
  6.   Имя модуля с ошибкой:    StackHash_9175
  7.   Версия модуля с ошибкой: 0.0.0.0
  8.   Отметка времени модуля с ошибкой: 00000000
  9.   Код исключения: c0000005
  10.   Смещение исключения:     7c802530
  11.   Версия ОС:      6.1.7601.2.1.0.400.8
  12.   Код языка:      1049
  13.   Дополнительные сведения 1:        9175
  14.   Дополнительные сведения 2:        91755f98519577e6d15149e2d9777c52
  15.   Дополнительные сведения 3:        ee47
  16.   Дополнительные сведения 4:        ee475a1dd7518e549c42f186d9145fd8


В отладчике это выглядит так:





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

Создано: 09 декабря 2012 14:26
· Личное сообщение · #7

Не весь импорт восстановил/криво восстановил. Выложи уже файл.




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

Создано: 09 декабря 2012 14:50
· Личное сообщение · #8

Vovan666 пишет:
99,9% что импорт восстанавливается по ординалу, а не по имени.

Если вызов происходит в VM_ExeCryptor'a то api дёргается из кода протектора и этот файл будет работать только на той машине где сняли дамп....

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


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

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

Создано: 09 декабря 2012 15:09
· Личное сообщение · #9

ClockMan
Ну у меня похоже на этот случай как раз.Только даже на 1 и том же компьютере ведет себя по-разному на разных ОС: на 2х ХР работает, на 3-ей ошибка, на Висте,Семерке тоже ошибка.
Какая-то привязка идет к версии kernel32 мне кажется.
А если я импорт буду по ординалам восстанавливать,то проблема исчезнет?




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

Создано: 09 декабря 2012 15:13
· Личное сообщение · #10

normanCRC должно быть по имени на картинке в стеке виден адрес возврата 00de49e0 нужно перейти туда и глянуть окрестности прыжка, а потом сравнить с запакованной программой. и не нужно гаданием заниматься.

-----
[nice coder and reverser]





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

Создано: 09 декабря 2012 16:44
· Личное сообщение · #11

Hellspawn
В rar статьях лижат туторы от vnekrilov где всё подробно описано, я его уже второй раз normanCRC тыкаю туда эффекта ноль....

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



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


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