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

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

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

Создано: 13 сентября 2012 21:00
· Личное сообщение · #1

в продолжение http://exelab.ru/f/action=vthread&forum=5&topic=20118&page=-1#15
но решил, что тема немножко отличается, поэтому создал новую тему.

Имеется прога, которая создает процесс из victim.exe, после чего инжектит туда свой код. Victim.exe изначально грузится в 400000, а инжект осуществляется в пространство 80000. Инжектированный код, создает секцию в 380000, распаковывает туда другой код, загружает нужные DLL, заполняет таблицы с адресами нужных API, но PE заголовка не создает. Точку входа я определил, примерный адрес таблицы импорта тоже.

Каким образом можно сдампить такой образ, чтобы получился рабочий *.exe для анализа в IDA?




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

Создано: 13 сентября 2012 21:03
· Личное сообщение · #2

"dump region" и соединить полученные

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




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

Создано: 13 сентября 2012 21:05
· Личное сообщение · #3

Т.е нужно будет вручную прикреплять заголовок тоже созданный вручную?




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

Создано: 13 сентября 2012 21:07
· Личное сообщение · #4

либо он будет в регионе, либо ручками создавать. наугад, 100% не сказать

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




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

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

В регионе его точно не будет, т.к. в этой области памяти его не было.

Я думал есть автоматические утилиты: указал регион, указал OEP, адрес таблиц, -> на тебе свеженький PE header )))



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

Создано: 13 сентября 2012 21:35
· Личное сообщение · #6

попробуйте дампить через RKU, он вроде автоматом фиксит заголовок после дампа (но могу и ошибаться)




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

Создано: 13 сентября 2012 22:00
· Личное сообщение · #7

toxakgd пишет:
В регионе его точно не будет, т.к. в этой области памяти его не было

в предыдущем от кода мб, а может и не быть
toxakgd пишет:
думал есть автоматические утилиты

куда проще: copy /b 1+2+3 отменили? бредотопик очередной. за этот час можно было свой дампер накатать уже

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





Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 13 сентября 2012 23:12 · Поправил: Flint
· Личное сообщение · #8

toxakgd пишет:
Имеется прога, которая создает процесс из victim.exe, после чего инжектит туда свой код. Victim.exe изначально грузится в 400000, а инжект осуществляется в пространство 80000. Инжектированный код, создает секцию в 380000, распаковывает туда другой код, загружает нужные DLL, заполняет таблицы с адресами нужных API, но PE заголовка не создает.

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

-----
Nulla aetas ad discendum sera




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

Создано: 14 сентября 2012 00:28
· Личное сообщение · #9

ajax пишет:
куда проще: copy /b 1+2+3 отменили? бредотопик очередной. за этот час можно было свой дампер накатать уже

Спасибо за помощь. Вам наверно в основном форуме поинтересней будет. За этот час я занимался другими делами, не связанными с RE



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

Создано: 14 сентября 2012 00:38
· Личное сообщение · #10

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

Именно. Стаб действительно не содержит изначально адресов, мало того он базонезависим. Стаб создает всего одну секцию и туда загоняет код, определяя адреса функций по имени, заполняет структуру похожую на таблицу импорта, но заголовка PE не создает. После заполнения таблицы импорта просто передает управление в созданную секцию 380000. PE заголовок остается от старой проги Victim.exe, но он нафиг не нужен...



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

Создано: 14 сентября 2012 00:41
· Личное сообщение · #11

Я так понимаю, во время выполнения PE заголовок вообще программам не нужен. Он нужен для правильного отображения exe в память, импортирования функций и тд при старте программы. Также он нужен когда дампиш программу для правильного размещения секций и структур в файл.

Я ничего не перепутал?




Ранг: 238.8 (наставник), 67thx
Активность: 0.20
Статус: Участник
CyberHunter

Создано: 14 сентября 2012 08:58
· Личное сообщение · #12

Выложите файл

-----
Nulla aetas ad discendum sera





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

Создано: 14 сентября 2012 09:22 · Поправил: ClockMan
· Личное сообщение · #13

PE заголовок нужен системе для отоброжения файла в память,зная структуру PE формата можно самому проецировать файлы в память без РЕ хидера.
toxakgd пишет:
во время выполнения PE заголовок вообще программам не нужен

Всё зависит от компилятора ну и самого написаного кода,в большинстве случаев файл будет выдовать ошибку исполнения.
toxakgd пишет:
Также он нужен когда дампиш программу

Он нафиг ненужен,берёшь WinHex дампишь регион,правишь РЕ хидер или пишешь новый и вуоля файло готов к работе.
toxakgd пишет:
для правильного размещения секций

Вообще можно из 10 секций сделать одну,или с одной секции штук 30 дело вкуса

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


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

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

Создано: 14 сентября 2012 21:38
· Личное сообщение · #14

Всем спасибо, ручками в WinHex'е прикрутил PE заголовок. Все заработало


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


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