eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 августа!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме:
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Вопросы новичков —› Проблемы с дампом PE TOOLS
Посл.ответ Сообщение

Ранг: 1.4 (гость)
Статус: Участник

Создано: 23 октября 2017 14:41 New!
Цитата · Личное сообщение · #1

Здравствуйте. Подскажите пожалуйста. Есть ситуация. Взял на компе произвольную программу что бы попробовать ее распаковать. Открыл PE Tools выбираю DUMP FULL. Смотрю что появляется файл размером 236Кб.

Но файл приложения имеет Вес 25МБ.

Поковырял устройство программы что в ней лежит. Получается что программа имеет встроенную вирт машину для работы Python.

После PE TOOLS взял екзешник который сдампился открыл через Olly врубил дебаг попадаю сразу в такой код на строку 76D2742B
Подскажите как с этим можно бороться программно. Насколько я понимаю стоит защита от сдампливания.
CPU Disasm
Address Hex dump Command Comments
76D27420 /$ 8BFF MOV EDI,EDI ; HEXDATA KERNEL32.InterlockedIncrement(pTarget)
76D27422 |. 55 PUSH EBP
76D27423 |. 8BEC MOV EBP,ESP
76D27425 |. 8B4D 08 MOV ECX,DWORD PTR SS:[EBP+8]
76D27428 |. 33C0 XOR EAX,EAX
76D2742A |. 40 INC EAX
76D2742B |. F0:0FC101 LOCK XADD DWORD PTR DS:[ECX],EAX
76D2742F |. 40 INC EAX
76D27430 |. 5D POP EBP
76D27431 \. C2 0400 RETN 4


Ранг: 222.3 (наставник)
Статус: Участник

Создано: 23 октября 2017 15:27 New!
Цитата · Личное сообщение · #2

Проверьте чем упакована программа, для этого отлично подойдёт инструмент DiE упакована ли программа вообще? Так же стоит обратить внимание на структуру файла. Если вашей программой используется интерпретатор(в Вашем случае это Python) то стоит обратить внимание на оверлей, в этом случае данные из оверлея дамперы не в состоянии переносить на автомате, но это можно делать вручную. А вообще лучше выложить исследуемый файл, что б можно было что-то посмотреть.

Ранг: 1.4 (гость)
Статус: Участник

Создано: 23 октября 2017 15:37 New!
Цитата · Личное сообщение · #3

Peid говорит что Microsoft Visual C++ 8.0 [Overlay] *

Добавлено спустя 12 минут
HandMill так не интересно будет, если выложить файл, могут написать ответ) А как руками можно сдампить из оверлея? есть какая то документация?

Добавлено спустя 14 минут
HandMill или может какую то книжку посоветуете полистать что бы процесс понять


Ранг: 222.3 (наставник)
Статус: Участник

Создано: 23 октября 2017 17:17 · Поправил: HandMill New!
Цитата · Личное сообщение · #4

vladimirMe пишет:
какую то книжку посоветуете полистать что бы процесс понять

если PEiD так говорит, то файл скорее всего не упакован вовсе(можно быть в этом уверенным с высокой долей вероятности), убедитесь проверкой в DiE, он скажет более точно чем PEiD. Но можно быть уверенным что насчёт overlay(это то о чём я писал в первом сообщении) инструмент PEiD Вам не соврал. Сперва Вам нужно ознакомиться что вообще такое этот самый оверлей, на который указывает PEiD, и с чем его едят. Темы про оверлей на форуме уже были. Если вкратце то оверлей это всё остальное пространство файла, которое не вписалось в размер, предусмотренный PE форматом(расположен обычно за последним адресом, имеющим отношение к PE формату). Вам нужно загрузить этот EXE в дизассемблер IDA Pro или OllyDBG и найти и изучить ссылки на оверлей, обычно работа с оверлеем производится при помощи вызова функций чтения файлов ReadFile / ReadFileEx / CreateFileMapping. Если Вы не в курсе о том как работают эти функции то нужно ознакомиться и с этим. К использованию инструмента PE TOOLS прибегать вовсе не нужно.

Ранг: 58.0 (постоянный)
Статус: Участник

Создано: 24 октября 2017 06:44 · Поправил: hlmadip New!
Цитата · Личное сообщение · #5

