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

 eXeL@B —› Вопросы новичков —› Проблема с поиском OEP в файле запакованном UPX
Посл.ответ Сообщение

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

Создано: 20 августа 2009 00:01
· Личное сообщение · #1

Пытаюсь найти OEP в файле запакованном UPX путём поиска popad с последующим jmp.
Находится ооочень много popad. Если долго перебирать попадаются последовательности popad-jmp, но их тоже много. Раньше, при распаковке UPX, с таким количеством popad и пар popad-jmp не сталкивался. upx.exe распаковал этот файл без проблем. Файл выложить не могу.
Куда копать? Как определить нужный переход на OEP?



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

Создано: 20 августа 2009 00:47
· Личное сообщение · #2

После выполнения PUSHAD ставим hardware breakpoint on access на 1й DWORD в стеке, после запуска оказываемся рядом с POPAD и JMP на OEP.
Если совсем никак то вот скрипт
Code:
  1. //Stand to OEP
  2.  
  3. findop eip,#61#
  4. bphws $RESULT, "x"
  5. run 
  6. bphwc eip
  7. findop eip,#E9????????#
  8. bphws $RESULT,"x"
  9. run
  10. bphwc eip
  11. sto
  12. ret




Ранг: 284.8 (наставник), 6thx
Активность: 0.150
Статус: Участник

Создано: 20 августа 2009 10:42
· Личное сообщение · #3

vg
чтобы не изобретать велосипед. если руками не получается, заюзай для начала QU а потом пости уже.



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

Создано: 20 августа 2009 22:21
· Личное сообщение · #4

um0v пишет:
вот скрипт

Для какого это отладчика?
RSI пишет:
заюзай для начала QU

Что это?



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

Создано: 20 августа 2009 22:33 · Поправил: tihiy_grom
· Личное сообщение · #5

vg
По-моему, вам лучше распаковывать такие файлы самим UPX

Скрипт этот для отладчика OllyDbg
QU (QuickUnpack) - это универсальный распаковщик многих пакеров.


Может стоит для начала почитать статьи для новичков?
Напривер вот эту - http://exelab.ru/art/?action=view&id=206

или весь раздел - http://exelab.ru/art/



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

Создано: 20 августа 2009 23:56
· Личное сообщение · #6

RSI пишет:
заюзай для начала QU а потом пости уже.

tihiy_grom пишет:
QU (QuickUnpack) - это универсальный распаковщик многих пакеров.

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

tihiy_grom пишет:
Может стоит для начала почитать статьи для новичков?

Читал, давно. Везде распаковка upx описывается одним способом - через поиск popad c последующим jmp, что у меня не выходит (см. первый пост).

По поводу скриптов для Olly. Где про это можно прочитать? Как их запускать?



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

Создано: 21 августа 2009 00:06
· Личное сообщение · #7

vg пишет:
Моя цель не просто распаковать, а распаковать вручную

Ну так почитай статьи внимательно и нормально.

vg пишет:
Читал, давно. Везде распаковка upx описывается одним способом - через поиск popad c последующим jmp, что у меня не выходит (см. первый пост).

Видимо плохо читал, ибо ничего в разных версиях UPX не меняется. Как был джамп после popad, так он и остался.




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 21 августа 2009 00:08
· Личное сообщение · #8

может ему попались новые версии упх, там уже неного не так
vg пишет:
Везде распаковка upx описывается одним способом - через поиск popad c последующим jmp

Code:
  1. 006D9E04    61              POPAD  <-- вот popad
  2. 006D9E05    8D4424 80       LEA EAX,DWORD PTR SS:[ESP-80]
  3. 006D9E09    6A 00           PUSH 0
  4. 006D9E0B    39C4            CMP ESP,EAX
  5. 006D9E0D  ^ 75 FA           JNZ SHORT 006D9E09
  6. 006D9E0F    83EC 80         SUB ESP,-80
  7. 006D9E12  ^ E9 4D66F6FF     JMP 00640464  <-- а вот нужный jmp


-----
Лучше быть одиноким, но свободным © $me




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

Создано: 21 августа 2009 00:23
· Личное сообщение · #9

BoRoV пишет:
может ему попались новые версии упх

А что за новые версии? Последняя ведь 3.03w(27 Apr 2008).




Ранг: 533.6 (!), 232thx
Активность: 0.450
Статус: Uploader
retired

Создано: 21 августа 2009 00:35
· Личное сообщение · #10

ну я и считаю, что новая версия это последняя, т.к. новее ее еще нет, и этот код что я привел как раз 3.03

-----
Лучше быть одиноким, но свободным © $me




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

Создано: 21 августа 2009 01:02 · Поправил: tihiy_grom
· Личное сообщение · #11

del

P.S. пока удалю свой пост, на всякий случай подожду ответа топикстартера



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

Создано: 22 августа 2009 23:34
· Личное сообщение · #12

BoRoV прав! Нашёлся точно такой кусок кода.
Только, возник другой вопрос. Не получается разобраться с таблицей импорта. Делаю дамп, через Import REConstructor нахожу автопоиском IAT, получаю импорт, выглядит очень похоже на правду, присоединяю импорт к дампу - инструкция по адресу такому-то обратилась к памяти по адресу "0x00000000". Это с добавление новой секции. Пробовал с прописыванием RVA Import Table полученной из дампа через LordPE->PE Editor - получаю Not enough space to put new import datas!



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

Создано: 23 августа 2009 00:10
· Личное сообщение · #13

vg
выложи ты уже свой файл



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

Создано: 23 августа 2009 21:24 · Поправил: Gerpes
· Личное сообщение · #14

http://www.exelab.ru/f/action=vthread&topic=11792&forum=5&page=-1

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


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


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