Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];
ВнизDrWeb с ума сходит... Найти похожие ветки
← →
Nick Denry © (2004-10-10 13:38) [0]С DrWeb"ом в последнее время творятся такие чудеса...
Написал плагин к винАмпу, который добавляет текстовую строку в файл np.txt (для Голдеда, почтовый редактор фидомыла, для тех кто не знает), компилирую, и свежеобновленный спайдер гуард выдет:
BackDoor.Singu
Посмотрел на Symantec, там счледующее:
Backdoor.Singu allows unauthorized access to the infected computer. It also attempts to update itself over the Internet. It is written in the Delphi programming language and packed with UPX. By default it opens port 2002.
Also Known As: Backdoor.Singu.g [AVP]
Type: Trojan Horse
Infection Length: 218,274 bytes
Systems Affected: Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Me
Systems Not Affected: Windows 3.x, Macintosh, OS/2, UNIX, Linux
Та чего, DrWeb, теперь, все что равно 20-ти килобайтам и написано на дельфе будет приравнивать к этому вирусу?
Вот исходник:
library gen_wmpst;
uses
Windows,
Messages;
const
{integers}
GPPHDR_VER = $10;
Timer1_ID = 2004;
{strings}
szAppName : PChar = "TWinAmpSTitle";
szCaption = "WinAmp Title for JD";
szWinAmpClass = "Winamp v1.x";
szNoWinamp : string = "WinAmp âûêëþ÷åí...";
Hint: array[0..63] of Char = "WinAmpsTitle_ND"; // Hint
PathMaxSize = 255;
procedure _config; cdecl; forward;
procedure _quit; cdecl; forward;
function _init:integer; cdecl; forward;
type
winampGeneralPurposePlugin=packed record
version:integer;
description:PChar;
Init:function:integer;cdecl;
Config:procedure;cdecl;
Quit:procedure;cdecl;
hwndParent:HWND;
hDllInstance:THandle;
end;
PwinampGeneralPurposePlugin=^winampGeneralPurposePlugin;
winampGeneralPurposePluginGetter=function:PwinampGeneralPurposePlugin;
var
//Èíèöèàëèçàöèÿ ïåðåìåííîé ñâÿçàííîé ñ ïëóãèíîì.
plugin:winampGeneralPurposePlugin =(
version:GPPHDR_VER;
description:"";
Init:_init;
Config:_config;
Quit:_quit;
hWndParent:0;
hDLLInstance:0);
MainWnd : HWND; //Îïèñàòåëü ãëàâíîãî îêíà
Mesg : TMsg;
wc : TWndClassEx; //Ñòðóêòóðà TWndClassEx
WinAmpHandle : HWND; //Äåñêðèïòîð ÂèíÀìïà
TargetDir : string;
procedure WAmpWriteTitle;
var
s,s_wr : array [0..MAX_PATH] of Char;
NpFile : HFILE;
bytes_write,bytes_writen : DWORD;
i : integer;
str : string;
begin
ZeroMemory(@s,MAX_PATH);
ZeroMemory(@s_wr,MAX_PATH);
WinAmpHandle := FindWindow(szWinAmpClass, nil);
bytes_write := GetWindowText(WinAmpHandle,@s,MAX_PATH);
str := "np: "+s;
bytes_write := Length(str);
CharToOem(PChar(str), s_wr);
NpFile := CreateFile(PChar(targetdir),GENERIC_WRITE,0,nil,CREATE_ALWAYS,0,0);
WriTeFile(NpFile,s_wr,bytes_write,bytes_writen,0);
CloseHandle(NpFile);
end;
procedure WriteWmpNoTitle;
var
s,s_wr : array [0..MAX_PATH] of Char;
NpFile : HFILE;
bytes_write,bytes_writen : DWORD;
i : integer;
begin
ZeroMemory(@s,MAX_PATH);
ZeroMemory(@s_wr,MAX_PATH);
s := "np: WinAmp âûêëþ÷åí...";
CharToOem(s, s_wr);
bytes_write := 22;
NpFile := CreateFile(PChar(targetdir),GENERIC_WRITE,0,nil,CREATE_ALWAYS,0,0);
WriTeFile(NpFile,s_wr,bytes_write,bytes_writen,0);
CloseHandle(NpFile);
end;
function WindowProc(wnd:HWND; Msg : Integer; Wparam:Wparam; Lparam:Lparam):Lresult;
stdcall;
var
pt : TPoint;
DRWITSTR : PDrawItemStruct;
Begin
{Äàëåå ïðîèñõîäèò öèêë îáðàáîòêè ñîîáùåíèé}
case msg of
wm_destroy : //Ñîîáùåíèå ïîñûëàåìîå ïðè óíè÷òîæåíèè îêíà
begin
KillTimer(wnd,Timer1_ID);
postquitmessage(0); exit;
Result:=0;
End;
WM_TIMER :
begin
if wParam = Timer1_ID then WAmpWriteTitle;
end;
else Result:=DefWindowProc(wnd,msg,wparam,lparam);
end;
End;
Function _init: integer;
var
curDir : array [0..MAX_PATH] of Char;
f : TextFile;
i : integer;
scDir : string;
begin
{ GetModuleFileName(0,@curDir,MAX_PATH);
for i := Length(curDir) downto 0 do
begin
if curDir[i] = "\" then
begin
curDir[i+1] := chr(0);
break;
end;
end;
MessageBox(0,curDir,Caption,MB_OK);}
Assign(f,"C:\Program Files\WinAmp\Plugins\gen_wmpst.ini");
Reset(f);
read(f,targetdir);
CloseFile(f);
{ MessageBox(0,PChar(targetdir),Caption,MB_OK);}
wc.cbSize:=sizeof(wc);
wc.style:=cs_hredraw or cs_vredraw;
wc.lpfnWndProc:=@WindowProc;
wc.cbClsExtra:=0;
wc.cbWndExtra:=0;
wc.hInstance:=HInstance;
wc.hIcon:=LoadIcon(0,idi_application);
wc.hCursor:=LoadCursor(0,idc_arrow);
wc.hbrBackground:=COLOR_BTNFACE+1;
wc.lpszMenuName:=nil;
wc.lpszClassName:=szAppName;
RegisterClassEx(wc);
MainWnd:=CreateWindowEx (0,szAppName,szCaption,WS_POPUP,100,100,100,100,
0,0,Hinstance,nil);
ShowWindow(MainWnd,SW_HIDE);
SetTimer(MainWnd,Timer1_ID,30000,nil);
result:=0;
end;
Procedure _config;
begin
MessageBox(0,"Ïëóãèí, êîòîðûé íå áûë ñîçäàí äëÿ JD çà 15 ìèí.","HHC Team",MB_OK or MB_ICONINFORMATION);
end;
Procedure _quit;
begin
WriteWmpNoTitle;
DestroyWindow(MainWnd);
//MessageBox(0,"zyablik passive", "zyablik API",MB_OK);
end;
Function winampGetGeneralPurposePlugin : PwinampGeneralPurposePlugin; export; cdecl;
begin
plugin.description:=szCaption;
result := @plugin;
end;
exports
winampGetGeneralPurposePlugin;
{$R *.res}
begin
end.
← →
Nick Denry © (2004-10-10 13:40) [1]Кроме того, кэшированная страница рамблера, оказывается exploit.based. Я ее даже потом руками проковырял, там кроме "Сделать стартовой" вообще вирусоопасного кода нет.Правдп есть ActiveX объекты....
← →
Nick Denry © (2004-10-10 13:41) [2]Я вот думаю, че с плагином то-теперь делать? Может Данилову отослать???
← →
Nick Denry © (2004-10-10 16:41) [3]Ну че, никто ни че посоветует?
← →
GuAV © (2004-10-10 17:28) [4]не используй UPX.
← →
Nick Denry © (2004-10-10 17:35) [5]GuAV © (10.10.04 17:28) [4]
А я и не использую.... В том - то и оно....
Я даже собственно не пойму в чем дело... Код - перед вами - и если DrWeb последний сразу после компиляции Spider Guard выдает... Тут близко ничего вирусоносного нет...
← →
ПЛОВ © (2004-10-10 18:57) [6]Может проблема не в программе а в самом докторе? Уж не в него ли влез вирь?
← →
ПЛОВ © (2004-10-10 19:00) [7]Или в Дельфу... Прогу написал, она ее откомпилила и для полной "укомплектованности" прикрутила вирус :)
← →
Nick Denry © (2004-10-10 19:15) [8]Со всем остальным все впрорядке. Проверял с чистой системы. Ни одна другая прога не заражена.... включая те которые компилит дельфя...
Я думаю у них просто CRC совпал случайным образом...
← →
Nous Mellon © (2004-10-10 19:17) [9]ИМХО самое логичное решение написать в команду Данилова. Думается им это тоже будет интересно не менее твоего. Тем более это их прямая обязанность. И нам потом расскажешь.
← →
Nick Denry © (2004-10-10 19:42) [10]Nous Mellon © (10.10.04 19:17) [9]
Был бы у меня дреб купленый, может я бы так сразу и поступил...
Проверьте, у кого DrWeb новый откомпилить - исходнк перед вами, я думаю сомнений не будет, что внем что-то вредоносное, - у вас то-же будет?
← →
Jey_D © (2004-10-10 21:20) [11]позвони, я тебе результаты скажу!
← →
Nick Denry © (2004-10-10 22:41) [12]ОК, сегодня позвоню...
← →
Cobalt © (2004-10-10 23:13) [13]2 Nick Denry © (10.10.04 19:42) [10]
>>Nous Mellon © (10.10.04 19:17) [9]
>Был бы у меня дреб купленый, может я бы так сразу и поступил...
Это не важно - купленный, или нет.
Для чистоты совести можешь поставить Evaluation-версию и репортить им баг.
← →
Nick Denry © (2004-10-10 23:18) [14]2Cobalt © (10.10.04 23:13) [13]
Тоже уже об этом подумал...
Ладно, в понедельник отошлю, обещаю доложить результаты... :)
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.034 c