Посл.ответ |
Сообщение |
Ранг: 14.5 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 19 июля 2007 15:00 · Личное сообщение · #1
Наро как вызывать API ыункции не используя нормальній вызов, я имею ввиду Call или invoke
я вот чтото написал! вроде как базу Kernel32 нахожу, смещение известно заранее, пробую нечего неполучаеться видимо стото гдето неучел! посмотрите примерчик может ошибку заметите)))) 37ff_19.07.2007_CRACKLAB.rU.tgz - test.asm
| Сообщение посчитали полезным: |
|
 Ранг: 120.9 (ветеран), 5thx Активность: 0.08↘0 Статус: Участник Programmer and reverser
|
Создано: 19 июля 2007 16:50 · Личное сообщение · #2
Честно говоря там вообще херня написана
----- Уважайте других и пишите грамотно. | Сообщение посчитали полезным: |
 Ранг: 120.9 (ветеран), 5thx Активность: 0.08↘0 Статус: Участник Programmer and reverser
|
Создано: 19 июля 2007 17:17 · Поправил: Executioner · Личное сообщение · #3
должно быть приблизительно это (тут прописаны мои RVA функций):
.486
.model flat,stdcall
option casemap:none
.code
main:
assume fs:flat
mov eax, fs:[30h]
push esi
mov eax, [eax+0Ch]
mov esi, [eax+1Ch]
lodsd
mov eax, [eax+08h]
pop esi
mov edx, eax ; в EDX база kernel32
mov ebx, 0B529h ; в EBX RVA функции GetModuleHandleA
add ebx, edx ; добавляем к смещению базу
push 0 ; ModuleName = null
push offset Return ; пихаем в стек адрес возврата
jmp ebx ; прыжок на GetModuleHandleA
Return:
mov ebx, 1CAA2h ; RVA ExitProcess
add ebx, edx ; добавляем к смещению базу
push 0 ; ExitCode = 0
push offset Return1 ; пихаем в стек адрес возврата
jmp ebx ; прыжок на ExitProcess
Return1:
end main
----- Уважайте других и пишите грамотно. | Сообщение посчитали полезным: |
Ранг: 14.5 (новичок) Активность: 0.01↘0 Статус: Участник
|
Создано: 20 июля 2007 10:41 · Личное сообщение · #4
спасибо! походу у меня RVA неправильные! ладно! будем работать и учиться! А вот личный вопрос! все те кто кодит на АСМЕ имеют аватары маленьких пушистых безобидных зверьков(ну может и не зверьков а просто добрых созданий)?? просто ты второй кого я тут вижу и кто более менее разбираеться с похожим аватаром! а вот как раз те кто нечего незнает и нечего не понимает ставят себе какихто злождеев и монстров???))) ето так??? я правильно заметил???
| Сообщение посчитали полезным: |
 Ранг: 107.6 (ветеран) Активность: 0.11↘0 Статус: Участник
|
Создано: 20 июля 2007 11:53 · Личное сообщение · #5
[OFFTOP]
super_man86 пишет:
а вот как раз те кто нечего незнает и нечего не понимает ставят себе какихто злождеев и монстров???))) ето так??? я правильно заметил???
Хм... ты тоже от скромности не умрешь.
[/OFFTOP]
----- программистом не рождаются - им умирают | Сообщение посчитали полезным: |
 Ранг: 113.0 (ветеран) Активность: 0.05↘0 Статус: Участник
|
Создано: 20 июля 2007 13:33 · Личное сообщение · #6
Есть еще вроде метод сканирования памяти с использованием crc (wasm.ru, испанец писал) с обкладками SEH'ом.
> все те кто кодит на АСМЕ имеют аватары маленьких пушистых безобидных зверьков
Ага, я например.
----- The one derivative you manage is the one I abhore (c) Slipknot | Сообщение посчитали полезным: |
Ранг: 162.2 (ветеран) Активность: 0.09↘0 Статус: Участник
|
Создано: 20 июля 2007 13:52 · Личное сообщение · #7
Chingachguk
Тебя просто довели
| Сообщение посчитали полезным: |
 Ранг: 120.9 (ветеран), 5thx Активность: 0.08↘0 Статус: Участник Programmer and reverser
|
Создано: 20 июля 2007 15:48 · Личное сообщение · #8
super_man86
У тебя там не только RVA неправильные. Там вообще фигня написана. Только база kernel32 правильно получается, видимо, из какого-то примера звято. А вызов ты, видать, сам писал  Не хочу обидеть) Учи асм.
----- Уважайте других и пишите грамотно. | Сообщение посчитали полезным: |