Выполните скрипт в AVZ
Код:
function _DecHex( Dc : Integer) : String;
begin Result := Copy('0123456789abcdef',Dc+1,1); end;
function DecHex( Dec : Integer) : String;
var Di,D1,D2 : integer;
begin
Di := 0; D1 := 0; D2 :=0; While Di < Dec Do Begin d1 := d1 + 1; Di := d1*16-1; end;
If d1 > 0 Then d1 := d1 - 1; D2 := Dec - d1*16; Result :=_DecHex(D1) + _DecHex(D2);
end;
procedure ParseString (S : TStringList; SS : String; SSS : String );
var i,l : integer;
begin
i := Pos(SSS,SS); l := Length(ss);
If l > 1 Then begin If i=0 Then S.Add(ss); If i>0 Then begin
s.Add(Copy(ss,1,i-1)); ParseString(S,Copy(ss,i+1,l-i+1),SSS) end; end;
end;
var SL,SF : TStringList; SS, SSS : String; i : integer;
begin
SS := ''; SSS := ''; SL := TStringList.Create; SF := TStringList.Create;
SS := RegKeyStrParamRead ('HKEY_LOCAL_MACHINE','SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems','Windows');
ParseString (SL,SS,' ');
for i := 0 to SL.Count - 1 do Begin
SS := SL[i];
If Pos('ServerDll=base',SS) > 0 Then Begin
If SS <> 'ServerDll=basesrv,1' Then Begin
AddToLog('Infected "SubSystem" value : ' + SS);
if MessageDLG('Fix "SybSustem" parametrs ?', mtConfirmation, mbYes+mbNo, 0) = 6 then Begin
SSS := SL[i]; SL[i] := 'ServerDll=basesrv,1'; AddToLog('User select "Fix" option.'); end;
end;
end;
end;
SS := ''; for i := 0 to SL.Count - 1 do Begin SS := SS + SL[i]; If SL.Count - 1 > i Then SS := SS + ' '; end;
If SSS <> '' Then Begin
i := Pos(',',SSS); If i = 0 Then i := Length(SSS);
SSS := Copy(SSS, Pos('=',SSS) + 1, i - Pos('=',SSS)-1);
AddToLog('Infection name : ' + SSS + '.dll');
SetAVZGuardStatus(True);
If FileExists('%WinDir%' + '\system32\' + SSS + '.dll') = true then DeleteFile('%WinDir%' + '\system32\' + SSS + '.dll');
SF.Add('REGEDIT4'); SF.Add('');
SF.Add('[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems]');
SSS := '"Windows"=hex(2):';
for i := 1 to Length(SS) do SSS := SSS + DecHex(Ord(Copy(SS,i,1))) + ',';
SSS := SSS + '00'; SF.Add(SSS); SF.SaveToFile(GetAVZDirectory + 'fix.reg');
ExecuteFile('reg.exe','IMPORT "' + GetAVZDirectory + 'fix.reg"', 1, 10000, true);
SaveLog(GetAVZDirectory + 'SubSystems.log');
RebootWindows(false);
end;
SL.Free; SF.Free;
End.
Повторите логи. Прикрепите также файл SubSystems.log из папки AVZ.