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

 [email protected] —› Протекторы —› Восстановление ресурсов после execryptor
Посл.ответ Сообщение

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

Создано: 30 ноября 2018 23:34 · Поправил: minaevmaksimik
· Личное сообщение · #1

Привет любимому форум.
Распаковал Execryptor 2.4.1 скриптом ExeCryptor Basic Unpacker 1.0.txt ( от уважаемого LCF-AT ).
Пофиксил точку входа, удалил проверки CRC. Софт запускается.
Хотел изменить иконку. Выяснилось, что после редактирования ресурсов программа перестает запускаться.
Я так понимаю, что необходимо пересобрать ресурсы.
Пересобирал Resource Binder' ом.
После пересборки софт падает.
Прикрепляю файлы: http://rgho.st/6FHGytV8l
UnPackMe_ExeCryptor 2.4.1.exe ---> запакованный,
UnPackMe_ExeCryptor 2.4.1_fixcrc.exe --->дамп с фиксами,
UnPackMe_ExeCryptor 2.4.1_fixcrc_changeico.exe ---> смена иконки на дампе,
UnPackMe_ExeCryptor 2.4.1_fixcrc_resfix.exe ---> пересборка ресурсов Resource Binder' ом.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 01 декабря 2018 01:46
· Личное сообщение · #2

minaevmaksimik пишет:
UnPackMe_ExeCryptor 2.4.1_fixcrc_changeico.exe ---> смена иконки на дампе


В этом файле у тебя убитый импорт.

Общий метод после базовой распаковки:
- Удали TLS
- Сохрани секцию с импортом (чтобы можно было потом проверить)
- Удали все секции протектора
- Перестрой ресурсы
- Сохрани дамп ресурсов
- Удали секцию ресурсов
- Прикрути секцию импорта (Scylla), укажи её в директории импорта
- Прикрути перестроенные на новый адрес (после секции импорта) ресурсы

-----
EnJoy!


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

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

Создано: 01 декабря 2018 16:58
· Личное сообщение · #3

Не могу понять, что делаю не так.
- Удалил TLS
- Сохранил секцию импорта в файл
-Удалил все секции(кроме двух. В них краденные байты)
-Сохранил ресурсы в отдельный файл.
-Удали ресурсы из файла
-Удалил секцию импорта
-Прикрутил импорт Scylla v0.9.7c
-Прикрутил ресурсы( указал адрес секции ресурсов и размер)
Получаю битый файл.
В чём моя ошибка?
Ссылка: http://rgho.st/6VtVlMkTl
fixsection.exe ---> удалил лишние секции+ переименовал для удобства
fixsection_SCY.exe --> Проделал весь список операции, указанный Jupiter.
rsrc.bin --> ресурсы добытые ResFixer v 1.0 beta 1 by seeQ
С секциями работал софтом PE Tools 1.9.762.2018




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 01 декабря 2018 17:18
· Личное сообщение · #4

fixsection.exe:

#--Name---VirtSize---RVA----PhysSize--Offset----Flag
1 .text---00008000 00001000 00006800 00000400 E0000020
2 .data---00002000 00009000 00000800 00006C00 C0000040
3 .rsrc---00008000 0000B000 00008000 00007400 C0000040
4 .prot1--00001000 00013000 00000E00 0000F400 C0000040
5 .prot2--00066000 00014000 00030200 00010200 E0000020
6 .SCY----00001000 0007A000 00000E00 00040400 E0000060



fixsection_SCY.exe:

#--Name---VirtSize---RVA----PhysSize--Offset----Flag
1 .text---00008000 00001000 00006800 00000400 E0000020
2 .data---00002000 00009000 00000800 00006C00 C0000040
3 .prot1--00001000 00013000 00000E00 00007400 C0000040
4 .prot2--00066000 00014000 00001000 00008200 C0000040
5 .SCY----00002000 0007A000 00001200 00009200 E0000060
6 .rsrc---00008000 0007C000 00008000 0000A400 E00000E0


Ошибки в файле fixsection_SCY.exe:

SEC: #3: VirtualAddress (00013000) is not correct (0000B000)
SEC: #4: VirtualAddress (00014000) is not correct (0000C000)
SEC: #5: VirtualAddress (0007A000) is not correct (00072000)
SEC: #6: VirtualAddress (0007C000) is not correct (00074000)



Попробуй после удаления лишних секций делать ребилд файла и следи за суммой (виртуальный адрес + размер секции)

-----
EnJoy!




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

Создано: 01 декабря 2018 17:36
· Личное сообщение · #5

Каким софтом делать ребилд?
Откуда такой листинг

SEC: #3: VirtualAddress (00013000) is not correct (0000B000)
SEC: #4: VirtualAddress (00014000) is not correct (0000C000)
SEC: #5: VirtualAddress (0007A000) is not correct (00072000)
SEC: #6: VirtualAddress (0007C000) is not correct (00074000)

?
Очень удобно в моём случае.
Поделитесь, если не жалко.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 01 декабря 2018 17:54
· Личное сообщение · #6

minaevmaksimik пишет:
Каким софтом делать ребилд?

Тем же PE Tools


minaevmaksimik пишет:
Откуда такой листинг

Это плагин PE Verify для Hiew:
--> hiew.ru <--
--> Hiew External Modules <--


Общий принцип работы с секциями:
У тебя виртуальный образ всегда должен быть целостным, без дырок в адресном пространстве.
Таким образом, если ты удаляешь секцию, то ты должен переместить другие секции, либо изменить виртуальный размер той секции, которая была перед удалёнными, чтобы она стала больше на удалённый размер (например).
Но в целом я бы переместил украденные байты обратно в код, чтобы удалить секции процессора.

-----
EnJoy!


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

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

Создано: 01 декабря 2018 20:39 · Поправил: minaevmaksimik
· Личное сообщение · #7

Заметил странную вещь.
Грешу на пересборщик ресурсов.
Если копирую оригинальную секцию и вставляю её в конец, то все работает.(Только ресурсы не редактируются)
Если же после ResFixer v 1.0 beta 1 by seeQ, то софт не работает.

Также проверил с Resource Rebuilder v1.0 by Dr.Golova. Не работает.
Возможно, что с ресурсами после пакера что-то не так?




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 01 декабря 2018 20:51
· Личное сообщение · #8

А ты адрес новой секции ресурсов указываешь в качестве нового адреса для перестройщика ресурсов?
А потом указываешь новые параметры в директории ресурсов?

-----
EnJoy!




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

Создано: 01 декабря 2018 20:56
· Личное сообщение · #9

Скорее всего я где-то допускал ошибку. Интересно будет разобраться.
Использовал автоматическую утилиту https://exelab.ru/f./action=vthread&forum=3&topic=5196&page=1#25.
Всё заработало.

Добавлено спустя 1 минуту
Нет не указывал. Проверю чуть позже. Спасибо за разъяснение.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 01 декабря 2018 20:59
· Личное сообщение · #10

minaevmaksimik пишет:
Использовал автоматическую утилиту

Возьми новую версию:
--> Resource Binder 4.0.0 <--


minaevmaksimik пишет:
Интересно будет разобраться


В секции ресурсов указаны файловые смещения, а не виртуальные. То есть смещения от начала файла на диске, поэтому ресурсы могут размещаться в любой части файла, поскольку смещения абсолютные. Именно поэтому при изменении адреса секции ресурсов необходимо перестроить ресурсы на новый адрес.

-----
EnJoy!



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


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