Лепшая экалагічная школа
cherven.minsk-region.edu.by- сайт Червеньскага РАА
Каляндар
Апошнія навіны
Dreamweawer Flash Photoshop Вирусы Школьный софт Разное Книжный мир Старонка аўтара

 

Вірус Win32.Sality. Метады па нейтралізацыі

virusНешта ў апошні час гэты вірус (пад такім імем яго вызначае NOD32) стаў папулярным у нашых палесцінах. У школьнікаў на флэшках у кожнага трэцяга вызначаецца нейкая мадыфікацыя гэтай дрэні. Калі звернеце ўвагу на назву, то зразумееце, што вірус робіць карыстальніка на сваім ПК банальным госцем. Ну, дарэчы, некаторым больш і не трэба, у выніку музычка гуляе, фільмы круцяцца, з "Аднакласнікамі" парадак - што яшчэ трэба? Трафік, кажаце? А мама-тата навошта - аплацяць.
На школьных ПК, як бы тамака не казалі аб іх занядбанасці, такі расклад непрымальны. Не жадалася, каб, напрыклад, на адчыненым уроку, паўсталі багги з pascal… Зрэшты, годзе лірыкі. Як з ім "дужацца"…
Упершыню я з ім сустрэўся дзесьці ў пачатку снежня. Праблема складалася ў наступным: запуск FineReader 8.0 перарываўся на 2 секундзе і Антывірус Касперскага (з базамі ад верасня) паведамляў аб заражаным файле і кампутар завісаў. Да ўсяго іншага ён перашуфляваў рэестр і знёс бяспечны рэжым, зачыніў доступ да дыспетчара задач, сістэмным утылітам.
Бо пры сабе не было нічога, акрамя састарэлага Dr.Web CureIt (хто не ў курсе, партабл-версія гэтага антывіруса, не патрабавальная ўсталёўкі і не канфліктуючая з ужо ўсталяваным антывірусным ПА) адразу я нічога зрабіць не змог. Больш таго, паўторнае падлучэнне ўжо заражанай флешки забіла антывірус. Праблема пагаршалася тым, што пераўсталёўваць сістэму было не пажадана, пажадана было яе пралячыць. Узяўшы час на "сабрацца з думкамі", на наступны дзень я зрабіў наступнае.
Загрузіўся ў сістэму з Windows PE (такая цудоўная live-версія Windows, якой не патрэбна ўсталёўка і якая грузіцца прама ў аператыўную памяць, ёсць на дысках Minsk System 2008, Уся Беларусь, у інтэрнэце, нарэшце). У ёй выдаліў усё змесціва з Кошыка і System Volume Information (у іх захоўваюцца копіі файлаў на выпадак узнаўлення сістэмы). Крок рызыкоўны, але ўсё жа, як апынулася ўсё абыйшлося. Запусціў звычайную загрузку заражанай сістэмы, ўсталяваў NOD32 3.0, профіксіў яго (каб не патрабаваў пароля пры абнаўленні) і "прагнаў" сістэму (толькі дыск С, недахоп часу, чорт пабяры) на наяўнасць вірусаў. Вірус апынуўся толі Win32.Sality.а ці то Win32.Sality.nao. Перерузился, абнавіў базы зноў прагнаў. Пераўсталяваў пару прыкладанняў, прыбітых NOD. Усё запрацавала. Адзінае, параіў, каб выдалілі ўсе гульні з іншых дыскаў.
На наступны дзень прачытаў на форумах, што бяспечны рэжым аднаўляецца з дапамогай наступнага скрыпту (з дапамогай утыліты avz з абноўленымі базамі (Антывірус Зайцава, каманда файл-выканаць скрыпт):

begin
SearchRootkit(true, true);
SetAVZGuardStatus(True);
QuarantineFile('C:\WINDOWS\system32\18998b.exe','');
QuarantineFile('C:\PROGRA~1\INTERN~1\_index23.exe','');
QuarantineFile('C:\PROGRA~1\INTERN~1\_index02.exe','');
QuarantineFile('C:\WINDOWS\system32\DRIVERS\smtpdrv.sys','');
QuarantineFile('C:\WINDOWS\system32\DRIVERS\tcpip.sys','');
QuarantineFile('C:\WINDOWS\system32\basemgldn32.dll','');
QuarantineFile('C:\DOCUME~1\zs\LOCALS~1\Temp\Redist64\svchost.exe','');
QuarantineFile('C:\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка\wjlm.exe','');
DeleteFile('C:\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка\wjlm.exe');
DeleteFile('C:\DOCUME~1\zs\LOCALS~1\Temp\Redist64\svchost.exe');
DeleteFile('C:\WINDOWS\system32\DRIVERS\smtpdrv.sys');
DeleteFile('C:\PROGRA~1\INTERN~1\_index02.exe');
DeleteFile('C:\PROGRA~1\INTERN~1\_index23.exe');
DeleteFile('C:\WINDOWS\system32\18998b.exe');
BC_ImportALL;
ExecuteSysClean;
BC_Activate;
RebootWindows(true);
end.

Перагружаем кампутар

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.

НАступны скрыпт:

begin
SearchRootkit(true, true);
SetAVZGuardStatus(True);
DeleteFile('C:\Documents and Settings\zs\Local Settings\Temp\Winit64\svchost.exe');
DeleteFile('C:\WINDOWS\system32\153523.exe');
DeleteFile('C:\WINDOWS\system32\1536c9.exe');
DeleteFile('C:\WINDOWS\system32\187421.exe');
DeleteFile('C:\WINDOWS\system32\433293.exe');
DeleteFile('C:\WINDOWS\system32\5a2a17.exe');
DeleteFile('C:\WINDOWS\system32\6f838b.exe');
DeleteFile('C:\WINDOWS\system32\847e75.exe');
DeleteFile('C:\WINDOWS\system32\997249.exe');
DeleteFile('C:\WINDOWS\system32\ae832b.exe');
DeleteFile('C:\WINDOWS\system32\c37e05.exe');
DeleteFile('C:\WINDOWS\system32\d87832.exe');
BC_ImportDeletedList;
ExecuteSysClean;
BC_Activate;
RebootWindows(true);
end.

Зараз адключым службы:


begin
RegKeyIntParamWrite('HKEY_LOCAL_MACHINE', 'System\CurrentControlSet\Services\LanmanServer\Parameters','AutoShareWks', 0);
RegKeyIntParamWrite('HKEY_LOCAL_MACHINE', 'System\CurrentControlSet\Services\CDROM','AutoRun', 0);
SetServiceStart('RDSessMgr', 4);
SetServiceStart('mnmsrvc', 4);
SetServiceStart('Schedule', 4);
SetServiceStart('SSDPSRV', 4);
SetServiceStart('TermService', 4);
SetServiceStart('RemoteRegistry', 4);
RebootWindows(true);
end.

Усё, бяспечны рэжым павінен працаваць. Усё гэта падрабязней http://team-madalf.com/lofiversion/index.php?t56536.html.

Зрэшты, за наступствы не ручаюся.


11 студзеня 2009


Час


Прагноз надвор'я

Інфармацыя з сайта pogoda.by


Пошук
Google


У інтэрнеце
На гэтым сайце
Сайт создан в системе uCoz

Сайт создан в системе uCoz