Сейчас на форуме: Rio (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Добавить код в чужую прогу
Посл.ответ Сообщение

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

Создано: 27 февраля 2008 13:04
· Личное сообщение · #1

Хочу добавить свой код в чужую прогу. Прочитал статью cydem.org.ua/pars.php?lnk=add_functions&conf=12,
где написано, чтобы вычислить свободное место в секции нужно воспользоваться формулами:

+-----------------------------------+
| X = RawSize - VirtualSize (2) |
| A = RawOffset + VirtualSize (3) |
+-----------------------------------+

где Х - это количество свободного места в секции.
А - это смещение к началу свободного места в файле.

Споткнулся тут:

.text

RawSize = 0024E600
RawOffset= 00000400
VirtSize = 0024F000

RawSize = 00001A00
RawOffset= 0024EA00
VirtSize = 00002000

.data
.........

Получается
0024E600-0024F000=FFFFF600
или
00001A00-00002000=FFFFFA00

Не могу понять как размер может быть отрицательным???



Ранг: 221.3 (наставник), 135thx
Активность: 0.190.07
Статус: Участник

Создано: 27 февраля 2008 15:12
· Личное сообщение · #2

wasm.ru/article.php?article=addfunc вот это читал?

-----
xchg dword [eax], eax




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

Создано: 27 февраля 2008 16:42 · Поправил: Clim
· Личное сообщение · #3

Если требуется немного места, то пользуюсь hiew: F8, F6, выбираешь 2-ую секцию (следующая после .text, это будет .data, .rdata или че нить такое). PgUp-ом поднимаешься наверх до окончания кода и начала блока зануливания. После оригинального кода поверх нулей можешь вписывать свой код. Только потом надо увеличить размер VirtSize в соответствии с увеличением после внесения добавочного кода в секции .text (F8, F6, .text, F3).



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

Создано: 28 февраля 2008 15:11
· Личное сообщение · #4

v0id2k пишет:
--> Link <-- вот это читал?


Читал, там добавлены так называемые Fake секции в те места, где получались разрывы. У меня разрывов нет к сожалению.



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

Создано: 03 марта 2008 10:14
· Личное сообщение · #5

Clim пишет:
Если требуется немного места, то пользуюсь hiew:

Раньше никогда не использовал Hiew, решил попробовать.

При загрузке в Hiew получаю:

Import data strange



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

Создано: 05 марта 2008 17:18 · Поправил: tundra37
· Личное сообщение · #6

wasmkv Вообще-то для обычного экзешника все именно так в статье. У тебя наверное запакованный и тогда понятно почему hiew ругается. Короче на лицо диагноз
новичок не прочел раздел "Новичку"



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

Создано: 06 марта 2008 10:09 · Поправил: wasmkv
· Личное сообщение · #7

tundra37 пишет:
Вообще-то для обычного экзешника все именно так в статье.


Да, экзешник не совсем обычный. Был бы обычный, вопросов не возникло бы!!!
Он получился после использования стриппера 2.13бета9 для АСПРА.

Сам экзешник www.mediafire.com/?yz52xtcpiz9 1.12 мб



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

Создано: 21 марта 2008 18:28
· Личное сообщение · #8

wasmkv пишет:
Хочу добавить свой код в чужую прогу

Смотря что иммено, можно и просто прям в OllyDbg.
wasmkv пишет:
вычислить свободное место

если надо много места можно UPX'ом пожать,
вниз код опустишь там много нулей, добовляй что хашь.




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 21 марта 2008 21:20
· Личное сообщение · #9

Boss
Уважаемый, заканчивайте поднимать старые топики бесполезными постами во избажение бана и отрицательного ранга.


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