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

 eXeL@B —› Вопросы новичков —› Как патчить свой процесс в памяти ?
Посл.ответ Сообщение

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

Создано: 13 июля 2007 16:15
· Личное сообщение · #1

Понимаю что вопрос глупый.
Подскажите как сделать правильно следующее:

procedure TForm1.Button1Click(Sender: TObject);
Var xEAX: DWord;
begin
Asm
push EAX
push EBX
int 3
mov ebx, 0044D963h
mov byte ptr [EBX], 0FFh

nop
//0044D963 |. B8 00000000 MOV EAX,0
mov EAX, 0
nop

mov xEAX, EAX
pop EBX
pop EAX
End;
if xEAX=0 Then Button1.Caption:='FUCK' else Button1.Caption:='COOL'
end;


Я хочу в памяти поменять команду mov EAX, 0 на mov EAX, FFh зная адрес команды.
Нужно получить какие-то привилегии ?



Ранг: 75.0 (постоянный)
Активность: 0.040
Статус: Участник

Создано: 13 июля 2007 16:35
· Личное сообщение · #2

SergX пишет:
44D963h

Это какой сегмент, если код, то либо выставляй в опциях компилера разрешения на запись в эту секцию, либо юзай virtualprotect

SergX пишет:
//0044D963 |. B8 00000000 MOV EAX,0


Если это так, то косяк здесь
SergX пишет:
mov ebx, 0044D963h
mov byte ptr [EBX], 0FFh

надо
mov ebx, 0044D964h



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

Создано: 13 июля 2007 16:44
· Личное сообщение · #3

Rush пишет:
Если это так, то косяк здесь

Не сорри єто очепятка.
На самом деле:
//0044D962 |. B8 00000000 MOV EAX,0

Rush пишет:
юзай virtualprotect

Спасибо. Щаз поищу.




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 14 июля 2007 09:56
· Личное сообщение · #4

Rush пишет:
Это какой сегмент, если код, то либо выставляй в опциях компилера разрешения на запись в эту секцию

Как-то давным-давно тоже с такой хренью столкнулся. Решения для дельфи так и не нашел. Как в опциях компилера дельфи выставить разрешение, мож еще пригодится когда-нить?




Ранг: 61.7 (постоянный)
Активность: 0.050
Статус: Участник
я

Создано: 14 июля 2007 10:41 · Поправил: BaGiE
· Личное сообщение · #5

Ara пишет:
Как-то давным-давно тоже с такой хренью столкнулся. Решения для дельфи так и не нашел. Как в опциях компилера дельфи выставить разрешение, мож еще пригодится когда-нить?

Дак вроде в делфи(что я юзал, мб в новых версиях aka 2006 и есть) нет такой фичи. Проще подправить флаг секции CODE на запись(что не есть гут) или VirtualProtect юзать.



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

Создано: 14 июля 2007 21:17
· Личное сообщение · #6

Кому интересен результат, сюда:
--> Link <--




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 18 июля 2007 15:20
· Личное сообщение · #7

BaGiE пишет
Проще подправить флаг секции CODE на запись(что не есть гут)
А это что, Bad?

-----
Stuck to the plan, always think that we would stand up, never ran.



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


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