А зачем дампить если программа не запакована? И дампить следует стоя на OEP, с последующим фиксом импорта.

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

Создано: 24 октября 2017 09:22 New!
Цитата · Личное сообщение · #6

vladimirMe пишет: Получается что программа имеет встроенную вирт машину для работы Python

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


Ранг: 291.1 (наставник)
Статус: Участник

Создано: 24 октября 2017 19:40 New!
Цитата · Личное сообщение · #7

vladimirMe

> попадаю сразу в такой код на строку 76D2742B

Code:
  1. 76D2742B |. F0:0FC101 LOCK XADD DWORD PTR DS:[ECX],EAX
  2. 76D2742F |. 40 INC EAX
  3. 76D27430 |. 5D POP EBP
  4. 76D27431 \. C2 0400 RETN 4 


> Подскажите как с этим можно бороться программно. Насколько я понимаю стоит защита от сдампливания.

Тоесть вы попадаете в процедуру, которая выполняет обычный синхронный обмен значением в переменной и делаете вывод что это антидамп и спрашиваете как это обойти(что ?) путём коденга

Опустим этот бред, вернёмся к дампу. Невозможно связать дамп с динамикой - с перезапуском процесса, это приведёт к пересозданию км обьектов, новые адреса. Даже если отключить юм рандомизацию, то врядле что получится. Каким образом и для чего вы выполнили дамп и пытаетесь его завести в новом процессе - предсказать сложно. Обычно такие извраты нужны если падает клиентский софт и нет возможности для удалённой отладки.

Иначе зачем создавать себе эти проблемы, если есть рабочий процесс ?

=> суть задачи не описана, а просто скрыта.

Ранг: 1.4 (гость)
Статус: Участник

Создано: 25 октября 2017 11:10 New!
Цитата · Личное сообщение · #8

я просто изначально думал что Overlay это упаковка, потом понял что нет. Просто открывал изначально файл в olly он какой то неполный там открывается. А в IDA открылся полный файл. В самой программе спрашивает пароль, когда вводишь неверный пароль, вылазит алерт соответственно Incorrect password, пробовал искать эти строки по всем файлам что в программе, фиг находит, пробовал по отдельности также фиг. Возможно ли что сделали в программе по символьное разбитие по разным адресам строк, а потом какой то алгоритм собирает символы в слово? Я примерно так понимаю, если нету статичных записей.

Ранг: 241.5 (наставник)
Статус: Участник

Создано: 25 октября 2017 13:46 New!
Цитата · Личное сообщение · #9

vladimirMe, ищите не строку Incorrect password, а ставьте бряки на появление ошибки о неверном пароле: ПКМ-> Search for -> All intermodular calls и ставьте бряки на MessageBoxA, ShowWindow, а затем трассируйте и ищите место проверки.

Ранг: 1.4 (гость)
Статус: Участник

Создано: 25 октября 2017 13:51 New!
Цитата · Личное сообщение · #10

это я делал, нету реакции никакой если breakpoin ставить на MessageBoxA.

Ранг: 241.5 (наставник)
Статус: Участник

Создано: 25 октября 2017 13:58 New!
Цитата · Личное сообщение · #11

Было бы легче, если бы ты выложил жертву. Гадать можно еще очень долго

Ранг: 1.4 (гость)
Статус: Участник

Создано: 25 октября 2017 14:14 New!
Цитата · Личное сообщение · #12

Жертва вот https://download.electrum.org/2.9.3/electrum-2.9.3-setup.exe . После установки открыл файл electrum-2.9.3.exe в отладчике. Открытый исходник есть под линукс.

Добавлено спустя 1 минуту
любопытно как устроен обмен с блокчейном изнутри.

Ранг: 241.5 (наставник)
Статус: Участник

Создано: 25 октября 2017 15:05 · Поправил: TryAga1n New!
Цитата · Личное сообщение · #13

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

p.s.: только что прочитал весь тред с начала, HandMill - ванга)

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



Ранг: 329.2 (мудрец)
Статус: Участник
born to be evil

Создано: 25 октября 2017 15:23 New!
Цитата · Личное сообщение · #14

TryAga1n терзала похожая мысль по оверлеям
 eXeL@B —› Вопросы новичков —› Проблемы с дампом PE TOOLS
Эта тема закрыта. Ответы больше не принимаются.

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS