Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

19.04.2008, 19:28
|
|
Постоянный
Регистрация: 20.08.2006
Сообщений: 327
Провел на форуме: 2472378
Репутация:
1077
|
|
kir@pro, новичку врядли удасться бороться с компилятром Делфи или C++!! Можно оптимизировать процентов на 10 максимум... На самом деле оптимизировать лучше алгоритм...
но я считаю что каждому из нас обязательно надо, хотябы чуть чуть (основу), знать ассэмблер!!! с ним жизнь станет намного легче
конечно, когда ты знаешь во что преобразуется If или While легче на душе)))
|
|
|

20.04.2008, 01:17
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
Провел на форуме: 3371897
Репутация:
1462
|
|
перевел пример из сишного в фасм
Код:
call dword [GetCurrentProcessId]
push eax
push TRUE
push PROCESS_OPERATION_AND_WRITE ; 0x0028
call dword [OpenProcess]
mov [pHandle],eax
push 0
push size ;1
push ChangeFor ; 0x74
push WriteHere
push pHandle
call dword [WriteProcessMemory]
add esp,8
WriteHere: JMP short WriteHere
...
0x74 = JZ , размеры совпадают , jz и выполнение продолжается , на Си работает , а тут зацикливается
Где я накосячил?
|
|
|

20.04.2008, 10:23
|
|
Постоянный
Регистрация: 20.08.2006
Сообщений: 327
Провел на форуме: 2472378
Репутация:
1077
|
|
Код:
include 'include\win32ax.inc'
.code
Buffer db 0x74
start:
stdcall [GetCurrentProcessId]
stdcall [OpenProcess],0x0028,TRUE,eax
push NULL ; pBytesWritten = NULL
push 1 ; BytesToWrite = 1
push Buffer ; [Buffer] = 0x74
push WriteHere ; Address of WriteHere
push eax ; hProcess
call [WriteProcessMemory]
WriteHere: JMP WriteHere
.end start
push Buffer ; [Buffer] = 0x74
push eax ; hProcess
Работало, пока не завопил нод и не удалил файл =\\ епанутый какой то =\\
|
|
|

30.04.2008, 22:05
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
Провел на форуме: 3371897
Репутация:
1462
|
|
как такая 'конструкция' в фасме выглядит?
Код:
code1 label byte
db 68h
Hooker1 dd 0
db 0c3h
|
|
|

30.04.2008, 22:16
|
|
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме: 1845671
Репутация:
1338
|
|
68 00 00 00 00 = push 0
С3 = ret
Если я правильно понел вопрос 
|
|
|

30.04.2008, 22:24
|
|
Постоянный
Регистрация: 16.04.2007
Сообщений: 398
Провел на форуме: 3371897
Репутация:
1462
|
|
в Hooker1 запишется адрес обработчика ,
чтобы затем WriteProcessMemory,-1,[EntryAdress], code1 (без offset прим фасм) ,code1_size,0
а фасм такую директиву (code1 label byte) не принимает :/
Последний раз редактировалось Jes; 30.04.2008 в 22:28..
|
|
|

30.04.2008, 22:28
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Сообщение от Jes
как такая 'конструкция' в фасме выглядит?
Код:
code1 label byte
db 68h
Hooker1 dd 0
db 0c3h
а зачем тебе тут label?
code1:
db 68h
Hooker1:
dd 0
db 0C3h
а дальше культурно как-нибудь так:
mov byte [code1], 0c3h
jmp code1
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

30.04.2008, 22:33
|
|
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме: 1845671
Репутация:
1338
|
|
Тем более аверов и файеров привлекать вызовом WriteProcessMemory. 
Лишние подозрения
|
|
|

30.04.2008, 22:44
|
|
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме: 3008839
Репутация:
1502
|
|
Да, кстати, на всякий случай: вот так делать вроде бы нельзя (раньше нелбзя было точно, сейчас, скорее всего, тоже - давненько я таким не занимался  ):
Код:
push code2
mov byte[code1], 0C3h
code1:
push 0
ret
code2:
...
будет ошибка.
Надо так:
Код:
push code2
mov byte[code1], 0C3h
jmp code1
code1:
push 0
ret
code2:
...
Ибо у прцессора есть очередь команд, которая сбрасывается только при некоторых командах, например jmp.
__________________
Bedankt euch dafür bei euch selbst.
H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
|
|
|

30.04.2008, 22:48
|
|
Постоянный
Регистрация: 08.05.2006
Сообщений: 816
Провел на форуме: 1845671
Репутация:
1338
|
|
desTiny Да от препроцесора зависит. на masm думаю и первый вариант будет норм...
Последний раз редактировалось GlOFF; 30.04.2008 в 23:14..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|