eXeL@B —› Крэки, обсуждения —› Увеличение ImageSize |
Посл.ответ | Сообщение |
|
Создано: 29 сентября 2005 05:06 · Личное сообщение · #1 Подскажите плс, почему при увеличении последней секции и соответственно увеличении ёё RAW Size и Virtual Size на длину увеличения, ImageSize не всегда требуется увеличивать ? В некоторых случаях программа перестаёт работать, пока не убрать увеличение ImageSize или наооборот не прибавить Почитал кучу мануалов про PE header - но в них сказано, что ImageSize требуется обязательно увеличивать. ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 29 сентября 2005 05:08 · Личное сообщение · #2 |
|
Создано: 29 сентября 2005 05:20 · Личное сообщение · #3 |
|
Создано: 29 сентября 2005 06:02 · Личное сообщение · #4 |
|
Создано: 29 сентября 2005 08:57 · Личное сообщение · #5 |
|
Создано: 29 сентября 2005 09:00 · Личное сообщение · #6 |
|
Создано: 29 сентября 2005 09:38 · Личное сообщение · #7 Файло тут - 4 крякми от фантома (оригиналы и поксоренные через последнюю секцию). Из них 2 не работают - 1 и 4. Если увеличить их ImageSize хотя бы на 1 - то работают, если увеличить хотя бы на 1 два работающих - то они перестают работать, в чем разница не пойму... 1a12_crackmes.rar ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 29 сентября 2005 10:02 · Личное сообщение · #8 Кстати - там Virtual Size последней секции выставлен равным Raw Size, но что неясно, я пробовал увеличить и то и то на размер дописываемого кода - ни один файл не работает, если еще увеличить ImageSize на эту же величину - то тоже не работает... => Таким макаром заработал только Winrar 3.5.. ----- "Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels |
|
Создано: 29 сентября 2005 10:06 · Личное сообщение · #9 |
|
Создано: 29 сентября 2005 10:14 · Личное сообщение · #10 |
|
Создано: 29 сентября 2005 10:17 · Поправил: Bitfry · Личное сообщение · #11 И потом, давай калькулировать: Number Name VirtSize RVA PhysSize Offset Flag══ 1 .text 00000358 00001000 00000400 00000400 F0000020 2 .rdata 000002AC 00002000 00000400 00000800 40000040 3 .data 0000019C 00003000 00000200 00000C00 C0000040 4 .rsrc 00001064 00004000 00001064 00000E00 40000040 У тебя выравнивание стоит 1000. База =1000. Значит 1000+400 и +600 для выравнивания, 2000+400 и +600 для выравнивания, 3000+200 и +800 для выравнивания, 4000+1064 (!) и +0F9C для выравнивания, =6000h Правка: Ах, да ответ на твой вопрос : Если ты к своим неправильным 5000h прибавешь хоть единицу, то загрузчик выравнивает (не всякий!) это значение до следующего ровного, а после этого проверяет, что вышло. Поэтому, прибавь к правильному 6000h хоть 1 и получишь в загрузке 7000h, что не соответствует сумме секций. Bit-hack Кстати я бы с радостью почитал толковых статеек с картинками . Сегодня полчаса пытался руками поправить импорт. Функции определились неверно, нужно исправить ANSI версию на W. Читал, читал – ни хрена не понял . Правлю имя, вроде дизассемблеры показывают как нужно, а в отладчике все по старому, добавил ординал... Чего-то как-то не сложилось. Файл 11Mb, распаковывал не я, к оригиналу больше доступа нет, есть только криво распакованный. Хотелось бы руками исправить. ----- Всем привет, я вернулся |
|
Создано: 29 сентября 2005 12:11 · Личное сообщение · #12 |
|
Создано: 30 сентября 2005 03:51 · Личное сообщение · #13 Bitfry пишет: Правлю имя, вроде дизассемблеры показывают как нужно, а в отладчике все по старому, добавил ординал... Чего-то как-то не сложилось. Грузи прогу в олю, грузи ImpRec, бери импорт, меняй всё, что тебе не понравится Читай Мэтта Питрека про пе, статьи с васма (эти, которых ещё две в паре, на васме есть ещё архив статеек по пе, далее зайди на xtin.km.ru и там найди статью по ручному востановлению импорта, Касперски со своей книгой, я её когда-то читал через строку, там кажись затрагивается такая тема. А если тебе вожна суть востановления - пиши свою тулзу. Своя тулза - лучший способ познать новую, непонятную тему. Ты можешь прочитать хоть 100 статей, и, возможно, ты поймёшь что да как, а написав одну свою тулзу (если она будет работать правильно) ты узнаешь даже тонкие места какой-либо тематики, про которые ты возможно не прочитаешь ни в одной статье... Если решишь забацать тулзу, напиши мыло, возможно забацаем вместе, я тоже всех тонкостей востановления не знаю Но надо-бы узнать. bit-hack@mail.ru (напиши хоть что-нибудь, есть предложение, от которого ты врятли откажешься |
|
Создано: 30 сентября 2005 11:56 · Личное сообщение · #14 |
|
Создано: 30 сентября 2005 15:02 · Личное сообщение · #15 |
|
Создано: 01 октября 2005 00:17 · Личное сообщение · #16 Я не знаю. Но честно скажу и не хочу знать. Какая разница, будет, работать кривоватый файл или нет? Давай соображать. 1. Никакой защиты/уязвимости для нас крякеров в этом нет. 2. MS заявляет, что, дескать, обязательно ровно. Вот: SizeOfImage ----------------- Size, in bytes, of image, including all headers; must be a multiple of Section Alignment. Перевожу: Поле SizeOfImage Размер образа, включая все заголовки. Измеряется в байтах. Должен быть кратен полю Section Alignment. 3. Никакой экономии в неровном значении SizeOfImage нет. В памяти всё равно будет выделено пространство кратное Section Alignment. А на диске файл больше не станет . 4. Очевидно, что выравнивание при загрузке, создаёт лишние задержки (пусть минимальные, но создаёт). Вывод: Лучше делать по инструкции, ведь в данном случае это ничего не стоит. P.S. А вообще, думаю Win2k, WinXP и Win98 сами с усами... Но сам не проверял. ----- Всем привет, я вернулся |
|
Создано: 01 октября 2005 15:23 · Личное сообщение · #17 |
eXeL@B —› Крэки, обсуждения —› Увеличение ImageSize |
Эта тема закрыта. Ответы больше не принимаются. |