Показать сообщение отдельно
Старый 14.08.2010, 09:50   #137
Новичок
 
Регистрация: 11.05.2010
Сообщений: 19
Сказал Спасибо: 0
Имеет 10 спасибок в 6 сообщенях
Эдвадко пока неопределено
По умолчанию

У меня другая проблема - После последнего обновления на руоффе не могу найти процесс куда внедряться.
Такое ощущение, что процесс LineageII.exe запускает l2.bin как один из своих потоков да еще и прячет его. Пытаюсь поймать его тестовыми прогами типа этой -
Код:
{$APPTYPE CONSOLE}
uses Windows, NativeAPI;

var
 ProcInfo, ProcIter : PSYSTEM_PROCESSES;

var i : Integer = 1;

{
Системный вызов ZwQuerySystemInformation для Windows XP.
}
Function XpZwQuerySystemInfoCall(ASystemInformationClass: dword;
  ASystemInformation: Pointer;
  ASystemInformationLength: dword;
  AReturnLength: pdword): dword; stdcall;
asm
pop ebp
mov eax, $AD
call @SystemCall
ret $10
@SystemCall:
mov edx, esp
sysenter
end;


procedure GetSyscallProcessList();
var
Info: PSYSTEM_PROCESSES;
mPtr: pointer;
mSize: dword;
St: NTStatus;
begin
mSize := $4000; 
repeat
GetMem(mPtr, mSize);
St := XpZwQuerySystemInfoCall(SystemProcessesAndThreadsInformation, mPtr, mSize, nil);
if St = STATUS_INFO_LENGTH_MISMATCH then
begin 
FreeMem(mPtr);
mSize := mSize * 2;
end;
until St <> STATUS_INFO_LENGTH_MISMATCH;
if St = STATUS_SUCCESS then
begin
Info := mPtr;
repeat
  Writeln(i:3,' ',WideCharToString(Info^.ProcessName.Buffer)) ;
//NewItem^.ProcessId := Info^.ProcessId;
//NewItem^.ParrentPID := Info^.InheritedFromProcessId;
  Info := pointer(dword(info) + info^.NextEntryDelta);
  Inc(i);
until Info^.NextEntryDelta = 0;
end;
FreeMem(mPtr);
end;



begin
  GetSyscallProcessList();
end.
Но не вижу нужного процесса.

Последний раз редактировалось Эдвадко, 15.08.2010 в 11:49.
Эдвадко вне форума   Ответить с цитированием