snhao
银牌会员
     
积分 1791
发帖 1782
注册 2007-6-12
|
#2
最近翠微居小说又出新变种,他会在%windows%目录下释放扩展名为txt的驱动并加载,使得许多程序无法运行。此病毒还会在%windows%目录下生成图标为WinRAR图标的程序,此程序会感染其它程序,下载IE图标、文件名随机的广告弹窗程序。
中此病毒的用户可以如下处理:
查找%windows%目录下所有长度为3044的txt文件,双击即可用记事本打开,会看到“MZ……This program cannot be run in DOS mode.……”。可在“MZ”前随意写入文本,保存文件。对所有此类文件都这样处理。这样就破坏了它的驱动。完成后立即重启。
重启后运行AVZ,在AVZ中执行附件中的脚本。脚本执行成功后会自动重启。由于病毒运行时可能还在生成新的文件,请多查杀几次。
对于感染其它程序的病毒文件和被感染的文件脚本进行了重命名,在后缀名后加了下划线“_”,以便以后卡巴修复。windows目录下长度为24576字节、文件名随机的文件可能是纯病毒文件,您可以酌情删除。
脚本只对C盘和D盘进行了扫描,如需对其它盘扫描请在脚本下方
ScanDir('C:', true);
ScanDir('D:', true);
后添加ScanDir('X:', true); 其中X表示想要扫描的盘符。
最后请修复安全模式,可以使用之前发过的AVZ脚本。
脚本内容如下:
// 添加日志
Procedure AddAlarm(AFileName, AMsg : string);
begin
AddtoLog('>>>>> '+AFileName+' 被以下病毒感染 '+AMsg);
end;
// 扫描文件
Procedure ScanFile(AFileName : string);
begin
SetStatusBarText(AFileName);
LoadFileToBuffer(AFileName);
if SearchSign('81 7D 08 8C 00 00 00 59 75 16 6A 50 FF 15 6C 70 40 00 57 57 56 FF 75 0C 57 57 FF 15 B0 73 40 00', 21064, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序');
DeleteFile(AFileName);
end;
if SearchSign('81 7D 08 8C 00 00 00 59 75 16 6A 50 FF 15 6C 70 40 00 57 57 56 FF 75 0C 57 57 FF 15 B0 73 40 00', 21072, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序');
DeleteFile(AFileName);
end;
if SearchSign('81 7D 08 8C 00 00 00 59 75 16 6A 50 FF 15 6C 70 40 00 57 57 56 FF 75 0C 57 57 FF 15 B0 73 40 00', 21077, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序');
DeleteFile(AFileName);
end;
if SearchSign('81 7D 08 8C 00 00 00 59 75 16 6A 50 FF 15 6C 70 40 00 57 57 56 FF 75 0C 57 57 FF 15 B0 73 40 00', 21080, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序');
DeleteFile(AFileName);
end;
if SearchSign('85 F6 59 59 74 1D 56 68 FF 7F 00 00 6A 01 68 E8 41 40 00 FF 15 74 32 40 00 56 FF 15 6C 32 40 00', 9432, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序');
DeleteFile(AFileName);
end;
if SearchSign('85 F6 59 59 74 1D 56 68 FF 7F 00 00 6A 01 68 E8 41 40 00 FF 15 74 32 40 00 56 FF 15 6C 32 40 00', 7051, 33) >= 0 then
begin
AddAlarm(AFileName, '弹窗广告程序 - 进行重命名处理。');
CopyFile(AFileName, AFileName + '_');
DeleteFile(AFileName);
end;
FreeBuffer;
end;
// 扫描目录 (递归扫描子目录)
Procedure ScanDir(ADirName : string; AScanSubDir : boolean);
var
FS : TFileSearch;
begin
ADirName := NormalDir(ADirName);
FS := TFileSearch.Create(nil);
FS.FindFirst(ADirName + '*.*');
while FS.Found do begin
if FS.IsDir then begin
if AScanSubDir and (FS.FileName <> '.') and (FS.FileName <> '..') then
ScanDir(ADirName + FS.FileName, AScanSubDir)
end else
ScanFile(ADirName + FS.FileName);
FS.FindNext;
end;
FS.Free;
end;
begin
ScanDir('C:', true);
ScanDir('D:', true);
BC_ImportDeletedList;
ExecuteSysClean;
BC_Activate;
RebootWindows(true);
end.
|
※ ※ ※ 本文纯属【snhao】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
|
 |
|