%fystemroot% или "Где мой Windows Update?"
Какой-то из популярных нынче вирусов повадился курочить системные службы, отвечающие за обновление Windows: "Автоматическое обновление" (wuauserv) и "Фоновая интеллектуальная служба передачи" (BITS).
Для обеих служб строка запуска в реестре выглядит одинаково:
[B]%SystemRoot%\system32\svchost.exe -k netsvcs[/B]
Зловред меняет первую букву S на f и получается
[B]%[COLOR=red]fystemRoot[/COLOR]%\system32\svchost.exe -k netsvcs[/B]
что делает запуск службы невозможным.
Исправить это вручную можно так:
1. Нажмите [I]Пуск - Выполнить[/I], введите [B][I]regedit[/I][/B] и нажмите ОК.
2. Раскрывая "плюсиками" структуру в левой части окна, найдите подраздел
[B]HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\BITS[/B]
3. Щелкните его правой кнопкой мыши и выберите [I]Разрешения... [/I]Убедитесь, что группе администраторов разрешен полный доступ. Если не разрешен - включите его.
4. Выделив данный подраздел, найдите в правой части окна параметр [I]ImagePath[/I], который содержит приведенную выше строку запуска, и исправьте его значение.
5. То же самое проделайте с подразделом
[B]HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet \Services\wuauserv[/B]
6. Вышеописанные действия следует также произвести во всех ветках
[B]HKEY_LOCAL_MACHINE\SYSTEM\ControlSetnnn\...[/B]
(nnn может принимать значения 001, 002,...; обычно их две или три).
[B][COLOR="Red"]Внимание![/COLOR][/B] Работая с [I]regedit[/I], будьте предельно внимательны и аккуратны. Внесенные изменения сохраняются сразу, а возможность автоматического отката отсутствует!
С помощью AVZ, начиная с версии 4.32, проблема решается гораздо проще.
Достаточно выполнить такой скрипт:
[code]var j:integer; NumStr:string;
begin
for j:=0 to 999 do
begin
if j=0 then
NumStr:='CurrentControlSet' else
if j<10 then
NumStr:='ControlSet00'+IntToStr(j) else
if j<100 then
NumStr:='ControlSet0'+IntToStr(j) else
NumStr:='ControlSet'+IntToStr(j);
if RegKeyExistsEx('HKLM', 'SYSTEM\'+NumStr+'\Services\BITS') then
begin
RegKeyResetSecurity('HKLM', 'SYSTEM\'+NumStr+'\Services\BITS');
RegKeyStrParamWrite('HKLM', 'SYSTEM\'+NumStr+'\Services\BITS', 'ImagePath', '%SystemRoot%\System32\svchost.exe -k netsvcs');
AddToLog('Значение параметра ImagePath в разделе реестра HKLM\SYSTEM\'+NumStr+'\Services\BITS исправлено на оригинальное.');
end;
if RegKeyExistsEx('HKLM', 'SYSTEM\'+NumStr+'\Services\wuauserv') then
begin
RegKeyResetSecurity('HKLM', 'SYSTEM\'+NumStr+'\Services\wuauserv');
RegKeyStrParamWrite('HKLM', 'SYSTEM\'+NumStr+'\Services\wuauserv', 'ImagePath', '%SystemRoot%\System32\svchost.exe -k netsvcs');
AddToLog('Значение параметра ImagePath в разделе реестра HKLM\SYSTEM\'+NumStr+'\Services\wuauserv исправлено на оригинальное.');
end;
end;
SaveLog(GetAVZDirectory + 'fystemRoot.log');
end.[/code]
Протокол выполнения скрипта можно увидеть в файле [I]fystemRoot.log[/I],
который появится в папке с AVZ.