999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一類常見病毒的分析與防治實(shí)現(xiàn)

2008-07-14 10:05:50余啟港
電腦知識(shí)與技術(shù) 2008年18期

蔡 剛 余啟港

摘要:通過對(duì)計(jì)算機(jī)病毒的特征與現(xiàn)狀的調(diào)查,對(duì)移動(dòng)存儲(chǔ)設(shè)備中常見Autorun.inf類型病毒的運(yùn)行機(jī)制進(jìn)行研究,運(yùn)用C++ Builder編程軟件實(shí)現(xiàn)了對(duì)該類型病毒的監(jiān)控與防治。該軟件方便、高效、針對(duì)性強(qiáng)、占用資源小,并且一定的實(shí)用性與可擴(kuò)展性。

關(guān)鍵詞:病毒防治;移動(dòng)存儲(chǔ)設(shè)備;autorun.inf; C++ Builder

中圖分類號(hào):TP309文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2008)18-2pppp-0c

Analysis and Realization of Preventing a Regular Virus

CAI Gang,YU Qi-gang

(Computer Technology Institute,South-Central University For Nationalities,Wuhan 430074,China)

Abstract:This thesis realizes the supervision and prevention of the virus Autorun.inf via investigating its traits and current conditions,studying its operation mechanism occured in normal portable storage equipment and developing programme with C++ Builder software. The software is convenient,efficient, targeted ,taking up little space ,practical and extendible.

Key words:Virus prevention;Portable storage equipment;Autorun.inf;C++ Builder

1 引言

計(jì)算機(jī)病毒是一個(gè)程序,一段可執(zhí)行碼 ,對(duì)計(jì)算機(jī)的正常使用進(jìn)行破壞,使得電腦無法正常使用甚至整個(gè)操作系統(tǒng)或者電腦硬盤損壞。就像生物病毒一樣,計(jì)算機(jī)病毒有獨(dú)特的復(fù)制能力。計(jì)算機(jī)病毒可以很快地蔓延,又常常難以根除。它們能把自身附著在各種類型的文件上。當(dāng)文件被復(fù)制或從一個(gè)用戶傳送到另一個(gè)用戶時(shí),它們就隨同文件一起蔓延開來。這種程序不是獨(dú)立存在的,它隱蔽在其他可執(zhí)行的程序之中,既有破壞性,又有傳染性和潛伏性。輕則影響機(jī)器運(yùn)行速度,使機(jī)器不能正常運(yùn)行;重則使機(jī)器處于癱瘓,會(huì)給用戶帶來不可估量的損失。通常就把這種具有破壞作用的程序稱為計(jì)算機(jī)病毒。對(duì)于一般的家用PC來說,感染病毒的途徑一半來自網(wǎng)絡(luò),一半來自移動(dòng)存儲(chǔ)設(shè)備,比如光盤,U盤等。而對(duì)于存儲(chǔ)設(shè)備傳播的病毒,大部分都是通過autorun.inf文件觸發(fā)。嚴(yán)格地講autorun.inf文件并不是一個(gè)病毒,它只是各種病毒傳播所采用的一種技術(shù)。病毒通過autorun.inf在存儲(chǔ)設(shè)備啟動(dòng)時(shí)運(yùn)行從而進(jìn)行傳播。本文將對(duì)此文件進(jìn)行分析并編寫軟件以達(dá)到智能防治此類型病毒的目的。

2 autorun.inf類型文件運(yùn)行機(jī)制

autorun.inf文件是從Windows95開始的,最初用在其安裝盤里,實(shí)現(xiàn)自動(dòng)安裝,以后的各版本都保留了該文件并且部分內(nèi)容也可用于其他存儲(chǔ)設(shè)備。其結(jié)構(gòu)有三個(gè)部分:[AutoRun](必選),[AutoRun.Alpha](可選),[DeviceInstall](可選)。在這里我們只討論最常用的[AutoRun]。

[AutoRun]部分里通常包含許多命令,比如:DefaultIcon、Icon、Label、Open、ShellExecute、Shell關(guān)鍵字Command、Shell關(guān)鍵字、Shell等,我們需要注意的是Open與Shell關(guān)鍵字Command,當(dāng)我們雙擊移動(dòng)存儲(chǔ)設(shè)備或右鍵選“關(guān)鍵字”選項(xiàng)進(jìn)入設(shè)備時(shí),系統(tǒng)會(huì)自動(dòng)運(yùn)行Open和Shell關(guān)鍵字Command后面所指向的命令行,自動(dòng)運(yùn)行的命令行,必須是.exe、.com、.bat文件。這樣病毒得以運(yùn)行。由此我們可以看出,只要找到autorun.inf文件并找出前面兩個(gè)命令所指向的文件并且刪除之則達(dá)到清除病毒的目的,軟件實(shí)現(xiàn)就是基于這樣的思想。

3 軟件實(shí)現(xiàn)

3.1 功能函數(shù)

void __fastcall OnMessage(TMessage &msg)

/*處理移動(dòng)存儲(chǔ)設(shè)備插入消息*/

AnsiString __fastcall GetDriverName()

/*得到移動(dòng)存儲(chǔ)設(shè)備的盤符,并返回一個(gè)AnsiString值*/

