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

 eXeL@B —› Крэки, обсуждения —› Проблема с обрезание секций упаковщика
. 1 . 2 . >>
Посл.ответ Сообщение

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

Создано: 11 июля 2005 17:27
· Личное сообщение · #1

Проблема с обрезание секций упаковщика



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

Создано: 11 июля 2005 17:30 · Поправил: X3MALL
· Личное сообщение · #2

Прочитал стаью:
[url=http://www.exelab.ru/art/art325.php
]http://www.exelab.ru/art/art325.php
[/url]
Не выходит у меня ничего с обрезание секций упаковщика как только я это делаю так как написано в статье конечный файл перестает работать!!! на запакованам калькуляторе выходит а вот на других програмах нет!!!
Что я не так делаю?




Ранг: 536.4 (!), 171thx
Активность: 0.660.13
Статус: Администратор
Создатель CRACKL@B

Создано: 11 июля 2005 17:40
· Личное сообщение · #3

X3MALL
Ну а в конечном счёте какой смысл секцию вообще обрезать ? Ну сэкономишь там 8Кб лишних разницы то никакой почти.

-----
Всем не угодишь




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

Создано: 11 июля 2005 17:44 · Поправил: X3MALL
· Личное сообщение · #4

Bad_guy
Хочеться делать по человечески!!!

Проги мне пишут что приложение не являеться приложением Win32
Стастью кучу раз перечитывал, всеровно понять немогу что делаю не так!!!



Ранг: 495.3 (мудрец)
Активность: 0.30
Статус: Участник

Создано: 11 июля 2005 18:19
· Личное сообщение · #5

X3MALL пишет:
всеровно понять немогу что делаю не так!!!

А что ты делаешь?

-----
Всем привет, я вернулся




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

Создано: 11 июля 2005 19:02 · Поправил: X3MALL
· Личное сообщение · #6

Ок щаз опиши все свои действия.
К примеру беру прогу ZOOM PLAYER 4.50
Открываю ее в OLLYDBGере, перехожу в нижнее окно и нажимаю "ctrl+g" там пишу "esp-4" перехожу в вернее окно нажимаю "F9" 7 раз попадпю на:
0072A3B0 61 POPAD
0072A3B1 75 08 JNZ SHORT zplayer.0072A3BB
0072A3B3 B8 01000000 MOV EAX,1
0072A3B8 C2 0C00 RETN 0C
0072A3BB 68 B8FC6100 PUSH zplayer.0061FCB8
0072A3C0 C3 RETN

Ставлю BP на 0072A3C0 и нажимаю еще раз "F9".
После этого запускаю PETools.exe (настройки стоят такие как написаны в статье) и там выбираю наш процес "zplayer.exe" нажимаю "Dump full" сохраняю в отдельную папку.
Запускаю Resfixer открываю в нем наш дамп выбираю второй метод и нажимаю "Rebuild" сохраняю файл ".rsrc" в этуже новую папку.
Открываю нашь дамп Pe Editirом (тот который в PeTools) нажимаю "Sections" и удаляю с файла там .adata, .aspack, .rsrc остаются .reloc, .rdata, .tls, .idata, BSS и две секции без имен. Нажимаю на последней секции и добовляю .rsrc Записываю значения Virtual size "00094000" и Virtual Offset "00296000"
Потом нажимаю Directories и на против "Resource Directory" вбиваю наши значения в RAW "00296000" в Size "00094000" сохраняю, закрываю жму ОК.
Запускаю ImportREC и настаиваю его на нашь процес "zplayer.exe" и вбиваю нашь OEP 0021FCB8 (0061FCB8 - 400000) нажимаю "IAT AutoSearch" после "GetImports" нажимаю на "ShowInvalid" нажимаю на "FixDump" выбираю наш DUMPED.exe
Прога колбасит и создает файл DUMPED_.exe перенашу его в папку с прогой и запускаю а он мне выдает ошибку "Ошибка при инициализации приложения (0хс0000005). Для выхода из приложения назмите кнопу ОК"
Если не делать процедуру с обризанием секции то все работет програма запускаеться!!!
Что я деляю не так???




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

Создано: 11 июля 2005 20:36
· Личное сообщение · #7

