Сейчас на форуме: zombi-vadim, zds (+4 невидимых)

 eXeL@B —› Программирование —› Написание dll для лоадера
Посл.ответ Сообщение

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

Создано: 05 октября 2013 12:10 · Поправил: harek10
· Личное сообщение · #1

Доброго времени суток. Помогите пожалуйста в данной задаче. Нужно написать Dll библиотеку для лоадера который заменит код в запакованном файле во время его выполнения (runtime). Имеется рабочий код и оригинальный на ASM. Нужно в запакованный файл с помощью лоадера внедрить dll, которая до выполнения оригинального кода, заменит этот код на нужный. Никак не могу найти в гугле инфу по написанию такой dll, по этому я собственно и тут.
Вопросы - Реально ли это вообще реализовать? Есть ли у кого мануал по написанию такой dll для данной задачи? На каком языке нужно писать Dll? или может кто поможет это сделать?

--> Жертва <--

-->Код (оригинал) во время выполнения он распакован (вырезано из OllyDbg)<--


-->На что нужно заменить<--


Unpack не вариант, так как нужен именно оригинальный файл который надо пропатчить.
Inline PatcherЫ не подходят, так как нет поддержки данного протектора (PC Guard 5.0).


P.S. Всем спасибо заранее за ответы. Сильно не пинайте, я новичок в данных делах .



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

Создано: 05 октября 2013 12:19 · Поправил: Vovan666
· Личное сообщение · #2

1. Почему бы не распаковать как надо и не пропатчить?
2. Нафига инжектить длл, если все-равно используется лоадер, можно же из под него пропачить и все?
3. Без жертвы врядли кто-то за это возьмется.



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

Создано: 05 октября 2013 12:25
· Личное сообщение · #3

1.По поводу распаковки - распаковывал по разному и несколько раз, восстанавливал таблицу итд. Файл запускается но все время выдает ошибки. Тут немного сложнее, это сервер и отследить запуск можно только в процессах, так как он ничего не выдает при запуске (никаких окон и прочего). Если есть опыт по распаковке PC Guard, поделись я буду очень благодарен, так как инфы в нете нужной нет.

2.Совет проинжектить длл я получил на этом форуме, после создание темы--> Распаковка PC Guard <-- если интересно глянь, там есть файлы.

3. Жертвы? Если нужны деньги, назовите стоимость.



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

Создано: 05 октября 2013 13:17
· Личное сообщение · #4

Вот попробуй распакованный
http://rghost.ru/49163756

harek10 пишет:
3. Жертвы? Если нужны деньги, назовите стоимость.

Имелось ввиду, что при задавании таких вопросов, не плохо выкладывать программу-жертву, а то написано много, а самого главного нету.

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

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

Создано: 05 октября 2013 13:54
· Личное сообщение · #5

Спасибо большое за труд, попробовал распакованный, но это так же как и я его распаковывал. Увы не работает.




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

Создано: 05 октября 2013 15:59
· Личное сообщение · #6

harek10 пишет:
Спасибо большое за труд, попробовал распакованный, но это так же как и я его распаковывал. Увы не работает.

выложи жертву что тут годать должны что ли

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




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

Создано: 05 октября 2013 16:02 · Поправил: harek10
· Личное сообщение · #7

Жертва в теме.



Ранг: 1.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 октября 2013 16:10
· Личное сообщение · #8

>> Увы не работает.
Вы уверенны? У меня прекрасно работает, по крайней мере, так же, как и запакованный оригинал.

>> попробовал распакованный, но это так же как и я его распаковывал.
Это не так. У вас в распакованном файле сохранён оригинальный вызов функции 0xC761F6 в таблице импорта.
В данном файле вызов этой функции заменен на
Code:
  1. xor eax, eax; ret;
(всегда возвращает 0).
Ваш файл падает при вызове именно этой функции. Эта функция расшифровывает код по адресу 0xC7636D. При формировании ключа расшифровки используется количество секций в файле. Из-за того, что у вас в дампе 3 секции, а в оригинальном файле 6, код расшифровывается неправильно, из-за этого и падает. Более того, насколько я понимаю (глубоко не смотрел), в этой функции реализована проверка лицензии с помощью PC-Guard. У вас во фрагменте, который вы собрались патчить, по адресу 0x4176B9 как раз вызывается эта функция, и если вызов не успешен, то получите "NETxLAB Softlock Interface Initialization failed.".



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

Создано: 05 октября 2013 16:26
· Личное сообщение · #9

_Researcher_ пишет:
Вы уверенны? У меня прекрасно работает, по крайней мере, так же, как и запакованный оригинал.


Благодарю за информацию и ответ. Однако объясню почему я хочу инжектнуть файл. Когда я подменяю код (который указан в теме) с помощью OllyDbg в оригинальном файле - проверка проходит на ура и все запускается и работает. А когда я подменяю этот же код в распакованном файле выходит ошибка Microsoft Visual C++ Runtime Library R6002 <<Floating point support not loaded>> См.файл.
Вот...


f9fc_05.10.2013_EXELAB.rU.tgz - 213.JPG




Ранг: 337.6 (мудрец), 224thx
Активность: 0.210.1
Статус: Участник
born to be evil

Создано: 05 октября 2013 16:55 · Поправил: ajax
· Личное сообщение · #10

нормальный такой прайс на софт --> Link <--

пс: тема похожа на "запросы на взлом", только "завернута в хрустящую бумажку" (про конфеты

ппс: самый лаконичный вариант, с родным хеадером --> Link <--

-----
От многой мудрости много скорби, и умножающий знание умножает печаль




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

Создано: 05 октября 2013 16:56
· Личное сообщение · #11

Ну по этому собственно я не оформил заказ на Взлом программ




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

Создано: 05 октября 2013 17:39
· Личное сообщение · #12

Расспакованный --> Link <--

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


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

Ранг: 1.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 05 октября 2013 17:50
· Личное сообщение · #13

1. Непропатченный файл нормально работает (распакованный имею ввиду)?
2. Глянул мельком ваш патч, странно, что при подмене оно вообще работает. Там вы call затираете, а push перед ними нет, не удивительно, что падать будет.



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

Создано: 05 октября 2013 18:07
· Личное сообщение · #14

ClockMan пишет:
Расспакованный --> Link <--

Спасибо друг. Твой Анпак выручил! Все работает! Но можно вопрос:? есть инструкция,как ты его распаковал? Очень интересно)))



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

Создано: 05 октября 2013 18:38
· Личное сообщение · #15

Всем спасибо за помощь. Тема закрыта.


 eXeL@B —› Программирование —› Написание dll для лоадера
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати