Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

access violation........,блин

3.2K
27 августа 2006 года
luis
71 / / 19.07.2005
может кто знает как правильно?

PTOZWQUERYINFORMATIONPROCESS TYPEDEF PROTO:DWORD, : DWORD, : DWORD, : DWORD, : DWORD
PZWQUERYINFORMATIONPROCESS TYPEDEF PTR PTOZWQUERYINFORMATIONPROCESS
PID equ 1280 ; может быть любой программы
_PROCESS_BASIC_INFORMATION STRUCT ; sizeof = 18h
ExitStatus DWORD ?
PebBaseAddress DWORD ? ; PPEB
AffinityMask DWORD ?
BasePriority DWORD ? ; KPRIORITY
UniqueProcessId DWORD ?
InheritedFromUniqueProcessId DWORD ?
_PROCESS_BASIC_INFORMATION ENDS

.data?
pbi _PROCESS_BASIC_INFORMATION <?>
ZwQueryInformationProcess PZWQUERYINFORMATIONPROCESS ?
hProcess dd ?
hModule dd ?

.data
szNtdll db "ntdll",0
szOK db "OK",0
szFuncName db "ZwQueryInformationProcess",0

.code
invoke GetModuleHandle,offset szNtdll
mov hModule,eax
invoke GetProcAddress,eax,offset szFuncName
mov ZwQueryInformationProcess,eax
invoke OpenProcess,PROCESS_ALL_ACCESS,0,PID
mov hProcess,eax
invoke ZwQueryInformationProcess,eax,0,offset pbi,sizeof(_PROCESS_BASIC_INFORMATION),NULL
test eax,eax
jnz FINISH
invoke MessageBox,NULL,offset szOK,offset szOK ,0
FINISH:
invoke ExitProcess,0
3.2K
28 августа 2006 года
luis
71 / / 19.07.2005
все отбой ответ найден просто в некоторых функциях
(например AdjustTokenPrivilege)применятся
аддресация с помощью регистра ESP
в данном случае :
invoke ZwQueryInformationProcess,eax,0,offset pbi,sizeof(_PROCESS_BASIC_INFORMATION),NULL
а нужно хотя бы так
lea EBX,[ESP]
invoke ZwQueryInformationProcess,eax,0, EBX ,sizeof(_PROCESS_BASIC_INFORMATION),NULL
в этом случае данные будут получены по аддресу EBX
и функция будет работать
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог