Посл.ответ |
Сообщение |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 27 декабря 2005 11:07 · Личное сообщение · #1
Привет!
Выкладываю свою утилиту для чистки пространства между header'ом и первой секцией PE файла. Это полезно, когда, например, после распаковки программы там остается какое-нибудь месиво (или PE редактор прописывает информацию о себе - привет ProcDump!). Другой пример. Знаете Intel C++ Compiler? Он пишет туда настройки, с которыми была скомпилирована программа. Более того, там прописываются полные пути исходников, что не очень хорошо.
Удачи! af5e_PEClean.zip.zip
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
|
Ранг: 450.1 (мудрец) Активность: 0.26↘0 Статус: Участник
|
Создано: 27 декабря 2005 15:59 · Личное сообщение · #2
Tim пишет:
Знаете Intel C++ Compiler? Он пишет туда настройки, с которыми была скомпилирована программа. Более того, там прописываются полные пути исходников, что не очень хорошо.
Ты в Release сначала собери
| Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 299.6 (наставник) Активность: 0.3↘0 Статус: Участник Armadillo Killer
|
Создано: 27 декабря 2005 16:09 · Поправил: Z0oMiK · Личное сообщение · #3
Asterix И вправду.... ты выложил бы скомпилированый проэк ...... вот тут есть почти тоже самое на ASM'e
www.max.neptech.ru/
| Сообщение посчитали полезным: |
![](img/s5.gif) Ранг: 199.6 (ветеран), 12thx Активность: 0.1↘0 Статус: Участник www.uinc.ru
|
Создано: 27 декабря 2005 16:28 · Личное сообщение · #4 |
![](img/s5.gif) Ранг: 122.3 (ветеран) Активность: 0.05↘0 Статус: Участник
|
Создано: 27 декабря 2005 18:24 · Поправил: intty · Личное сообщение · #5
Tim:
да. приведенный тестовый екзешник несъедобный после приложенной тулзы.
неверно определсяется to_offset.
[deleted ибо поторопился и нагнал :]
Z0oMiK:
Ты что не умеешь компелировать(c) ?! ;]]
| Сообщение посчитали полезным: |
![](img/s8.gif) Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 27 декабря 2005 19:20 · Личное сообщение · #6
Z0oMiK
Asterix, видимо, имел в виду, что при компиляции с настройкой Release пути к исходникам не пихаются в файл
DrGolova
см. аттач 2d97_CrapPEfix.zip.zip
----- EnJoy! | Сообщение посчитали полезным: |
![](img/s5.gif) Ранг: 122.3 (ветеран) Активность: 0.05↘0 Статус: Участник
|
Создано: 27 декабря 2005 19:30 · Личное сообщение · #7
Jupiter
обломс..
Test00.exe не является приложением Win32
| Сообщение посчитали полезным: |
Ранг: 45.1 (посетитель) Активность: 0.03↘0 Статус: Участник
|
Создано: 27 декабря 2005 19:36 · Личное сообщение · #8
У меня тоже ..
| Сообщение посчитали полезным: |
![](img/s8.gif) Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 27 декабря 2005 19:56 · Личное сообщение · #9
вы батник запускали? а зря ;)
можно просто из командной строки:
RichOff.exe Test00.exe
----- EnJoy! | Сообщение посчитали полезным: |
![](img/s4.gif) Ранг: 55.8 (постоянный), 6thx Активность: 0.03↘0 Статус: Участник [www.AHTeam.org]
|
Создано: 27 декабря 2005 21:50 · Личное сообщение · #10
DrGolova
Хе, мои утилиты прошли зачет на правильность обработки РЕ :Р
| Сообщение посчитали полезным: |
![](img/s5.gif) Ранг: 199.6 (ветеран), 12thx Активность: 0.1↘0 Статус: Участник www.uinc.ru
|
Создано: 28 декабря 2005 03:57 · Личное сообщение · #11
поздравляю! но это только первый курс, на следующих будут новые задания
| Сообщение посчитали полезным: |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 28 декабря 2005 04:49 · Личное сообщение · #12 |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 28 декабря 2005 05:17 · Личное сообщение · #13
DrGolova, intty
Вот и корень зла - Size of optional header. Этот размер задается в IMAGE_FILE_HEADER, а у меня используется константа IMAGE_SIZEOF_NT_OPTIONAL_HEADER. Щас поправим!
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 299.6 (наставник) Активность: 0.3↘0 Статус: Участник Armadillo Killer
|
Создано: 28 декабря 2005 05:33 · Поправил: Z0oMiK · Личное сообщение · #14
intty пишет:
Ты что не умеешь компелировать(c) ?! ;]]
Шутник однако ..... компилятора нету ![](img/smilies/s16.gif) а качать чет нехотца
| Сообщение посчитали полезным: |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 28 декабря 2005 10:44 · Личное сообщение · #15
Я вернулся! С новостями.
После исправления бага неверного определения SizeOfOptionalHeader утилита должна работать с любыми "более менее нормальными" файлами формата PE.
Более менее нормальные файлы:
Файл от DrGolova после обработки прогой все равно работать не будет, т.к. он (DrGolova) засунул таблицу импорта до первой секции - естественно, ручками, а не с помощью настроек компилятора. По идее, импорт, да и все ресурсы, должны следовать после кода. Я это к тому, что такой файл (с полезными байтами ДО ПЕРВОЙ СЕКЦИИ) - большая редкость, поэтому я не буду пока ничего доделывать (хотя, если честно, мне просто лень =).
До скорого! c156_peclean_v0.02.zip.zip
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 271.6 (наставник), 2thx Активность: 0.3↘0 Статус: Участник
|
Создано: 28 декабря 2005 10:49 · Личное сообщение · #16
Интересная однако прога!
Я использовал ее на Alex Protector 1.0 beta2 (на самом пакере).
Перед использованием PEiD показывал: nothing found
А после: Alex Protector 1.0 beta2.
Как же эта прога заставила его (PEiD'a) признаться?
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 299.6 (наставник) Активность: 0.3↘0 Статус: Участник Armadillo Killer
|
Создано: 28 декабря 2005 11:46 · Личное сообщение · #17
Spirit Прога Tim'a пытала наверна Alex Protector 1.0 beta2
| Сообщение посчитали полезным: |
![](img/s5.gif) Ранг: 199.6 (ветеран), 12thx Активность: 0.1↘0 Статус: Участник www.uinc.ru
|
Создано: 28 декабря 2005 14:05 · Личное сообщение · #18
> засунул таблицу импорта до первой секции
Посмотри внимательно - таблица импорта таки во второй секции
Просто минимальный raw офсет вовсе не обязательно у первой секции их надо перебрать все и выбрать минимальную.
| Сообщение посчитали полезным: |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 29 декабря 2005 05:50 · Личное сообщение · #19
DrGolova
Тогда все просто, нужно лишь добавить один for(...;...;...)
Spirit
Интересно! Я думал, что PEiD судит о проге по ее OEP.
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 271.6 (наставник), 2thx Активность: 0.3↘0 Статус: Участник
|
Создано: 29 декабря 2005 08:28 · Личное сообщение · #20
Tim
По ОЕР говоришь, а мне казалось по сигнатуре,
ведь ОЕР можно сделать какой хочешь...
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
Ранг: 253.9 (наставник) Активность: 0.13↘0 Статус: Участник
|
Создано: 29 декабря 2005 08:34 · Поправил: Tim · Личное сообщение · #21
Spirit
Всмысле, как он выглядит, этот OEP - т.е. какие байты там... =)
Edit:
Только правильнее сказать EP.
----- MicroSoft? Is it some kind of a toilet paper? | Сообщение посчитали полезным: |
![](img/s6.gif) Ранг: 271.6 (наставник), 2thx Активность: 0.3↘0 Статус: Участник
|
Создано: 29 декабря 2005 09:26 · Личное сообщение · #22
Tim
Все равно, не в это суть, а в том что твоя прога
что-то сделала с эти порядком байт, ведь PEiD
перестал врать.
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
![](img/s8.gif) Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 29 декабря 2005 11:41 · Личное сообщение · #23
Tim пишет:
т.к. он (DrGolova) засунул таблицу импорта до первой секции - естественно, ручками, а не с помощью настроек компилятора
почему естессно? можно это и сделать и в самом .asm файле
к тому же импорт в данном случае роли не играет, дело ведь в секциях воовще, а не в импорте в частности
к тому же LINKfix от EliCZ, который я выложил в пердыдущем посте, справляется с этим без проблем
----- EnJoy! | Сообщение посчитали полезным: |
![](img/s9.gif) Ранг: 1288.1 (!!!!), 273thx Активность: 1.29↘0 Статус: Участник
|
Создано: 29 декабря 2005 11:54 · Личное сообщение · #24
Jupiter пишет:
к тому же LINKfix от EliCZ, который я выложил в пердыдущем посте, справляется с этим без проблем
А поподробнее немножко можно?
| Сообщение посчитали полезным: |
![](img/s8.gif) Ранг: 605.2 (!), 341thx Активность: 0.47↘0.25 Статус: Модератор Research & Development
|
Создано: 29 декабря 2005 12:33 · Поправил: Jupiter · Личное сообщение · #25
Ara:
LINKfix - это два инструмента для уменьшения размера PE файлов, создаваемых линкерами, например MS Link
Первый инструмент:
ReduSect для уменьшения физического размера секции, также исправляет VirtualSize фиксапов.
Второй инструмент:
RichOff - для помещения заголовка PE на определённый offset (по умолчанию 0x80) от начала файла, также удаляет лишнюю инфу, пихаемую MS Linker'ом в виде двордов с 'Rich' инфой. Ограничение: образ не должен быть bound (когда импорт привязан к определённым версиям библиотек)
Очень полезный инструмент, если нужно убрать лишнюю инфу из заголовка чужой программы (для своей можно пропатчить MS Link, либо использовать другой линкер)
--
Именно этот инструмент я и предалгал применить к файлу DrGolova - Test00.exe
из командной строки: RichOff.exe Test00.exe
b171_LINKfix.zip.zip
----- EnJoy! | Сообщение посчитали полезным: |