TStringList* __fastcallEnumerateFiles(AnsiString DriverName)

/*枚舉移動(dòng)存儲(chǔ)設(shè)備中的文件并存入TStringList型變量返回*/

void __fastcall FindVirus(AnsiString DriverName)

/*將設(shè)備中文件和autorun.inf中內(nèi)容匹配,找出病毒文件并且列出在VirusFileListBox中*/

void __fastcall TForm1::KillVirus()

/*清除VirusFileListBox中選中的文件*/

3.2 代碼實(shí)現(xiàn)

3.2.1 監(jiān)聽移動(dòng)存儲(chǔ)設(shè)備

如果移動(dòng)存儲(chǔ)設(shè)備變更,系統(tǒng)會(huì)觸發(fā)WM_DEVICECHANCE消息,當(dāng)存儲(chǔ)設(shè)備安裝完畢時(shí)此消息的WParam值為DBT_DEVICEARRIVAL(須包含頭文件dbt.h),當(dāng)存儲(chǔ)設(shè)備卸載時(shí)此消息的WParam值為DBT_DEVICEREMOVECOMPLETE。因此,采用消息映射以及對(duì)應(yīng)的消息函數(shù)OnMessage實(shí)現(xiàn)此功能。

在頭文件中添加如下代碼:

BEGIN_MESSAGE_MAP

MESSAGE_HANDLER(WM_DEVICECHANGE,TMessage,OnMessage)

END_MESSAGE_MAP(TForm)

消息處理函數(shù)代碼如下:

void __fastcall TKillVirusForm::OnMessage(TMessage &msg){

AnsiString DriverName;

if (msg.WParam==DBT_DEVICEARRIVAL)

{ /*如果設(shè)備安裝完成則進(jìn)行相關(guān)事件*/

DriverName=GetDriverName();//獲得盤符名

if (FileExists(DriverName+"autorun.inf"))

{/*如果存在autorun.inf文件則進(jìn)行清除工作*/

FindVirus(DriverName);

}}

if (msg.WParam==DBT_DEVICEREMOVECOMPLETE)

OnDeviceRemoveComplete();//如果設(shè)備移除進(jìn)行相關(guān)事件

}

3.2.2 獲得移動(dòng)存符設(shè)備盤符名

我們通過GetLogicalDrives()命令可以得到當(dāng)前PC上所有邏輯驅(qū)動(dòng)器的信息,它返回一個(gè)DWORD值。具體算法為:將各個(gè)盤符字母(大寫)的ASCII碼值減去65再存入數(shù)組X[i],那么返回的值就是∑2X[i]。因此我們可以根據(jù)移動(dòng)存儲(chǔ)設(shè)備安裝前后的DWORD值之差得到此設(shè)備的盤符:

主站蜘蛛池模板: 91综合色区亚洲熟妇p| 99久久精品国产麻豆婷婷| 国产视频一二三区| 日韩A∨精品日韩精品无码| 伊人激情综合网| 亚洲人在线| 538精品在线观看| 99精品这里只有精品高清视频| 中文字幕永久在线观看| 日韩无码视频专区| 亚洲av无码专区久久蜜芽| 日韩精品亚洲精品第一页| 久久黄色影院| 亚洲国内精品自在自线官| 日本免费新一区视频| 免费黄色国产视频| 中国毛片网| 91色综合综合热五月激情| 亚洲色图综合在线| 亚洲欧美不卡视频| 精品无码一区二区三区电影| 伊人色婷婷| 久久女人网| 亚洲水蜜桃久久综合网站| 亚洲视频二| 国产免费自拍视频| 亚洲国产日韩在线观看| 欧美一级一级做性视频| 国产一区二区影院| 精品免费在线视频| 精品视频第一页| 精品国产aⅴ一区二区三区| 天天操天天噜| 成人亚洲视频| 狠狠五月天中文字幕| 精品无码人妻一区二区| 色综合久久无码网| a级毛片视频免费观看| 青青草欧美| 亚洲中文字幕日产无码2021 | 国产区精品高清在线观看| 777午夜精品电影免费看| 一级毛片免费播放视频| 伊人久久福利中文字幕| 性欧美在线| 91九色最新地址| 九九热精品视频在线| 国产精品尹人在线观看| 日韩在线第三页| 台湾AV国片精品女同性| 亚洲二三区| 99精品国产自在现线观看| 色一情一乱一伦一区二区三区小说| 老司机久久精品视频| 日韩二区三区| 国产精品深爱在线| 色综合中文综合网| 九色在线观看视频| 国产福利免费在线观看 | 人人爱天天做夜夜爽| 国产爽爽视频| 天天爽免费视频| 天天婬欲婬香婬色婬视频播放| 亚洲热线99精品视频| 一级毛片a女人刺激视频免费| 亚洲香蕉久久| 色色中文字幕| 五月天天天色| 91精品啪在线观看国产60岁 | 区国产精品搜索视频| 国产成人成人一区二区| 91九色国产在线| 97超碰精品成人国产| 国内99精品激情视频精品| 欧美亚洲一区二区三区导航| 成年免费在线观看| 亚洲精品高清视频| 女人18一级毛片免费观看| 91视频区| 色婷婷在线播放| 亚洲无限乱码| 在线免费观看a视频|