polar_bear
Новый пользователь
- Сообщения
- 8
- Реакции
- 1
Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
begin
SearchRootkit(true, true);
SetAVZGuardStatus(True);
StopService('srservice');
StopService('srservice');
QuarantineFile('c:\windows\system32\rasadhlp.dll','');
QuarantineFile('srservice.sys','');
QuarantineFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\Fifoed(6)\A0000218.dll','');
QuarantineFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0052957.exe','');
QuarantineFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0052961.exe','');
QuarantineFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0053940.msi','');
DeleteFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\Fifoed(6)\A0000218.dll');
DeleteFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0052957.exe');
DeleteFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0052961.exe');
DeleteFile('C:\System Volume Information\_restore{6B6F5F24-C4EC-4B66-A5A4-8F08DF634101}\RP116\A0053940.msi');
DeleteFile('c:\windows\system32\rasadhlp.dll');
DeleteFile('srservice.sys');
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '1201', 3);
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '1001', 1);
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '1004', 3);
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '2201', 3);
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '2201', 1);
DeleteService('srservice');
BC_ImportAll;
ExecuteSysClean;
BC_Activate;
ExecuteRepair(1);
ExecuteRepair(2);
ExecuteRepair(8);
ExecuteRepair(16);
RebootWindows(true);
end.
begin
CreateQurantineArchive(GetAVZDirectory+'quarantine.zip');
end.
var DescriptionTextWuauServ, DispayNameTextWuauServ, DescriptionTextBITS: String;
DispayNameTextBITS, FullPathSystem32, NameFolderSystem32, FileServiceDll: String;
ImagePathStr, RootStr, SubRootStr, LangID: string;
AllRoots, AllKeys, RootsRestored, KeysRestored, KeysFixed: integer;
FinishMsg, RestoreMsg, FixMsg, CheckMsg: String;
RegSectMsg, ParamMsg, ParamValueMsg, InRegSectMsg, CorrectMsg, RestMsg: String;
procedure CheckAndRestoreSection(Root: String);
begin
Inc(AllRoots);
if RegKeyExistsEx('HKLM', Root) then
RegKeyResetSecurity('HKLM', Root)
else
begin
Inc(RootsRestored);
RegKeyCreate('HKLM', Root);
AddToLog(RegSectMsg + Root + RestMsg);
end;
end;
procedure CheckAndRestoreSubSection;
begin
CheckAndRestoreSection(SubRootStr);
end;
procedure RestoredMsg(Root, Param: String);
begin
AddToLog(ParamMsg + Param + InRegSectMsg + Root + RestMsg);
Inc(KeysRestored);
end;
procedure FixedMsg(Root, Param: String);
begin
AddToLog(ParamValueMsg + Param + InRegSectMsg + Root + CorrectMsg);
Inc(KeysFixed);
end;
procedure RestoreStrParam(Root, Param, Value: String);
begin
RegKeyStrParamWrite('HKLM', Root, Param, Value);
RestoredMsg(Root, Param);
end;
procedure CheckAndRestoreStrParam(Root, Param, Value: String);
begin
Inc(AllKeys);
if not RegKeyParamExists('HKLM', Root, Param) then
RestoreStrParam(Root, Param, Value);
end;
procedure CheckAndRestoreIntParam(Root, Param: String; Value: Integer);
begin
Inc(AllKeys);
if not RegKeyParamExists('HKLM', Root, Param) then
begin
RegKeyIntParamWrite('HKLM', Root, Param, Value);
RestoredMsg(Root, Param);
end;
end;
procedure CheckAndRestoreMultiSZParam(Param, Value: String);
begin
Inc(AllKeys);
if not RegKeyParamExists('HKLM', RootStr, Param) then
begin
ExecuteFile('REG ADD HKLM\' + RootStr + ' /v ' + Param + Value, '', 0, 10000, true);
RestoredMsg(RootStr, Param);
end;
end;
// Исправление значения параметра ImagePath для служб 'wuauserv' и 'BITS'
procedure ImagePathFix(Node, Srv: String);
var RegStr: String;
begin
RegStr := 'SYSTEM\' + Node + '\Services\' + Srv;
if RegKeyExistsEx('HKLM', RegStr) then
begin
Inc(AllKeys);
RegKeyResetSecurity('HKLM', RegStr);
RegKeyStrParamWrite('HKLM', RegStr, 'ImagePath', ImagePathStr);
FixedMsg(RegStr, 'ImagePath');
end;
end;
{ Выполнение исправление всех ключей в ветках -
'HKLM\SYSTEM\CurrentControlSet\Services\BITS' и 'HKLM\SYSTEM\CurrentControlSet\Services\wuauserv'}
procedure CorrectRegistryRoot(DescriptionText, DisplayNameText, Srv: String);
var FileServiceDll, CCSNumber: string;
i : integer;
begin
if Srv = 'BITS' then
FileServiceDll := FullPathSystem32 + 'qmgr.dll'
else
FileServiceDll := FullPathSystem32 + 'wuauserv.dll';
RootStr:= 'SYSTEM\CurrentControlSet\Services\' + Srv;
CheckAndRestoreSection(RootStr);
CheckAndRestoreStrParam(RootStr, 'Description', DescriptionText);
CheckAndRestoreStrParam(RootStr, 'DisplayName', DisplayNameText);
CheckAndRestoreStrParam(RootStr, 'ObjectName', 'LocalSystem');
Inc(AllKeys);
if not RegKeyParamExists('HKLM', RootStr, 'ImagePath') then
RestoreStrParam(RootStr, 'ImagePath', ImagePathStr)
else
begin
Dec(AllKeys);
if LowerCase(RegKeyStrParamRead('HKLM', RootStr, 'ImagePath')) <> LowerCase(ImagePathStr) then
for i:= 0 to 999 do
begin
if i > 0 then
CCSNumber := FormatFloat('ControlSet000', i)
else
CCSNumber := 'CurrentControlSet';
ImagePathFix(CCSNumber, Srv);
end;
end;
CheckAndRestoreIntParam(RootStr, 'ErrorControl', 1);
CheckAndRestoreIntParam(RootStr, 'Start', 2);
CheckAndRestoreIntParam(RootStr, 'Type', 32);
if Srv = 'BITS' then
begin
CheckAndRestoreMultiSZParam('DependOnService', ' /t REG_MULTI_SZ /d RpcSs');
CheckAndRestoreMultiSZParam('DependOnGroup', ' /t REG_MULTI_SZ');
end;
SubRootStr:= RootStr + '\Enum';
CheckAndRestoreSubSection;
CheckAndRestoreStrParam(SubRootStr, '0', 'Root\LEGACY_' + UpperCase(Srv) + '\0000');
CheckAndRestoreIntParam(SubRootStr, 'Count', 1);
CheckAndRestoreIntParam(SubRootStr, 'NextInstance', 1);
SubRootStr := RootStr + '\Security';
CheckAndRestoreSubSection;
Inc(AllKeys);
if not RegKeyParamExists('HKLM', SubRootStr, 'Security') then
begin
RegKeyBinParamWrite('HKLM', SubRootStr, 'Security', '01,00,14,80,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00,02,00,1c,00,01,00,00,00,02,80,14,00,ff,00,0f,00,01,01,00,00,00,00,00,01,00,00,00,00,02,00,48,00,03,00,00,00,00,00,14,00,9d,00,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,00,00,14,00,ff,01,0f,00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00');
RestoredMsg(SubRootStr, 'Security');
end;
SubRootStr:= RootStr + '\Parameters';
CheckAndRestoreSubSection;
Inc(AllKeys);
if not RegKeyParamExists('HKLM', SubRootStr, 'ServiceDll') then
begin
RegKeyParamWrite('HKLM', SubRootStr, 'ServiceDll', 'REG_EXPAND_SZ', FileServiceDll);
RestoredMsg(SubRootStr, 'ServiceDll');
end
else if LowerCase(RegKeyStrParamRead('HKLM', SubRootStr, 'ServiceDll')) <> LowerCase(FileServiceDll) then
begin
RegKeyParamWrite('HKLM', SubRootStr, 'ServiceDll', 'REG_EXPAND_SZ', FileServiceDll);
FixedMsg(SubRootStr, 'ServiceDll');
end
end;
{ Главное выполнение }
begin
ClearLog;
ExpRegKey('HKLM', 'SYSTEM\CurrentControlSet\Services\wuauserv', 'wuauserv.reg');
ExpRegKey('HKLM', 'SYSTEM\CurrentControlSet\Services\BITS', 'BITS.reg');
LangID:= RegKeyStrParamRead('HKLM', 'SYSTEM\CurrentControlSet\Control\Nls\Language', 'InstallLanguage');
if LangID = '0419' then
begin
DescriptionTextWuauServ := 'Включает загрузку и установку обновлений Windows. Если служба отключена, то на этом компьютере нельзя будет использовать возможности автоматического обновления или веб-узел Центра обновления Windows.';
DispayNameTextWuauServ := 'Автоматическое обновление';
DescriptionTextBITS := 'Обеспечивает передачу данных между клиентами и серверами в фоновом режиме. Если служба BITS отключена, такие возможности, как Windows Update, не могут правильно работать.';
DispayNameTextBITS := 'Фоновая интеллектуальная служба передачи (BITS)';
AddToLog('Операционная система - русская');
FinishMsg := '–––– Восстановление завершено ––––';
RestoreMsg := 'Восстановлено разделов\параметров: ';
FixMsg := 'Исправлено параметров: ';
CheckMsg := 'Проверено разделов\параметров: ';
RegSectMsg := 'Раздел реестра HKLM\';
ParamMsg := 'Параметр ';
ParamValueMsg := 'Значение параметра ';
InRegSectMsg := ' в разделе реестра HKLM\';
CorrectMsg := ' исправлено на оригинальное.';
RestMsg := ' восстановлен.';
end
else if LangID = '0409' then
begin
DescriptionTextWuauServ := 'Enables the download and installation of Windows updates. If this service is disabled, this computer will not be able to use the Automatic Updates feature or the Windows Update Web site.';
DispayNameTextWuauServ := 'Automatic Updates';
DescriptionTextBITS := 'Transfers data between clients and servers in the background. If BITS is disabled, features such as Windows Update will not work correctly.';
DispayNameTextBITS := 'Background Intelligent Transfer Service';
AddToLog('Operation system - english');
FinishMsg := '–––– Restoration finished ––––';
RestoreMsg := 'Sections\parameters restored: ';
FixMsg := 'Parameters corrected: ';
CheckMsg := 'Sections\parameters checked: ';
RegSectMsg := 'Registry section HKLM\';
ParamMsg := 'Parameter ';
ParamValueMsg := 'Value of parameter ';
InRegSectMsg := ' in registry section HKLM\';
CorrectMsg := ' corrected on original.';
RestMsg := ' restored.';
end;
AddToLog('');
{ Определение папки X:\Windows\System32\ }
NameFolderSystem32 := RegKeyStrParamRead('HKLM', 'SYSTEM\CurrentControlSet\Control\Windows', 'SystemDirectory');
ImagePathStr := NameFolderSystem32 + '\svchost.exe -k netsvcs';
Delete(NameFolderSystem32, 1, pos('\', NameFolderSystem32) - 1);
FullPathSystem32 := GetEnvironmentVariable('WinDir') + NameFolderSystem32 + '\';
AllRoots := 0;
AllKeys := 0;
RootsRestored := 0;
KeysRestored := 0;
KeysFixed := 0;
CorrectRegistryRoot(DescriptionTextBITS, DispayNameTextBITS, 'BITS');
CorrectRegistryRoot(DescriptionTextWuauServ, DispayNameTextWuauServ, 'wuauserv');
AddToLog('');
AddToLog(FinishMsg);
AddToLog('');
AddToLog(CheckMsg + IntToStr(AllRoots) + ' \ ' + IntToStr(AllKeys));
AddToLog(RestoreMsg + IntToStr(RootsRestored) + ' \ ' + IntToStr(KeysRestored));
AddToLog(FixMsg + IntToStr(KeysFixed));
SaveLog(RegKeyStrParamRead('HKEY_CURRENT_USER', 'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', 'Desktop') + '\Correct_wuauserv&BITS.log');
end.
Заражённые ключи в реестре:
HKEY_CLASSES_ROOT\CLSID\{147A976F-EEE1-4377-8EA7-4716E4CDD239} (Adware.MyWebSearch) -> No action taken.
begin
RegKeyIntParamWrite('HKCU', 'Software\Microsoft\Windows\CurrentVersion\Internet Settings\Zones\3\', '2201', 3);
ExecuteRepair(9);
ExecuteRepair(14);
RebootWindows(true);
end.
KillAll::
Registry::
[-HKEY_CLASSES_ROOT\clsid\{3affd7f7-fd3d-4c9d-8f83-03296a1a8840}]
[-HKEY_CLASSES_ROOT\TBSB03374.TBSB03374.3]
[-HKEY_CLASSES_ROOT\TypeLib\{77AA25E8-6083-4949-A831-9CB11861DC10}]
[-HKEY_CLASSES_ROOT\TBSB03374.TBSB03374]
Reboot::