а зачем ты .rsrc удаляешь?
чтобы потом добавить?
ты ресурсы то хоть перестраиваешь?

кстати, какая версия PE Tools? может быть у тебя та, что содержит серьёзные глюки в редакторе секций

-----
EnJoy!





Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 11 июля 2005 20:58
· Личное сообщение · #8

X3MALL пишет:
"Ошибка при инициализации приложения (0хс0000005)

обычно такое при косяках с импортом либо tls`ами.

Jupiter пишет:
ты ресурсы то хоть перестраиваешь?

а ты его пост читал Ж))

Jupiter пишет:
а зачем ты .rsrc удаляешь?
чтобы потом добавить?

чтобы добавить перестроенные, кста обычно так все и делают ;)

PS хотя вот нафига что-то перестраивать в аспаке... разве что ради самого процесса.




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

Создано: 11 июля 2005 21:25
· Личное сообщение · #9

Mario555
а ты его пост читал Ж))
хе-хе, читал, я, конечно ленивый, но не настолько ;))))


чтобы добавить перестроенные, кста обычно так все и делают ;)
а пральные адреса указать?
он, наверняка, перестроил, лишь жамкнув "Rebuild", не указав ПРАВИЛЬНЫЕ адреса перестаиваемой секции!
я потому и обратил на это внимание!

-----
EnJoy!





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 11 июля 2005 21:39
· Личное сообщение · #10

X3MALL

Почитай статейку, как раз про аспак.

nikolaekb.narod.ru/tutor/manual_unpack_Aspak.rar



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

Создано: 11 июля 2005 23:01
· Личное сообщение · #11

NIKOLA
Сенькс за статейку щаз прочтем!!!
Я что-то не понял про перестраивание я делал как написано в статье!!! Я понимаю что не все так просто (хотя врубаюсь сразу поэтому выглядит просто). Что еще нужно было делать после открытия файла в Resfixer???

Mario555, Jupiter
Я описал полностью хот своих действий. Что еще нужно было делать???

Jupiter
версия PeTools последня 1.5.600.2005
А можно про правильные адреса по подробней??? как и где их искать???




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 12 июля 2005 01:13
· Личное сообщение · #12

X3MALL

Читай статью, там про разделку ресурсов всё подробно описано.



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

Создано: 12 июля 2005 01:30
· Личное сообщение · #13

После всех манипуляция с секциями нужно исправить Size of Image (благо в PE Editor может все сам подсчитать).



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

Создано: 12 июля 2005 10:34
· Личное сообщение · #14

Nabu
Ну и как, то есть от чего вычислять Size of Image и где его потом вбивать??? Тоесть нужно было до востановления импорта выполнить еще одно дествие???



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

Создано: 12 июля 2005 11:29
· Личное сообщение · #15

X3MALL.
Кажется у биоворма была очень не плохая статья про обрезание - добавление секций, к сожалению названия не помню.



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

Создано: 12 июля 2005 11:58
· Личное сообщение · #16

X3MALL.
Вот почитай у Godness'а есть про добавление секций, и не забывай перестраивать секцию ресурсов .rsrc Resource Rebuilder'ом by DrGolova.
http://www.exelab.ru/art/apdfpr.php



Ранг: 203.3 (наставник)
Активность: 0.220
Статус: Участник
UPX Killer -d

Создано: 12 июля 2005 12:19
· Личное сообщение · #17

X3MALL пишет:
0072A3C0 C3 RETN

Ставлю BP на 0072A3C0 и нажимаю еще раз "F9".


Если 0072A3C0 перебросит на OEP, то зачем запускать программу по Ф9? дампить нужно остановившись на OEP или чуть ближе-дальше, главное точно его адрес знать.

-----
Я медленно снимаю с неё UPX... *FF_User*




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

Создано: 12 июля 2005 12:36
· Личное сообщение · #18

NIKOLA
Щаз разбираю твою статью на твоем же примете!!!
Есть вопросы.
1) Почему всегда нужно заходить во второй CALL???
2) В "Этот CALL нам не нужен, а заходим во второй CALL, т.е. 006B8039 и попали сюда. Рис.8 Нажимаем 3 раза F8 и смотрим, что у нас в регистрах, а непосредственно в этой строчке" Опечатка не 3 раза а один потому что если нажать 3 раза в ESI будет 557000 (думаю это уже с учетом сложения)
3) по поводу вычисления "вниз и ищем где заканчиваются имена API + 4 байта" если учитывать 4 байта то конц 4 байта будет 00559D8B. Нам нужно какбы начало тегото следущего (тоесть фактически API + 5 байт) то тогда 00559D8C, как правильно?, тоесть 5 байт и есть начало чего-то другово и нам нужно брать число 00559D8C?
4) В PE Editore когда я вбиваю EntryPoint то Cheksum уменя (002C4845) отличаеться от твоей!! Это говорит что дамп не правильно снял??? ну так все делал так как у тебя!!! перепровирял несколько раз!!!
5) Почиму мы от CallBack Table VA 0055B010 отнимаем 10??? потому что в "Basic PE Header Information" в строке "NumOfRvaAndSize" стоит 00000010??? Другип причин ненашел!!!
6) Да забыл сказать что прога не запускаеться так как "Для работы программы необходимо BDE версии не ниже 4.0" чего у меня нет!!! нашь дамп выдает такуюже ошибку что и оригинал, это можно считать что дамп работат??? Ну после выкидывания секций прога выдает туде ошибку!!!

Для меня не сильно понятно про то как выкидывать секции если всеже использовать ImpRec!!!
Дамп нужно делать когда стоим на OEP?
OEP — Я найду другим способом!
RVA IAT – мне искать также как в этом примере?
Size IAT – мне искать также как в этом примере?
Если я буду ипользовать ImpRec то в какой последжовательности нужно выполнять действия???
Изминить дам в Pe Editore потом использывать Resfixer после удалить секции потом в Optional Header сделать изминения после добавить секцию и ВОСТАНОВИТЬ ИМПАРТ??? или как??



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

Создано: 12 июля 2005 12:48
· Личное сообщение · #19

AlexZ
Когда я ставлю BP на 0072A3C0 я нахожусь на строке 0072A3B1 а и нажимаю еще раз "F9" после того как поставлю BP для того чтоб прога остановилась на строке 0072A3C0!!!
Помоему ты просто не понял где я находился!!!



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

Создано: 12 июля 2005 12:57 · Поправил: X3MALL
· Личное сообщение · #20

DFC
У bi0w0rM всего одна статья про "Еще раз об установке брейкпоинта на точке входа" ну покрайне мери на этом сайте!!!




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 12 июля 2005 13:31
· Личное сообщение · #21

X3MALL пишет:
Почему всегда нужно заходить во второй CALL???


Ты в первый заходил ? Смотрел, что там ?Нашёл чтонибудь интересное для себя ?
Я думаю нет. Читай начало статьи, по какому принципу она написана.
X3MALL пишет:
Опечатка


Возможно. Исправлю.

X3MALL пишет:
по поводу вычисления


Можно и так: имена API+1 байт. Главное чтобы конец иат заканчивался нулями.

X3MALL пишет:
В PE Editore когда я вбиваю EntryPoint то Cheksum уменя (002C4845) отличаеться от твоей!!


Если сдампил в том месте как описано, то дамп рабочий на 100% (при условии, что ты :
1. Правильно определил оеп.
2. Нашёл начало и конец иат (и прописал все найденные значения правильно).

X3MALL пишет:
Почиму мы от CallBack Table VA 0055B010 отнимаем 10???


Это я узнал опытным путём. Запаковал > распаковал > сравнил оригинал с дампом.

X3MALL пишет:
Да забыл сказать что прога не запускаеться так как


Надо было читать хелп, а дамп получился рабочим.

Не обязательно было брать именно эту прогу, можно было любую, запакованную этим пакером.

X3MALL пишет:
Дамп нужно делать когда стоим на OEP?


Это если в ольке. В айсе на переходе к оеп.

X3MALL пишет:
RVA IAT – мне искать также как в этом примере?
Size IAT – мне искать также как в этом примере?


Можно стоя на оеп (опятьже в ольке), вписываеш оеп в импреке и авто поиск. Найдёться всё без проблем.
То, что не определилось вырезаеш.


X3MALL пишет:
Изминить дам в Pe Editore потом использывать Resfixer после удалить секции потом в Optional Header сделать изминения после добавить секцию и ВОСТАНОВИТЬ ИМПАРТ???


Снимаеш дамп > перестраиваеш ресурсы > удаляеш секции (в том числе и .rsrc) > вставляеш
перестроинные ресурсы > правишь пе хидер > востанавливаеш импорт > фиксиш импорт к эксешнику >
запускаеш дамп > делаеш с ним что хочеш > сушиш сухари (на тот случай, если придут дяди в погонах) >
обедаеш (а может завтракаеш или ужинаеш) > чистиш зубы (обязательно после еды, иначе придёт кариес ) > ну и т.д. и т.п.. Я думаю, дальше сам разберёшся



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

Создано: 12 июля 2005 14:11
· Личное сообщение · #22

NIKOLA
Сенькск щаз разбираюсь на свой проге покамисть все получаеться определил все что нужно:
OEP -21FCB8
RVA IAT – 269000
Size IAT – 3A73=(26CA73-269000)
вроде все правильно!!!
Щаз нужно будет поработать потом буду дальше пробывать!!!
А к примеру как разбираться с UPX там же другие команды наверника!?!?!?!?




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 12 июля 2005 15:03
· Личное сообщение · #23

X3MALL пишет:
А к примеру как разбираться с UPX там же другие команды наверника!?!?!?!?


Что ты имееш в виду ???



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

Создано: 12 июля 2005 15:23
· Личное сообщение · #24

NIKOLA
Все получилось, все работает. В принципе легко оказалось все!!!
Только вот не дает пакое одно просматриваю прогой "File Inverstigator Properties" и вижу вней:
This program must be run under Win32
^B*[LordPE]
.idata
.rdata
.reloc
.aspack
.adata
Что тут делает ^B*[LordPE], .aspack,.adata????
Что не все вычестил???



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

Создано: 12 июля 2005 15:32
· Личное сообщение · #25

NIKOLA
Я имею введу как убирать UPX секции!!!




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 12 июля 2005 16:22
· Личное сообщение · #26

X3MALL пишет:
Что тут делает ^B*[LordPE],


Ну это типа автографа (подписи)

X3MALL пишет:
.aspack,.adata????


Х.з.

X3MALL пишет:
Я имею введу как убирать UPX секции!!!


Тут проще распаковывать самим UPX'ом.



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

Создано: 12 июля 2005 16:42
· Личное сообщение · #27

В принципе насколько я понимаю обрезание это не совсем нужно!!! Главное же рапаковать!?!?!?
NIKOLA а где можно почитать как убирать UPX секции?
Кстате даные RVA и Size в ImportREC отличаються от тех которые я нашел!?!?!?!?!?
ImportREC нашел:
RVA 00269268
Size 00000A90
А я вот это:
RVA 00269000
Size 3A73
Попробывал то что он нашел не подошли переделал на своих все работет!!!?!?!?!?!
В чем прикол тыже писал что он их без проблем???!?!?!?



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

Создано: 12 июля 2005 18:02
· Личное сообщение · #28

Короче про UPX.

1.Дампиш
2.Ребилдиш ресурсы дампу например ResFixer'ом, выбираеш FULL Reconstruct и сохраняеш .rsrc на диск
3.В PeEditor'e удаляеш (KillFrom file) старый .rsrc из дампа
4.Загружаеш с диска поребилженый .rsrc
5.Восстанавливаеш импорт (незабудь найти RVA)
6.RebuildPE.

Всё, лишних движений делать не нужно (типа поправки адреса секций), сделаеш всё как написано, всё будет ОК. Кстати с аспаком всё также, только с .rsrc удаляеш аспаковые секции.



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

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

NUCLEuS
Поиск RVA осуществляется таким же как и в ASPacke способом, или как?




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 12 июля 2005 19:01
· Личное сообщение · #30

NUCLEuS пишет:
6.RebuildPE


Не советую делать этого. Дамп , чаще всего, получается глючным.

NUCLEuS пишет:
1.Дампиш
2.Ребилдиш ресурсы дампу например ResFixer'ом, выбираеш FULL Reconstruct и сохраняеш .rsrc на диск


Накуя это делать, когда можно самим UPX'ом распаковать.


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


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