3 недель(и) назад | #1 | |
Windows 98
Регистрация: 19.11.2010
Сообщений: 163
Поблагодарили всего: 81
за это сообщение: 2 |
[Delphi] ZeusKiller
функция убийства процесса by хз кто
Код:
function KillTask(ExeFileName:string):integer; const PROCESS_TERMINATE=$0001; var Co:BOOL; FS:THandle; FP:TProcessEntry32; begin result:=0; FS:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); FP.dwSize:=Sizeof(FP); Co:=Process32First(FS,FP); while integer(Co) <> 0 do begin if ((UpperCase(ExtractFileName(FP.szExeFile))=UpperCase(ExeFileName)) or (UpperCase(FP.szExeFile)=UpperCase(ExeFileName))) then Result:=Integer(TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0), FP.th32ProcessID),0)); Co:=Process32Next(FS,FP); end; CloseHandle(FS); end; Код:
Procedure zeuskiller; var S,n,i,m,nk:String; b:Integer; RegIni: TRegIniFile; begin with TRegistry.Create do begin RootKey:=HKEY_LOCAL_MACHINE; OpenKey('\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\', false); //открываем ключ S:=ReadString('Userinit'); //считываем ключ Userinit Destroy; If S<>PChar(GETENVIRONMENTVARIABLE('WINDIR')+'system32userinit.exe,') //смотрим если ключ не равен %WinDir%\system32\userinit.exe, значит там сидит Zeus then begin S:=StringReplace(S,PChar(GETENVIRONMENTVARIABLE('WINDIR')+'system32userinit.exe,'),'',[rfReplaceAll]); //избавляемся от лишнего b:=AnsiPos(',',S); //узнаем позицию первой запятой (слева на право) n:=(Copy(S, 0 , b-1)); //копируем путь до исполняемого файла №1 S:=StringReplace(S,n,'',[rfReplaceAll]); //избавляемся от пути в переменной S nk:=(Copy(S, 0 , Height-1)); //копируем 2ой путь n:=StringReplace(n,',','',[rfReplaceAll]); //удаляем запятую в переменной n nk:=StringReplace(nk,',','',[rfReplaceAll]); //удаляем запятую в переменной KillTask('winlogon.exe'); //убиваем Winlogon, именно в нем сидит Zeus DeleteFile(n); //удаляем 1ый файл DeleteFile(nk); //удаляем 2ой файл RegIni := TRegIniFile.Create('Software'); RegIni.RootKey := HKEY_LOCAL_MACHINE; RegIni.OpenKey('SOFTWAREMicrosoftWindows NTCurrentVersion', true); RegIni.WriteString('Winlogon', 'Userinit', PChar(GETENVIRONMENTVARIABLE('WINDIR')+':)system32userinit.exe,)); //ну а тут мы перезаписываем ключ реестра RegIni.Free; //убираем за собой end; end; end; |
|
Нижняя навигация | ||||||
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
(Подробнее) Тему прочитали: 8 | |
bertolai, Dave, GrammarNazi, Pille, ptktyrf, RXT, VaD75, _Stealer_ |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|