《惡意代碼基礎(chǔ)與防范(微課版)》全套教學(xué)課件_第1頁
《惡意代碼基礎(chǔ)與防范(微課版)》全套教學(xué)課件_第2頁
《惡意代碼基礎(chǔ)與防范(微課版)》全套教學(xué)課件_第3頁
《惡意代碼基礎(chǔ)與防范(微課版)》全套教學(xué)課件_第4頁
《惡意代碼基礎(chǔ)與防范(微課版)》全套教學(xué)課件_第5頁
已閱讀5頁,還剩634頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第1章

惡意代碼概述第2章

漏洞第3章

傳統(tǒng)計(jì)算機(jī)病毒-補(bǔ)充知識第4章-linux惡意代碼第5章

木馬第6章

移動智能終端惡意代碼第7章

蠕蟲第8章

勒索型惡意代碼第9章-其他惡意代碼第10章

惡意代碼防范技術(shù)第11章

殺毒軟件及解決方案第12章

惡意代碼防治策略惡意代碼基礎(chǔ)與防范全套可編輯PPT課件

第1章惡意代碼概述全套可編輯PPT課件

本章學(xué)習(xí)目標(biāo)明確惡意代碼的基本概念了解惡意代碼的發(fā)展歷史熟悉惡意代碼的分類熟悉惡意代碼的命名規(guī)則了解惡意代碼的未來發(fā)展趨勢一、為什么提出惡意代碼的概念?計(jì)算機(jī)病毒的官方定義不能涵蓋新型惡意代碼《中華人民共和國計(jì)算機(jī)信息系統(tǒng)安全保護(hù)條例》《計(jì)算機(jī)病毒防治管理辦法》傳統(tǒng)計(jì)算機(jī)病毒定義:是指編制或者在計(jì)算機(jī)程序中插入的破壞計(jì)算機(jī)功能或者毀壞數(shù)據(jù),影響計(jì)算機(jī)使用,并能自我復(fù)制的一組計(jì)算機(jī)指令或者程序代碼。傳統(tǒng)計(jì)算機(jī)病毒定義的不足之處傳統(tǒng)定義強(qiáng)調(diào):把破壞代碼插入正常程序中,而忽略把代碼直接復(fù)制到硬盤上的獨(dú)立惡意程序(例如,木馬),忽略惡意程序主動侵入設(shè)備(例如,蠕蟲)等。傳統(tǒng)定義沒有排除:具有惡意行為,但不是有意為之的行為,例如,不小心形成的惡意行為。這些不足帶來的法律問題使用這個(gè)定義可能逃脫應(yīng)有的懲罰二、惡意代碼定義惡意代碼:在未被授權(quán)的情況下,以破壞軟硬件設(shè)備、竊取用戶信息、擾亂用戶心理、干擾用戶正常使用為目的而編制的軟件或代碼片段。這個(gè)定義涵蓋的范圍非常廣泛,它包含了所有敵意、插入、干擾、討厭的程序和源代碼。一個(gè)軟件被看作是惡意代碼主要是依據(jù)創(chuàng)作者的意圖,而不是惡意代碼本身的特征。惡意代碼的特征1.目的性目的性是惡意代碼的基本特征,是判別一個(gè)程序或代碼片段是否為惡意代碼的最重要的特征,也是法律上判斷惡意代碼的標(biāo)準(zhǔn)。2.傳播性傳播性是惡意代碼體現(xiàn)其生命力的重要手段。3.破壞性破壞性是惡意代碼的表現(xiàn)手段。惡意代碼產(chǎn)生的動機(jī)(原因):計(jì)算機(jī)系統(tǒng)的脆弱性(IBM病毒防護(hù)計(jì)劃)作為一種文化(hacker)病毒編制技術(shù)學(xué)習(xí)惡作劇\報(bào)復(fù)心理用于版權(quán)保護(hù)(xx公司)用于特殊目的(軍事、某些計(jì)算機(jī)防病毒公司)賺錢、賺錢、賺錢……萌芽Unix病毒DOS時(shí)代的病毒網(wǎng)絡(luò)時(shí)代的惡意代碼惡意代碼新時(shí)代三、惡意代碼簡史在第一部商用電腦出現(xiàn)之前,馮·諾伊曼在他的論文《復(fù)雜自動裝置的理論及組識的進(jìn)行》里,就已經(jīng)勾勒出了病毒程序的藍(lán)圖。70年代美國作家雷恩出版的《P1的青春-TheAdolescenceofP1》一書中作者構(gòu)思出了計(jì)算機(jī)病毒的概念。美國電話電報(bào)公司(AT&T)的貝爾實(shí)驗(yàn)室中,三個(gè)年輕程序員道格拉斯.麥耀萊、維特.維索斯基和羅伯.莫里斯在工作之余想出一種電子游戲叫做“磁芯大戰(zhàn)(corewar)”。1、萌芽階段博士論文的主題是計(jì)算機(jī)病毒1983年11月3日,F(xiàn)redCohen博士研制出第一個(gè)計(jì)算機(jī)病毒(Unix)。2、第一個(gè)真病毒3、Dos時(shí)代的病毒1986年初,巴基斯坦的拉合爾,巴錫特和阿姆杰德兩兄弟編寫了

Pakistan病毒,即Brain,其目的是為了防范盜版軟件。Dos–PC–引導(dǎo)區(qū)1987年世界各地的計(jì)算機(jī)用戶幾乎同時(shí)發(fā)現(xiàn)了形形色色的計(jì)算機(jī)病毒,如大麻、IBM圣誕樹、黑色星期五等等。視窗病毒1988年3月2日,一種蘋果機(jī)的病毒發(fā)作,這天受感染的蘋果機(jī)停止工作,只顯示“向所有蘋果電腦的使用者宣布和平的信息”。以慶祝蘋果機(jī)生日。肇事者-RobertT.Morris,美國康奈爾大學(xué)學(xué)生,其父是美國國家安全局安全專家。機(jī)理-利用sendmail,finger等服務(wù)的漏洞,消耗CPU資源,并導(dǎo)致拒絕服務(wù)。影響-Internet上大約6000臺計(jì)算機(jī)感染,占當(dāng)時(shí)Internet聯(lián)網(wǎng)主機(jī)總數(shù)的10%,造成9600萬美元的損失。CERT/CC的誕生-DARPA成立CERT(ComputerEmergencyResponseTeam),以應(yīng)付類似事件。莫里斯蠕蟲(MorrisWorm)1988年1989年,全世界計(jì)算機(jī)病毒攻擊十分猖獗,其中“米開朗基羅”病毒給許多計(jì)算機(jī)用戶(包括中國)造成了極大損失。全球流行DOS病毒4、用于軍事的惡意代碼在沙漠風(fēng)暴行動的前幾周,一塊被植入病毒(AF/91(1991))的計(jì)算機(jī)芯片被安裝進(jìn)了伊拉克空軍防衛(wèi)系統(tǒng)中的一臺點(diǎn)陣打印機(jī)中。該打印機(jī)在法國組裝,取道約旦、阿曼運(yùn)到了伊拉克。病毒癱瘓了伊拉克空軍防衛(wèi)系統(tǒng)中的一些Windows系統(tǒng)主機(jī)以及大型計(jì)算機(jī),據(jù)說非常成功。5、傻瓜式惡意代碼——宏病毒1996年,出現(xiàn)針對微軟公司Office的“宏病毒”。1997年公認(rèn)為計(jì)算機(jī)反病毒界的“宏病毒年”。特點(diǎn):書寫簡單,甚至有很多自動制作工具6、燒毀硬件的惡意代碼

CIH(1998-1999)1998年,首例破壞計(jì)算機(jī)硬件的CIH病毒出現(xiàn),引起人們的恐慌。1999年4月26日,CIH病毒在我國大規(guī)模爆發(fā),造成巨大損失。7、網(wǎng)絡(luò)惡意代碼時(shí)代:蠕蟲1999年3月26日,出現(xiàn)一種通過因特網(wǎng)進(jìn)行傳播的美麗莎病毒。2001年7月中旬,一種名為“紅色代碼”的病毒在美國大面積蔓延,這個(gè)專門攻擊服務(wù)器的病毒攻擊了白宮網(wǎng)站,造成了全世界恐慌。2003年,“2003蠕蟲王”病毒在亞洲、美洲、澳大利亞等地迅速傳播,造成了全球性的網(wǎng)絡(luò)災(zāi)害。記憶猶新的3年(2003-2005)2004年是蠕蟲泛濫的一年,大流行病毒:網(wǎng)絡(luò)天空(Worm.Netsky)高波(Worm.Agobot)愛情后門(Worm.Lovgate)震蕩波(Worm.Sasser)SCO炸彈(Worm.Novarg)沖擊波(Worm.Blaster)惡鷹(Worm.Bbeagle)小郵差(Worm.Mimail)求職信(Worm.Klez)大無極(Worm.SoBig)2005年是木馬流行的一年,新木馬包括:8月9日,“閃盤竊密者(Trojan.UdiskThief)”病毒。該木馬病毒會判定電腦上移動設(shè)備的類型,自動把U盤里所有的資料都復(fù)制到電腦C盤的“test”文件夾下,這樣可能造成某些公用電腦用戶的資料丟失。11月25日,“證券大盜”(Trojan/PSW.Soufan)。該木馬病毒可盜取包括南方證券、國泰君安在內(nèi)多家證券交易系統(tǒng)的交易賬戶和密碼,被盜號的股民賬戶存在被人惡意操縱的可能。7月29日,“外掛陷阱”(troj.Lineage.hp)。此病毒可以盜取多個(gè)網(wǎng)絡(luò)游戲的用戶信息,如果用戶通過登陸某個(gè)網(wǎng)站,下載安裝所需外掛后,便會發(fā)現(xiàn)外掛實(shí)際上是經(jīng)過偽裝的病毒,這個(gè)時(shí)候病毒便會自動安裝到用戶電腦中。9月28日,"我的照片"(Trojan.PSW.MyPhoto)病毒。該病毒試圖竊取《熱血江湖》、《傳奇》、《天堂Ⅱ》、《工商銀行》、《中國農(nóng)業(yè)銀行》等數(shù)十種網(wǎng)絡(luò)游戲及網(wǎng)絡(luò)銀行的賬號和密碼。該病毒發(fā)作時(shí),會顯示一張照片使用戶對其放松警惕。8、木馬時(shí)代2006年木馬仍然是病毒主流,變種層出不窮2006年上半年,江民反病毒中心共截獲新病毒33358種,另據(jù)江民病毒預(yù)警中心監(jiān)測的數(shù)據(jù)顯示,1至6月全國共有7322453臺計(jì)算機(jī)感染了病毒,其中感染木馬病毒電腦2384868臺,占病毒感染電腦總數(shù)的32.56%,感染廣告軟件電腦1253918臺,占病毒感染電腦總數(shù)的17.12%,感染后門程序電腦

664589臺,占病毒感染電腦總數(shù)的9.03%,蠕蟲病毒216228臺,占病毒感染電腦總數(shù)的2.95%,監(jiān)測發(fā)現(xiàn)漏洞攻擊代碼感染181769臺,占病毒感染電腦總數(shù)的2.48%,腳本病毒感染15152臺,占病毒感染電腦總數(shù)的2.06%。最前沿病毒2007年:流氓軟件——反流氓軟件技術(shù)對抗的階段。Cnnic3721–yahoo熊貓燒香2008年:木馬ARPPhishing(網(wǎng)絡(luò)釣魚)2009年惡意代碼產(chǎn)業(yè)化木馬是主流其他:瀏覽器劫持、下載捆綁、釣魚2010年新增惡意代碼750萬(瑞星);流行惡意代碼:快捷方式真假難分、木馬依舊猖獗,但更注重經(jīng)濟(jì)利益和特殊應(yīng)用。2011年隨著SNS等新型社交網(wǎng)絡(luò)的迅速崛起,惡意代碼制造者又有了新的病毒載體平臺。例如,新浪微波的移動互聯(lián)網(wǎng)平臺惡意代碼。例如,手機(jī)病毒。2012年中國計(jì)算機(jī)病毒統(tǒng)計(jì)根據(jù)金山毒霸安全中心統(tǒng)計(jì)2012年共捕獲病毒樣本總量超過4200萬個(gè),比上一年增長41.4%,月捕獲病毒樣本數(shù)在300萬至450萬個(gè)之間,日均超過11萬個(gè)。鬼影病毒、AV終結(jié)者末日版、網(wǎng)購木馬、456游戲木馬、連環(huán)木馬(后門)、QQ粘蟲木馬、新淘寶客病毒、瀏覽器劫持病毒、傳奇私-Fu劫持者、QQ群蠕蟲病毒等病毒類型對用戶危害最大。來源:/analysis/kaspersky-security-bulletin/58335/mobile-malware-evolution-2013/9、手機(jī)惡意代碼登場

2015年移動惡意代碼行為(Kaspasky)2015年,卡巴斯基實(shí)驗(yàn)室檢測到的內(nèi)容如下:?2,961,727個(gè)惡意安裝包?884,774個(gè)新的惡意移動項(xiàng)目——數(shù)量較前一年增長了三倍.?7,030個(gè)移動銀行木馬ThenumberofattacksblockedbyKasperskyLabsolutions,2015ThenumberofusersprotectedbyKasperskyLabsolutions,2015Thegeographyofmobilethreatsbynumberofattackedusers,2015Distributionofnewmobilemalwarebytypein2014and20151.ConfickerConficker是一種針對微軟的Windows操作系統(tǒng)的計(jì)算機(jī)蠕蟲病毒,最早的版本出現(xiàn)在2008年秋季。2.Sality通過僵尸網(wǎng)絡(luò)控制3.LockyLocky是勒索軟件家族新成員,出現(xiàn)于2016年年初,通過RSA-2048和AES-128算法對100多種文件類型進(jìn)行加密。Locky通過漏洞工具包或包含JS、WSF、HTA或LNK文件的電子郵件傳播。4.Cutwail一款僵尸網(wǎng)絡(luò),用于DDoS攻擊并發(fā)送垃圾郵件。10、惡意代碼新時(shí)代——勒索、APT、工控、物聯(lián)網(wǎng)5.ZeusZeus是幾年前出現(xiàn)的一款銀行木馬。6.Chanitor被稱為Hancitor或H1N1,使用垃圾郵件來傳播木馬。7.Tinba–木馬8.CryptowallCryptowall是CryptoLocker勒索軟件的變種。9.Blackhole-一種惡意程序工具包,10.Nivdort-模塊化木馬。2018十大惡意軟件APT武器:持續(xù)升級的APT28工具系列白俄羅斯工控系統(tǒng):繼Stuxnet之后最大威脅的Industroyer能夠直接控制變電中的電路開關(guān)和繼電器物聯(lián)網(wǎng):持續(xù)“擴(kuò)張”的Mirai家族2017年與Mirai相關(guān)的知名惡意軟件包括:Rowdy、IoTroops、Satori等。這些惡意軟件以mirai的源代碼為本體,經(jīng)過不斷的變異改進(jìn),已經(jīng)從傳統(tǒng)的Linux平臺演變到了Windows平臺,利用的端口也在不斷變化,從傳統(tǒng)的弱口令攻擊轉(zhuǎn)變到了弱口令和漏洞利用的綜合攻擊方式,同時(shí)感染設(shè)備范圍由網(wǎng)絡(luò)攝像機(jī)、家庭路由,正向有線電視機(jī)頂盒等領(lǐng)域“擴(kuò)張”。銀行/金融:在線銷售的CutletMakerCutletMaker的軟件于2017年5月開始在AlphaBay暗網(wǎng)市場上銷售,因?yàn)槊绹嘘P(guān)機(jī)構(gòu)在7月中旬關(guān)閉了AlphaBay,軟件經(jīng)營方現(xiàn)新建了一個(gè)獨(dú)立網(wǎng)站專門銷售該軟件。犯罪勒索:占領(lǐng)半壁江山的WannaCry移動終端:安卓終端排名第一的Rootnik劫持與廣告:造成史上最大規(guī)模感染的FireBallFireBall可以控制互聯(lián)網(wǎng)瀏覽器,監(jiān)視受害者的web使用,并可能竊取個(gè)人文件。FireBall與擁有3億客戶聲稱提供數(shù)字營銷和游戲應(yīng)用程序的中國公司Rafotech(卿燁科技/)相關(guān)。Windows&office:被濫用的NSA工具DoublePulsar惡意郵件:造成30億美元損失的尼日利亞釣魚無文件/腳本惡意軟件:被用于挖礦的NSA漏洞利用工具Zealot利用NSA漏洞大量入侵Linux和Windows服務(wù)器同時(shí)植入惡意軟件“Zealot”來挖掘Monero加密貨幣的攻擊2019年的新趨勢?勒索軟件的規(guī)模正在增長。?基于物聯(lián)網(wǎng)平臺的僵尸網(wǎng)絡(luò)-〉DDOS攻擊總體趨勢總結(jié)網(wǎng)絡(luò)化發(fā)展專業(yè)化發(fā)展簡單化發(fā)展多樣化發(fā)展自動化發(fā)展犯罪化發(fā)展四、病毒人生(法律)1983年11月3日,弗雷德·科恩(FredCohen)博士研制出一種在運(yùn)行過程中可以復(fù)制自身的破壞性程序,倫·艾德勒曼(LenAdleman)將它命名為計(jì)算機(jī)病毒(computerviruses),并在每周一次的計(jì)算機(jī)安全討論會上正式提出。1988年冬天,正在康乃爾大學(xué)攻讀的莫里斯,把一個(gè)被稱為“蠕蟲”的電腦病毒送進(jìn)了美國最大的電腦網(wǎng)絡(luò)——互聯(lián)網(wǎng)。1988年11月2日下午5點(diǎn),互聯(lián)網(wǎng)的管理人員首次發(fā)現(xiàn)網(wǎng)絡(luò)有不明入侵者。當(dāng)晚,從美國東海岸到西海岸,互聯(lián)網(wǎng)用戶陷入一片恐慌。CIH病毒,又名“切爾諾貝利”,是一種可怕的電腦病毒。它是由臺灣大學(xué)生陳盈豪編制的,九八年五月間,陳盈豪還在大同工學(xué)院就讀時(shí),完成以他的英文名字縮寫“CIH”名的電腦病毒起初據(jù)稱只是為了“想紀(jì)念一下1986的災(zāi)難”或“使反病毒軟件公司難堪”。年僅18歲的高中生杰弗里·李·帕森因?yàn)樯嫦邮恰皼_擊波”電腦病毒的制造者于2003年8月29日被捕。對此,他的鄰居們表示不敢相信。在他們的眼里,杰弗里·李·帕森是一個(gè)電腦天才,而決不是什么黑客,更不會去犯罪。李俊,大學(xué)本科畢業(yè)大于1000萬用戶染毒損失數(shù)億元人民幣處罰:最高無期?五、惡意代碼的主要危害直接危害:1.病毒激發(fā)對計(jì)算機(jī)數(shù)據(jù)信息的直接破壞作用2.占用磁盤空間和對信息的破壞3.搶占系統(tǒng)資源4.影響計(jì)算機(jī)運(yùn)行速度5.計(jì)算機(jī)病毒錯(cuò)誤與不可預(yù)見的危害6.計(jì)算機(jī)病毒的兼容性對系統(tǒng)運(yùn)行的影響病毒的危害情況間接危害:1.計(jì)算機(jī)病毒給用戶造成嚴(yán)重的心理壓力2.造成業(yè)務(wù)上的損失3.法律上的問題近幾年來的重大損失年份攻擊行為發(fā)起者受害PC數(shù)目損失金額(美元)2006木馬和惡意軟件————2005木馬————2004Worm_Sasser(震蕩波)————2003Worm_MSBLAST(沖擊波)超過140萬臺——2003SQLSlammer超過20萬臺9.5億至12億2002Klez超過6百萬臺90億2001RedCode超過1百萬臺26億2001NIMDA超過8百萬臺60億2000LoveLetter——88億1999CIH超過6千萬臺近100億六、惡意代碼的分類總體上分兩大類第一大類:傳統(tǒng)的計(jì)算機(jī)病毒感染操作系統(tǒng)引導(dǎo)程序感染可執(zhí)行文件(感染exe、com、elf文件)感染數(shù)據(jù)文件(宏病毒、Shell腳本惡意代碼)第二大類:傳統(tǒng)計(jì)算機(jī)病毒之外的惡意代碼木馬、蠕蟲、流氓軟件……后門、僵尸、移動端惡意代碼……七、計(jì)算機(jī)病毒的傳播途徑

1、軟盤軟盤作為最常用的交換媒介,在計(jì)算機(jī)應(yīng)用的早期對病毒的傳播發(fā)揮了巨大的作用,因那時(shí)計(jì)算機(jī)應(yīng)用比較簡單,可執(zhí)行文件和數(shù)據(jù)文件系統(tǒng)都較小,許多執(zhí)行文件均通過軟盤相互拷貝、安裝,這樣病毒就能通過軟盤傳播文件型病毒;另外,在軟盤列目錄或引導(dǎo)機(jī)器時(shí),引導(dǎo)區(qū)病毒會在軟盤與硬盤引導(dǎo)區(qū)內(nèi)互相感染。因此軟盤也成了計(jì)算機(jī)病毒的主要的寄生“溫床”。2、光盤光盤因?yàn)槿萘看?,存儲了大量的可?zhí)行文件,大量的病毒就有可能藏身于光盤,對只讀式光盤,不能進(jìn)行寫操作,因此光盤上的病毒不能清除。以謀利為目的非法盜版軟件的制作過程中,不可能為病毒防護(hù)擔(dān)負(fù)專門責(zé)任,也決不會有真正可靠的技術(shù)保障避免病毒的傳入、傳染、流行和擴(kuò)散。當(dāng)前,盜版光盤的泛濫給病毒的傳播帶來了極大的便利。甚至有些光盤上殺病毒軟件本身就帶有病毒,這就給本來“干凈”的計(jì)算機(jī)帶來了災(zāi)難。

3、硬盤(含移動硬盤、USB)有時(shí),帶病毒的硬盤在本地或移到其他地方使用甚至維修等,就會將干凈的軟盤傳染或者感染其他硬盤并擴(kuò)散。網(wǎng)絡(luò)病毒技術(shù)社區(qū)集體攻擊病毒

蠕蟲病毒特洛伊木馬黑客技術(shù)腳本病毒郵件病毒病毒源碼發(fā)布4、有線網(wǎng)絡(luò)網(wǎng)絡(luò)——〉病毒的加速器觸目驚心的計(jì)算——卿斯?jié)h如果:20分鐘產(chǎn)生一種新病毒,通過因特網(wǎng)傳播(30萬公里/秒)。聯(lián)網(wǎng)電腦每20分鐘感染一次,每天開機(jī)聯(lián)網(wǎng)2小時(shí)。結(jié)論:一年以內(nèi)一臺聯(lián)網(wǎng)的電腦可能會被最新病毒感染2190次。另一個(gè)數(shù)字:75%的電腦被感染。網(wǎng)絡(luò)服務(wù)——〉傳播媒介網(wǎng)絡(luò)的快速發(fā)展促進(jìn)了以網(wǎng)絡(luò)為媒介的各種服務(wù)(FTP,WWW,BBS,EMAIL等)的快速普及。同時(shí),這些服務(wù)也成為了新的病毒傳播方式。電子布告欄(BBS):電子郵件(Email):即時(shí)消息服務(wù)(QQ,ICQ,MSN等):WEB服務(wù):FTP服務(wù):新聞組:5、無線通訊系統(tǒng)病毒對手機(jī)的攻擊有3個(gè)層次:攻擊WAP服務(wù)器,使手機(jī)無法訪問服務(wù)器;攻擊網(wǎng)關(guān),向手機(jī)用戶發(fā)送大量垃圾信息;直接對手機(jī)本身進(jìn)行攻擊,有針對性地對其操作系統(tǒng)和運(yùn)行程序進(jìn)行攻擊,使手機(jī)無法提供服務(wù)。病毒表現(xiàn)現(xiàn)象:計(jì)算機(jī)病毒發(fā)作前的表現(xiàn)現(xiàn)象病毒發(fā)作時(shí)的表現(xiàn)現(xiàn)象病毒發(fā)作后的表現(xiàn)現(xiàn)象與病毒現(xiàn)象相似的硬件故障與病毒現(xiàn)象相似的軟件故障八、染毒計(jì)算機(jī)的癥狀1、發(fā)作前的現(xiàn)象平時(shí)運(yùn)行正常的計(jì)算機(jī)突然經(jīng)常性無緣無故地死機(jī)操作系統(tǒng)無法正常啟動運(yùn)行速度明顯變慢以前能正常運(yùn)行的軟件經(jīng)常發(fā)生內(nèi)存不足的錯(cuò)誤打印和通訊發(fā)生異常以前能正常運(yùn)行的應(yīng)用程序經(jīng)常發(fā)生死機(jī)或者非法錯(cuò)誤系統(tǒng)文件的時(shí)間、日期、大小發(fā)生變化運(yùn)行Word,打開Word文檔后,該文件另存時(shí)只能以模板方式保存磁盤空間迅速減少網(wǎng)絡(luò)驅(qū)動器卷或共享目錄無法調(diào)用基本內(nèi)存發(fā)生變化陌生人發(fā)來的電子郵件2、發(fā)作時(shí)的現(xiàn)象提示一些不相干的話發(fā)出一段的音樂產(chǎn)生特定的圖像硬盤燈不斷閃爍進(jìn)行游戲算法Windows桌面圖標(biāo)發(fā)生變化計(jì)算機(jī)突然死機(jī)或重啟自動發(fā)送電子郵件鼠標(biāo)自己在動3、發(fā)作后的現(xiàn)象硬盤無法啟動,數(shù)據(jù)丟失系統(tǒng)文件丟失或被破壞文件目錄發(fā)生混亂部分文檔丟失或被破壞部分文檔自動加密修改系統(tǒng)文件使部分可軟件升級主板的BIOS程序混亂,主板被破壞網(wǎng)絡(luò)癱瘓,無法提供正常的服務(wù)4、與病毒現(xiàn)象類似的軟件故障出現(xiàn)“Invaliddrivespecification”(非法驅(qū)動器號)軟件程序已被破壞(非病毒)軟件與操作系統(tǒng)的兼容性引導(dǎo)過程故障用不同的編輯軟件程序5、與病毒現(xiàn)象類似的硬件故障系統(tǒng)的硬件配置電源電壓不穩(wěn)定插件接觸不良軟驅(qū)故障關(guān)于CMOS的問題九、計(jì)算機(jī)病毒的命名規(guī)則

CARO命名規(guī)則,每一種病毒的命名包括五個(gè)部分:病毒家族名病毒組名大變種小變種修改者CARO規(guī)則的一些附加規(guī)則包括:不用地點(diǎn)命名不用公司或商標(biāo)命名如果已經(jīng)有了名字就不再另起別名變種病毒是原病毒的子類

精靈(Cunning)病毒是瀑布(Cascade)病毒的變種,它在發(fā)作時(shí)能奏樂,因此被命名為Cascade.1701.A。Cascade是家族名,1701是組名。因?yàn)镃ascade病毒的變種的大小不一(1701,1704,1621等),所以用大小來表示組名。A表示該病毒是某個(gè)組中的第一個(gè)變種。

業(yè)界補(bǔ)充:反病毒軟件商們通常在CARO命名的前面加一個(gè)前綴來標(biāo)明病毒類型。比如,WM表示MSWord宏病毒;Win32指32位Windows病毒;VBS指VB腳本病毒。這樣,梅麗莎病毒的一個(gè)變種的命名就成了W97M.Melissa.AA,Happy99蠕蟲就被稱為Win32.Happy99.Worm。VGrep是反病毒廠商的一種嘗試,這種方法將已知的病毒名稱通過某種方法關(guān)聯(lián)起來,其目的是不管什么樣的掃描軟件都能按照可被識別的名稱鏈進(jìn)行掃描。VGrep將病毒文件讀入并用不同的掃描器進(jìn)行掃描,掃描的結(jié)果和被識別出的信息放入數(shù)據(jù)庫中。每一個(gè)掃描器的掃描結(jié)果與別的掃描結(jié)果相比較并將結(jié)果用作病毒名交叉引用表。VGrep的參與者贊同為每一種病毒起一個(gè)最通用的名字最為代表名字。擁有成千上萬掃描器的大型企業(yè)集團(tuán)要求殺毒軟件供應(yīng)商使用VGrep命名,這對于在世界范圍內(nèi)跟蹤多個(gè)病毒的一致性很有幫助。十、計(jì)算機(jī)病毒防治病毒防治的公理1、不存在這樣一種反病毒軟硬件,能夠防治未來產(chǎn)生的所有病毒。2、不存在這樣一種病毒程序,能夠讓未來的所有反病毒軟硬件都無法檢測。3、目前的反病毒軟件和硬件以及安全產(chǎn)品是都易耗品,必須經(jīng)常進(jìn)行更新、升級。4、病毒產(chǎn)生在前,反病毒手段滯后的現(xiàn)狀,將是一個(gè)長期的過程。人類為防治病毒所做出的努力

立體防護(hù)網(wǎng)絡(luò)版單機(jī)版防病毒卡對計(jì)算機(jī)病毒應(yīng)持有的態(tài)度1.客觀承認(rèn)計(jì)算機(jī)病毒的存在,但不要懼怕病毒。

3.樹立計(jì)算機(jī)病毒意識,積極采取預(yù)防(備份等)措施。4.掌握必要的計(jì)算機(jī)病毒知識和病毒防治技術(shù),對用戶至關(guān)重要。5.發(fā)現(xiàn)病毒,冷靜處理。特征碼掃描法特征碼掃描法是分析出病毒的特征病毒碼并集中存放于病毒代碼庫文件中,在掃描時(shí)將掃描對象與特征代碼庫比較,如有吻合則判斷為染上病毒。該技術(shù)實(shí)現(xiàn)簡單有效,安全徹底;但查殺病毒滯后,并且龐大的特征碼庫會造成查毒速度下降;目前廣泛應(yīng)用的幾種防治技術(shù):在查殺病毒時(shí)在機(jī)器虛擬內(nèi)存中模擬出一個(gè)“指令執(zhí)行虛擬機(jī)器”在虛擬機(jī)環(huán)境中虛擬執(zhí)行(不會被實(shí)際執(zhí)行)可疑帶毒文件在執(zhí)行過程中,從虛擬機(jī)環(huán)境內(nèi)截獲文件數(shù)據(jù),如果含有可疑病毒代碼,則殺毒后將其還原到原文件中,從而實(shí)現(xiàn)對各類可執(zhí)行文件內(nèi)病毒的查殺虛擬執(zhí)行技術(shù)

該技術(shù)通過虛擬執(zhí)行方法查殺病毒,可以對付加密、變形、異型及病毒生產(chǎn)機(jī)生產(chǎn)的病毒,具有如下特點(diǎn):智能引擎技術(shù)

智能引擎技術(shù)發(fā)展了特征碼掃描法的優(yōu)點(diǎn),改進(jìn)了其弊端,使得病毒掃描速度不隨病毒庫的增大而減慢。剛剛面世的瑞星殺毒軟件2003版即采用了此項(xiàng)技術(shù),使病毒掃描速度比2002版提高了一倍之多;計(jì)算機(jī)監(jiān)控技術(shù)文件實(shí)時(shí)監(jiān)控內(nèi)存實(shí)時(shí)監(jiān)控腳本實(shí)時(shí)監(jiān)控郵件實(shí)時(shí)監(jiān)控注冊表實(shí)時(shí)監(jiān)控參考:未知病毒查殺技術(shù)

未知病毒技術(shù)是繼虛擬執(zhí)行技術(shù)后的又一大技術(shù)突破,它結(jié)合了虛擬技術(shù)和人工智能技術(shù),實(shí)現(xiàn)了對未知病毒的準(zhǔn)確查殺。壓縮智能還原技術(shù)

世界上的壓縮工具、打包工具、加“殼”工具多不勝數(shù),病毒如果被這樣的工具處理后被層層包裹起來,對于防病毒軟件來說,就是一個(gè)噩夢。為了使用統(tǒng)一的方法來解決這個(gè)問題,反病毒專家們發(fā)明了未知解壓技術(shù),它可以對所有的這類文件在內(nèi)存中還原,從而使得病毒完全暴露出來。多層防御,集中管理技術(shù)反病毒要以網(wǎng)為本,從網(wǎng)絡(luò)系統(tǒng)的角度設(shè)計(jì)反病毒解決方案,只有這樣才能有效地查殺網(wǎng)絡(luò)上的計(jì)算機(jī)病毒。在網(wǎng)絡(luò)上,軟件的安裝和管理方式是十分關(guān)鍵的,它不僅關(guān)系到網(wǎng)絡(luò)維護(hù)和管理的效率和質(zhì)量,而且涉及到網(wǎng)絡(luò)的安全性。好的殺毒軟件需要能在幾分鐘之內(nèi)便可輕松地安裝到組織里的每一個(gè)NT服務(wù)器上,并可下載和散布到所有的目的機(jī)器上,由網(wǎng)絡(luò)管理員集中設(shè)置和管理,它會與操作系統(tǒng)及其它安全措施緊密地結(jié)合在一起,成為網(wǎng)絡(luò)安全管理的一部分,并且自動提供最佳的網(wǎng)絡(luò)病毒防御措施。病毒免疫技術(shù)

病毒免疫技術(shù)一直是反病毒專家研究的熱點(diǎn),它通過加強(qiáng)自主訪問控制和設(shè)置磁盤禁寫保護(hù)區(qū)來實(shí)現(xiàn)病毒免疫的基本構(gòu)想。實(shí)際上,最近出現(xiàn)的軟件安全認(rèn)證技術(shù)也應(yīng)屬于此技術(shù)的范疇,由于用戶應(yīng)用軟件的多樣性和環(huán)境的復(fù)雜性,病毒免疫技術(shù)到廣泛使用還有一段距離。加強(qiáng)對未知病毒的查殺能力是反病毒行業(yè)的持久課題,目前國內(nèi)外多家公司都宣布自己的產(chǎn)品可以對未知病毒進(jìn)行查殺,但據(jù)我們研究,國內(nèi)外的產(chǎn)品只有少數(shù)可以對同一家族的新病毒進(jìn)行預(yù)警,不能清除。目前有些公司已經(jīng)在這一領(lǐng)域取得了突破性的進(jìn)展,可以對未知DOS病毒、未知PE病毒、未知宏病毒進(jìn)行防范。其中對未知DOS病毒能查到90%以上,并能準(zhǔn)確清除其中的80%,未知PE病毒能查到70%以上、未知宏病毒能實(shí)現(xiàn)查殺90%.病毒防治技術(shù)的趨勢前瞻加強(qiáng)對未知病毒的查殺能力防殺針對掌上型移動通訊工具和PDA的病毒

隨著掌上型移動通訊工具和PDA的廣泛使用,針對這類系統(tǒng)的病毒已經(jīng)開始出現(xiàn),并且威脅將會越來越大,反病毒公司將投入更多的力量來加強(qiáng)此類病毒的防范。兼容性病毒的防殺

目前已經(jīng)發(fā)現(xiàn)可以同時(shí)在微軟WINDOWS和日益普及的LINUX兩種不同操作系統(tǒng)內(nèi)運(yùn)作的病毒,此類病毒將會給人們帶來更多的麻煩,促使反病毒公司加強(qiáng)防殺此類病毒。蠕蟲病毒和腳本病毒的防殺不容忽視

蠕蟲病毒是一種能自我復(fù)制的程序,駐留內(nèi)存并通過計(jì)算機(jī)網(wǎng)絡(luò)復(fù)制自己,它通過大量消耗系統(tǒng)資源,最后導(dǎo)致系統(tǒng)癱瘓。給人們帶來了巨大的危害,腳本病毒因?yàn)槠渚帉懴鄬θ菀渍蔀榱硪环N趨勢,這兩類病毒的危害性使人們絲毫不能忽視對其的防殺。十一、殺毒軟件及評價(jià)(一)殺毒軟件必備功能

病毒查殺能力對新病毒的反應(yīng)能力對文件的備份和恢復(fù)能力實(shí)時(shí)監(jiān)控功能及時(shí)有效的升級功能智能安裝、遠(yuǎn)程識別功能界面友好、易于操作對現(xiàn)有資源的占用情況系統(tǒng)兼容性軟件的價(jià)格軟件商的實(shí)力(二)國內(nèi)外殺毒軟件及市場金山毒霸、瑞星殺毒、KV3000、PC-CillinVirusBuster、NortonAntiVirus、McafeeVirusScan、KasperskyAntivirus、F-SecureAntivirus,Nod32等?!峨娔X報(bào)》2008評測結(jié)果2014年2015年/十二、解決方案和策略防病毒策略1、建立病毒防治的規(guī)章制度,嚴(yán)格管理;

2、建立病毒防治和應(yīng)急體系;

3、進(jìn)行計(jì)算機(jī)安全教育,提高安全防范意識;

4、對系統(tǒng)進(jìn)行風(fēng)險(xiǎn)評估;

5、選擇經(jīng)過公安部認(rèn)證的病毒防治產(chǎn)品;

6、正確配置,使用病毒防治產(chǎn)品;

7、正確配置系統(tǒng),減少病毒分侵害事件;

8、定期檢查敏感文件;

9、適時(shí)進(jìn)行安全評估,調(diào)整各種病毒防治策略;

10、建立病毒事故分析制度;

11、確?;謴?fù),減少損失;十三、國內(nèi)外病毒產(chǎn)品的技術(shù)發(fā)展態(tài)勢國內(nèi)外反病毒公司在反病毒領(lǐng)域各有所長國內(nèi)外產(chǎn)品競爭激烈

國內(nèi)以360為代表,進(jìn)入了免費(fèi)時(shí)代國內(nèi)反病毒企業(yè)發(fā)展勢頭強(qiáng)勁

隨著中國信息化進(jìn)程的深入開展,多家國際反病毒公司基本撤出了在中國的殺毒業(yè)務(wù);相信人類受到惡意代碼侵害及由此帶來的損失將逐步減少,國內(nèi)反病毒行業(yè)在政府的規(guī)范和用戶的支持下將取得更好的成績!反病毒服務(wù)是競爭關(guān)鍵

要推動企業(yè)信息安全建設(shè)、并從根本上改變國內(nèi)信息安全現(xiàn)狀,建立健全的服務(wù)體系是關(guān)鍵。相關(guān)資源1.Wildlist國際組織該網(wǎng)站維護(hù)世界各地發(fā)現(xiàn)的病毒列表。網(wǎng)站負(fù)責(zé)維護(hù)這個(gè)列表,并且按月打包供用戶下載。此外,網(wǎng)站上還有一些計(jì)算機(jī)病毒方面的學(xué)術(shù)論文。2.病毒公告牌對于任何關(guān)心惡意代碼和垃圾信息防護(hù)、檢測和清除的人來說,病毒公告在線雜志是一個(gè)必不可少的參考。逐日逐月地,病毒公告牌提供如下信息:1)來自于反惡意代碼業(yè)界的發(fā)人深省的新聞和觀點(diǎn)2)最新惡意代碼威脅的詳細(xì)分析3)探索反惡意代碼技術(shù)開發(fā)的長篇文檔4)反惡意代碼專家的會見5)對當(dāng)前反病毒產(chǎn)品的獨(dú)立評測6)覆蓋垃圾郵件和反垃圾郵件技術(shù)的月報(bào)3.卡飯論壇http://卡飯的意思是卡巴斯基的FANS(愛好者),取其諧音,即為卡飯。卡飯論壇最初是一個(gè)以卡巴斯基愛好者為主體,以計(jì)算機(jī)安全軟件為主要內(nèi)容的論壇。隨著國產(chǎn)計(jì)算機(jī)安全軟件的興起,卡飯論壇對主流的計(jì)算機(jī)安全軟件均有不同程度的涉獵,迄今為止已發(fā)展成為最大的計(jì)算機(jī)安全論壇之一。論壇的開放時(shí)間是2006年6月1日。4.亞洲反病毒研究者協(xié)會(AVAR)AVAR(亞洲反病毒研究者協(xié)會)成立于1998年6月。協(xié)會的宗旨是預(yù)防計(jì)算機(jī)病毒的傳播和破壞,促進(jìn)亞洲的反病毒研究者間建立良好的合作關(guān)系。5.國家計(jì)算機(jī)病毒應(yīng)急處理中心網(wǎng)站主要內(nèi)容是病毒流行列表、病毒SOS求救、數(shù)據(jù)恢復(fù)等。6.病毒觀察網(wǎng)站主要內(nèi)容包括病毒預(yù)報(bào)、新聞、評論、相關(guān)法規(guī)、反病毒資料、安全漏洞、密碼知識、病毒百科在線檢索等。7.HACK80HACK80是集黑客技術(shù)交流、黑客工具分享的黑客論壇。與傳統(tǒng)黑客聯(lián)盟不同,該論壇在守法的前提下提倡自由的技術(shù)交流,力求成為一個(gè)氣氛優(yōu)秀的技術(shù)圈子。8.安全焦點(diǎn)安全焦點(diǎn)是中國目前頂級的網(wǎng)絡(luò)安全站點(diǎn),那里集聚的一大批知名的黑客。網(wǎng)站內(nèi)容包括安全論文、安全工具、安全漏洞以及逆向技術(shù)等。9.看雪論壇/看雪論壇是致力于PC、移動、物聯(lián)網(wǎng)安全研究及逆向工程相關(guān)的開發(fā)者舍卻。網(wǎng)站主要內(nèi)容包括黑客頻道、防毒技巧、網(wǎng)絡(luò)安全新聞和病毒新聞等。10.國際計(jì)算機(jī)安全聯(lián)合會(ICSA-InterNationalComputerSecwrityAssociation)/如要對Internet的安全問題感興趣,你可以訪問國家計(jì)算機(jī)安全聯(lián)合會(NCSA)的站點(diǎn)。這里會看到很多關(guān)于國家計(jì)算機(jī)安全聯(lián)合會各種活動的信息,包括會議,培訓(xùn)、產(chǎn)品認(rèn)證和安全警告等。在這里你可以了解到國際知名的病毒防治軟件登記請況。AnyQuestions?ThankYou!202X感謝聆聽匯報(bào)人姓名匯報(bào)時(shí)間漏洞本章目標(biāo)了解漏洞的概念。掌握軟件漏洞產(chǎn)生。了解漏洞的發(fā)展。掌握漏洞利用情況。熟悉漏洞發(fā)布。2.1漏洞的概念漏洞(Vulnerability)又叫脆弱性,這一概念早在1947年馮?諾依曼建立計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)理論時(shí)就有涉及。他認(rèn)為計(jì)算機(jī)的發(fā)展和自然生命有相似性,一個(gè)計(jì)算機(jī)系統(tǒng)也有天生的類似基因的缺陷,也可能在使用和發(fā)展過程中產(chǎn)生意想不到的問題。20世紀(jì)80年代,早期黑客的出現(xiàn)和第一個(gè)計(jì)算機(jī)病毒的產(chǎn)生,使得軟件漏洞逐漸引起人們的關(guān)注。20世紀(jì)70年代中期,美國啟動的PA計(jì)劃(ProtectionAnalysisProject)和可靠操作系統(tǒng)的研究(ResearchinSecuredOperatingSystems)計(jì)劃,開啟了信息安全漏洞研究工作的序幕。在歷經(jīng)40多年的研究過程中,學(xué)術(shù)界、產(chǎn)業(yè)界以及政策制定者對漏洞給出了很多定義,漏洞定義本身也隨著信息技術(shù)的發(fā)展而具有不同的含義與范疇,從最初的基于訪問控制的定義發(fā)展到現(xiàn)階段的涉及系統(tǒng)安全流程、系統(tǒng)設(shè)計(jì)、實(shí)施、內(nèi)部控制等全過程的定義。1.信息安全漏洞的定義信息安全漏洞是信息安風(fēng)險(xiǎn)的主要根源之一,是網(wǎng)絡(luò)攻防對抗中的主要目標(biāo)。由于信息系統(tǒng)漏洞的危害性、多樣性和廣泛性,在當(dāng)前網(wǎng)絡(luò)空間博弈中,漏洞作為一種戰(zhàn)略資源被各方所積極關(guān)注。如何有效發(fā)現(xiàn)、管理和應(yīng)用漏洞的相關(guān)信息,已經(jīng)成為世界各國在信息安全領(lǐng)域工作的共識和重點(diǎn)。信息安全漏洞是信息技術(shù)、信息產(chǎn)品、信息系統(tǒng)在需求、設(shè)計(jì)、實(shí)現(xiàn)、配置、維護(hù)和使用等過程中,有意或無意產(chǎn)生的缺陷,這些缺陷一旦被惡意主體所利用,就會造成對信息產(chǎn)品或系統(tǒng)安全的損害,從而影響構(gòu)建于信息產(chǎn)品或系統(tǒng)之上正常服務(wù)的運(yùn)行,危害信息產(chǎn)品或系統(tǒng)及信息的安全屬性。也就是說,本書將漏洞研究的對象限制在信息技術(shù)、信息產(chǎn)品、信息系統(tǒng)等方面,未將人和管理流程作為主要研究目標(biāo);同時(shí),明確了漏洞的產(chǎn)生環(huán)節(jié),即需求、設(shè)計(jì)、實(shí)現(xiàn)、配置、運(yùn)行等全生命周期過程中均可能存在漏洞;最后,指出了漏洞的危害特性。信息安全漏洞是和信息安全相對而言的。安全是阻止未經(jīng)授權(quán)進(jìn)入信息系統(tǒng)的支撐結(jié)構(gòu)。漏洞是信息產(chǎn)品或系統(tǒng)安全方面的缺陷。例如,在IntelPentium芯片中存在的邏輯錯(cuò)誤、在Sendmail中的編程錯(cuò)誤、在NFS協(xié)議中認(rèn)證方式上的弱點(diǎn)、在Unix系統(tǒng)管理員設(shè)置匿名FTP服務(wù)時(shí)配置不當(dāng)、對信息系統(tǒng)物理環(huán)境、信息使用人員的管理疏漏等,這些問題都可能被攻擊者使用,威脅到系統(tǒng)的安全。因而這些都可以認(rèn)為是系統(tǒng)中存在的安全漏洞。2.信息安全漏洞特征(1)信息安全漏洞是一種狀態(tài)或條件。它的存在并不能導(dǎo)致?lián)p害,但是可以下被攻擊者利用,從而造成對系統(tǒng)安全的破壞。漏洞的惡意利用能夠影響人們的工作、生活,甚至給國家安全帶來災(zāi)難性的后果。(2)漏洞可能是有意,也可能是無意造成的。在信息系統(tǒng)中,人為主動形成的漏洞稱為預(yù)置性漏洞,但大多數(shù)的漏洞是由于疏忽造成的。例如,軟件開發(fā)過程中不正確的系統(tǒng)設(shè)計(jì)或編程過程中的錯(cuò)誤邏輯等。(3)漏洞廣泛存在。漏洞是不可避免的,它廣泛存在于信息產(chǎn)品或系統(tǒng)的軟件、硬件、協(xié)議或算法。而且在同一軟件、硬件及協(xié)議的不同版本之間,相同軟件、硬件及協(xié)議構(gòu)成的不同系統(tǒng)之間,以及同種系統(tǒng)在不同的設(shè)置條件下,都會存在各自不同的安全漏洞問題。(4)漏洞與時(shí)間緊密相關(guān)。一個(gè)系統(tǒng)從發(fā)布的那一天起,隨著用戶的深入使用,系統(tǒng)中存在的漏洞會被不斷暴露出來,這些早先被發(fā)現(xiàn)的漏洞也會不斷被系統(tǒng)供應(yīng)商發(fā)布的補(bǔ)丁修復(fù),或在以后發(fā)布的新版系統(tǒng)中得以糾正。而在新版系統(tǒng)糾正了舊版本中原有漏洞的同時(shí),也會引人一些新的漏洞和錯(cuò)誤。因而隨著時(shí)間的推移,舊的漏洞會不斷消失,新的漏洞會不斷出現(xiàn)。(5)漏洞研究具有兩面性和信息不對稱性。針對漏洞的研究工作,一方面可以用于防御,一方面也可以用于攻擊。同時(shí),在當(dāng)前的安全環(huán)境中,很多因素都會導(dǎo)致攻擊者的出現(xiàn)。攻擊者相對于信息系統(tǒng)的保護(hù)者具有很大的優(yōu)勢,攻擊者只需要找出一個(gè)漏洞,而防御者卻在試圖消除所有漏洞。隨著網(wǎng)絡(luò)的發(fā)展,包括惡意工具在內(nèi)的各種攻擊工具均可從互聯(lián)網(wǎng)上自由下載,任何有此意圖的人都能得到這些工具。而且出現(xiàn)了越來越多的無需太多知識或技巧的自動工具。同防護(hù)系統(tǒng)、網(wǎng)絡(luò)、信息以及響應(yīng)攻擊所需的支出相比要更廉價(jià)。盡管網(wǎng)絡(luò)安全和信息保障技術(shù)能力也在逐步增強(qiáng),但攻與防的成本差距不斷增大,不對稱性越來越明顯。2.2漏洞的產(chǎn)生根據(jù)漏洞的定義可知,軟件或產(chǎn)品漏洞是由于軟件在需求、設(shè)計(jì)、開發(fā)、部署或維護(hù)階段,由于開發(fā)或使用者有意或無意產(chǎn)生的缺陷所造成的。而信息系統(tǒng)漏洞產(chǎn)生的原因主要是由于構(gòu)成系統(tǒng)的元素,例如,硬件、軟件協(xié)議等在具體實(shí)現(xiàn)或安全策略上存在的缺陷。事實(shí)上,由于人類思維能力、計(jì)算機(jī)計(jì)算能力的局限性等根本因素,導(dǎo)致了漏洞的產(chǎn)生是不可避免的。下面我們將從技術(shù)、經(jīng)濟(jì)、應(yīng)用環(huán)境等角度來分析為什么漏洞總是在不斷地產(chǎn)生,而且每年數(shù)量還呈現(xiàn)出不斷增多的趨勢。2.2.1漏洞產(chǎn)生的原因1.技術(shù)角度隨著信息化技術(shù)和應(yīng)用領(lǐng)城的不斷發(fā)展和深入。人們對軟件的依賴越來越大,對其功能和性能的要求也越來越高。因此驅(qū)動了軟件系統(tǒng)規(guī)模的不斷膨脹。例如,Windows95只有1500萬行代碼,Windows98有1800萬行代碼,WindowsXP有3500萬行代碼,而目前Windows11代碼約為5億行。同時(shí),由于軟件編程技術(shù)可視化技術(shù)、系統(tǒng)集成技術(shù)的不斷發(fā)展,更進(jìn)一步地促使軟件系統(tǒng)內(nèi)部結(jié)構(gòu)和邏輯日益復(fù)雜。顯然,軟件系統(tǒng)規(guī)模的迅速膨脹及內(nèi)部結(jié)構(gòu)的日益復(fù)雜,直接導(dǎo)致軟件系統(tǒng)復(fù)雜性的提高,而目前學(xué)術(shù)界普遍認(rèn)為,軟件系統(tǒng)代碼的復(fù)雜性是導(dǎo)致軟件系統(tǒng)質(zhì)量難于控制、安全性降低、漏洞產(chǎn)生的重要原因。2.經(jīng)濟(jì)角度軟件系統(tǒng)的安全性不是顯性價(jià)值,廠商要實(shí)現(xiàn)安全性就要額外付出巨大的代價(jià)。此時(shí),軟件系統(tǒng)的安全質(zhì)量形成了一個(gè)典型的非對稱信息案例,即產(chǎn)品的賣方對產(chǎn)品質(zhì)量比買方有更多信息。在這種情況下,經(jīng)濟(jì)學(xué)上著名的“檸檬市場”效應(yīng)會出現(xiàn),即在信息不對稱的情況下,往往好的商品遭受淘汰,而劣等品會逐漸占領(lǐng)市場并取代好的商品,導(dǎo)致市場中都是劣等品。在這種市場之下,廠商更加重視軟件系統(tǒng)的功能、性能、易用性,而不愿意在安全質(zhì)量上做大的投人,甚至某些情況下,為了提高軟件效率而降其安全性,結(jié)果導(dǎo)致了軟件系統(tǒng)安全問題越來越嚴(yán)重。這種現(xiàn)象可以進(jìn)一步歸結(jié)為經(jīng)濟(jì)學(xué)上的外在性Externality),像環(huán)境污染一樣,軟件系統(tǒng)漏洞的代價(jià)要全社會來承受,而廠商拿走了所有的收益中。3.應(yīng)用環(huán)境角度由于以Internet為代表的網(wǎng)絡(luò)逐漸融入人類社會的方方面面,伴隨著Internet技術(shù)與信息技術(shù)的不斷融合與發(fā)展,導(dǎo)致了軟件系統(tǒng)的運(yùn)行環(huán)境發(fā)生了改變,從傳統(tǒng)的封閉、靜態(tài)和可控變?yōu)殚_放、動態(tài)和難控。因此,在網(wǎng)絡(luò)空間下,復(fù)雜的網(wǎng)絡(luò)環(huán)境導(dǎo)致軟件系統(tǒng)的攻防信息不對稱性進(jìn)一步增強(qiáng),攻易守難的矛盾進(jìn)一步增強(qiáng)。此外,在該環(huán)境下,還形成了一些新的軟件形態(tài),例如,網(wǎng)構(gòu)軟件(Internetware)從技術(shù)的角度看,網(wǎng)構(gòu)軟件是在面向?qū)ο?、軟件?gòu)件等技術(shù)支持下的軟件實(shí)體以主體化的軟件服務(wù)形式存在于Internet的各個(gè)節(jié)點(diǎn)之上,各個(gè)軟件實(shí)體相互間通過協(xié)同機(jī)制進(jìn)行跨網(wǎng)絡(luò)的互聯(lián)、互通、協(xié)作和聯(lián)盟,從而形成一種與www相類似的軟件Web(SoftwareWeb)。由此,在網(wǎng)絡(luò)環(huán)境中的開發(fā)、運(yùn)行、服務(wù)的網(wǎng)絡(luò)化軟件一方面導(dǎo)致了面向Web應(yīng)用的跨站腳本,SQL注入等漏洞越來越多,另一方面也給安全防護(hù)帶來了更大的難度。2.2.2漏洞的產(chǎn)生條件漏洞與安全缺陷有著密不可分的關(guān)系。軟件系統(tǒng)的不同開發(fā)階段會產(chǎn)生不同的安全缺陷,其中一些安全缺陷在一定條件下可轉(zhuǎn)化為安全漏洞。由于安全缺陷是產(chǎn)生漏洞的必要條件,因此,要想防止漏洞并降低修復(fù)成本,就要從誦洞的根源人手,控制安全缺陷的產(chǎn)生與轉(zhuǎn)化,下面我們將介紹安全缺陷的定義、漏洞與安全缺陷的對應(yīng)關(guān)系以及安全缺陷轉(zhuǎn)化為漏洞的條件。1.安全缺陷的定義安全缺陷是指軟件、硬件或協(xié)議在開發(fā)維護(hù)和運(yùn)行使用階段產(chǎn)生的安全錯(cuò)誤實(shí)例。安全缺陷是信息系統(tǒng)或產(chǎn)品自身“與生俱來”的特征,是其固有成分。無論是復(fù)雜的軟件系統(tǒng)還是簡單的應(yīng)用程序,可能都存在著安全缺陷,這些安全缺陷,有的容易表現(xiàn)出來,有的卻難以發(fā)現(xiàn);有的對軟件產(chǎn)品內(nèi)使用有輕微影響,有的可在一定的條件下,形成漏洞并會造成財(cái)產(chǎn)乃至生命等巨大損失。例如,在下面的C語言代碼中,存在對字符串變量string長度沒有進(jìn)行檢查的缺陷,因此,一旦string的字符長度超過buf變量的大小24個(gè)字符),就有可能引發(fā)緩沖區(qū)溢出的漏洞。2.2.3漏洞的狀態(tài)漏洞與具體時(shí)間和具體系統(tǒng)環(huán)境有著緊密的關(guān)系,不可能脫離二者獨(dú)立討論,并且隨著時(shí)間和環(huán)境的變化會重復(fù)出現(xiàn)、循環(huán)反復(fù),可以說,漏洞是有生命的,其狀態(tài)隨著時(shí)間、空間、人等相關(guān)要素而演變。1.漏洞的生成軟件產(chǎn)品在設(shè)計(jì)、編碼或配置使用時(shí),均可能引人安全缺陷,漏洞的生成階段即指存在安全缺陷的產(chǎn)品在執(zhí)行中形成漏洞。2.漏洞的發(fā)現(xiàn)軟件產(chǎn)品的漏洞被發(fā)現(xiàn),其標(biāo)志是指漏洞首次被挖掘者、使用者或廠商識別。漏洞在被發(fā)現(xiàn)之前就已經(jīng)存在,但通常情況下,漏洞僅被少數(shù)人發(fā)現(xiàn),這些人可能是黑客,也可能是妄圖濫用漏洞知識的有組織的犯罪團(tuán)體,或者是正在合作修復(fù)漏洞的研究人員和廠商。在漏洞向公眾發(fā)布之前,漏洞的發(fā)現(xiàn)時(shí)間指某軟件漏洞被發(fā)現(xiàn)并被認(rèn)為可構(gòu)成安全風(fēng)險(xiǎn)的最早報(bào)告時(shí)間)始終不為公眾所知,但這時(shí)漏洞已具有一定的安全影響,從漏洞發(fā)現(xiàn)到編洞信息發(fā)布這段時(shí)間常被稱為“黑色風(fēng)險(xiǎn)期”。3.漏洞的發(fā)布是指漏洞信息通過公開渠道告知公眾。漏洞的發(fā)布可能以各種方式來自各種源頭,例如由廠商或獨(dú)立研究人員宣布。不同的作者對于一個(gè)漏洞的發(fā)布時(shí)間有著不同的定義。最常見的一種說法是由某團(tuán)體公開發(fā)布安全信息。通常,漏洞信息在郵件列表和安全網(wǎng)站中進(jìn)行討論,然后再據(jù)此形成一份安全報(bào)告。為確保相關(guān)安全信息能夠出現(xiàn)并保證質(zhì)量,Stefan提出了一種更嚴(yán)格的發(fā)布時(shí)間定義。漏洞發(fā)布時(shí)間指某漏洞首次通過某種渠道出現(xiàn),在該渠道中被發(fā)布的漏洞信息須滿足下列條件:(1)可由公眾自由獲取。從安全的角度來看,只有自由和公開地公布才能保證所有感興趣的和涉及的團(tuán)體獲取相關(guān)信息。(2)由獨(dú)立且可信賴的渠道公布。只有獨(dú)立于廠商或政府的渠道才無偏見,才能夠公平傳播安全信息。只有在業(yè)界被認(rèn)可屬于可接受的安全信息來源渠道,才能被視為是一個(gè)可信賴的渠道(例如,長期以來一直都在提供可靠的安全信息)。(3)已經(jīng)過專家分析,如應(yīng)包括風(fēng)險(xiǎn)級別信息。分析和風(fēng)險(xiǎn)級別能夠保證所發(fā)布信息的質(zhì)量。僅僅是在郵件列表中討論某個(gè)可能的缺陷或來自廠商的模糊信息并不具質(zhì)量可言。分析必須包括足夠的細(xì)節(jié),能使相關(guān)軟件用戶評估其個(gè)人風(fēng)險(xiǎn)或立即采取資產(chǎn)保護(hù)措施。4.漏洞信息的流行該階段可通過各種方式發(fā)生,如新聞報(bào)逍、發(fā)布報(bào)告蠕蟲活動,但最終結(jié)果是很多人都知道了這個(gè)漏洞。5.漏洞的修復(fù)這一階段通常由廠商通過提供補(bǔ)丁來完成。這個(gè)階段可以大大減少成功的入侵?jǐn)?shù)量。修復(fù)漏洞的補(bǔ)丁通過公開渠道告知公眾,常與漏洞信息同時(shí)發(fā)布。補(bǔ)丁出現(xiàn)時(shí)間指的是廠商或軟件創(chuàng)始人最早發(fā)布能夠抵御漏洞遭利用的修復(fù)方案、應(yīng)急方案或補(bǔ)丁的時(shí)間,補(bǔ)丁的形式可以非常簡單,如廠商僅發(fā)布對某種配置變動的說用,也可以比較復(fù)雜如廣商以更新包的形式發(fā)布軟件程序,在漏洞發(fā)布到漏制修復(fù)的這段時(shí)期,軟件用戶在等待廠商發(fā)布補(bǔ)丁,通常將這段風(fēng)險(xiǎn)暴露時(shí)期稱為“灰色風(fēng)險(xiǎn)期",這段時(shí)期內(nèi)公眾知道漏洞風(fēng)險(xiǎn)但軟件開發(fā)高尚未提供修復(fù)方案。但是,用戶可以通過海洞發(fā)布信息評估自己所面臨的風(fēng)險(xiǎn),也可能在補(bǔ)丁發(fā)布之前采取其他安全機(jī)制,如入侵防御系統(tǒng)或反病毒工具能對某一漏洞信息進(jìn)行檢測,并不代表漏洞得到了修復(fù),另外,補(bǔ)丁發(fā)布后并不是所有用戶都會及時(shí)安裝補(bǔ)丁,由于用戶未及時(shí)安裝補(bǔ)丁而導(dǎo)致出現(xiàn)的風(fēng)險(xiǎn)期,通常稱為“白色風(fēng)險(xiǎn)期”6.漏洞衰敗階段攻擊者不再對利用該漏洞感興趣。并非每個(gè)漏洞都存在這一階段,但某些漏洞及其利用方案都顯示出周期性的活躍期。7.漏洞的消亡當(dāng)可能被利用的目標(biāo)機(jī)器數(shù)量降至可忽略的水平時(shí),即絕大多數(shù)軟件系統(tǒng)應(yīng)用了漏洞的修復(fù)措施之后,漏洞進(jìn)人死亡期。8.利用腳本的出現(xiàn)這是指有人針對某一漏洞發(fā)布了有效的攻擊代碼,或是發(fā)布了如何形成攻擊代碼的說明。二者中的任何一種情況,都會導(dǎo)致攻擊者的數(shù)量大量增加,即使是技術(shù)不佳的攻擊者也可以實(shí)施攻擊。某一漏洞的利用代碼被開發(fā)、測試和實(shí)施,這此過程一定出現(xiàn)在漏洞發(fā)現(xiàn)之后,但可能早于漏洞發(fā)布或補(bǔ)丁發(fā)布的時(shí)間,或是出現(xiàn)在補(bǔ)丁發(fā)布但未安裝部署前。其中。漏洞利用時(shí)間指的是某漏洞最早出現(xiàn)利用方案的時(shí)間,這里把所有能夠利用該漏洞的黑客工具、病毒、數(shù)據(jù)或命令行等都視為利用方案。根據(jù)上述內(nèi)容,漏洞生命周期理論呈現(xiàn)出圖2-1中所示的趨勢。

圖2-1漏洞生命周期理論模型第3章傳統(tǒng)計(jì)算機(jī)病毒

——補(bǔ)充知識推薦參考資料學(xué)習(xí)本章前,建議學(xué)習(xí)并掌握PE可執(zhí)行文件的結(jié)構(gòu)及運(yùn)行原理。推薦參考羅云彬編著的《Windows環(huán)境下32位匯編語言程序設(shè)計(jì)》。64位匯編資料/view/26be27f87cd184254a35359a.html1PE文件結(jié)構(gòu)及其運(yùn)行原理(1)PE文件格式總體結(jié)構(gòu)

PE(PortableExecutable:可移植的執(zhí)行體)是Win32環(huán)境自身所帶的可執(zhí)行文件格式。它的一些特性繼承自Unix的Coff(CommonObjectFileFormat)文件格式。可移植的執(zhí)行體意味著此文件格式是跨win32平臺的,即使Windows運(yùn)行在非Intel的CPU上,任何win32平臺的PE裝載器都能識別和使用該文件格式。當(dāng)然,移植到不同的CPU上PE執(zhí)行體必然得有一些改變。除VxD和16位的Dll外,所有win32執(zhí)行文件都使用PE文件格式。因此,研究PE文件格式是我們洞悉Windows結(jié)構(gòu)的良機(jī)。PE文件結(jié)構(gòu)總體層次分布DOSMZheader‘MZ’格式頭DOSstubDos樁程序PEheaderPE文件頭Sectiontable節(jié)表Section1第1個(gè)節(jié)Section2第2個(gè)節(jié)……Sectionn第n個(gè)節(jié)所有PE文件必須以一個(gè)簡單的DOSMZheader開始。有了它,一旦程序在DOS下執(zhí)行,DOS就能識別出這是有效的執(zhí)行體。DOSstub實(shí)際上是個(gè)有效的EXE,在不支持PE文件格式的操作系統(tǒng)中,它將簡單顯示一個(gè)錯(cuò)誤提示,類似于字符串“該程序不能在DOS模式下運(yùn)行”或者程序員可根據(jù)自己的意圖實(shí)現(xiàn)完整的DOS代碼。

PEheader是PE相關(guān)結(jié)構(gòu)IMAGE_NT_HEADERS的簡稱,其中包含了許多PE裝載器用到的重要域。sectiontable(節(jié)表)是節(jié)的索引。PE文件的真正內(nèi)容被劃分成塊,我們稱之為sections(節(jié))。每節(jié)是一塊擁有共同屬性的數(shù)據(jù),比如代碼/數(shù)據(jù)、讀/寫等。把PE文件想象成一邏輯磁盤,PEheader是磁盤的boot扇區(qū),而sections就是各種文件,每種文件自然就有不同屬性如只讀、系統(tǒng)、隱藏、文檔等等。其中節(jié)表就像目錄。值得我們注意的是——節(jié)的劃分是基于各組數(shù)據(jù)的共同屬性而不是邏輯概念。因此,我么不必關(guān)心節(jié)中類似于data,code或其他的邏輯概念。如果數(shù)據(jù)和代碼擁有相同屬性,它們就可以被歸入同一個(gè)節(jié)中。節(jié)名稱僅僅是個(gè)區(qū)別不同節(jié)的符號而已,類似于data和code等的節(jié)名稱只為了便于識別,惟有節(jié)的屬性設(shè)置決定了節(jié)的特性和功能。如果某塊數(shù)據(jù)想作為只讀屬性,就可以將該塊數(shù)據(jù)放入屬性為只讀的節(jié)中。裝載PE文件的主要步驟第一,當(dāng)PE文件被執(zhí)行,PE裝載器檢查DOSMZheader里的PEheader偏移量。如果找到,則跳轉(zhuǎn)到PEheader。第二,PE裝載器檢查PEheader的有效性。如果有效,就跳轉(zhuǎn)到PEheader的尾部。第三,緊跟PEheader的是節(jié)表。PE裝載器讀取其中的節(jié)索引信息,并采用文件映射方法將這些節(jié)映射到內(nèi)存,同時(shí)附上節(jié)表里指定的節(jié)屬性。第四,PE文件映射入內(nèi)存后,PE裝載器將處理PE文件中類似importtable(引入表)邏輯部分。(2)檢驗(yàn)PE文件的有效性什么樣的PE文件是有效的?只要一些關(guān)鍵數(shù)據(jù)結(jié)構(gòu)有效,我們就認(rèn)為是有效的PE文件了。這個(gè)重要數(shù)據(jù)結(jié)構(gòu)就是PEheader。從編程角度看,PEheader實(shí)際就是一個(gè)IMAGE_NT_HEADERS結(jié)構(gòu)。IMAGE_NT_HEADERS結(jié)構(gòu)的定義如下:IMAGE_NT_HEADERSSTRUCTSignatureddFileHeaderIMAGE_FILE_HEADEROptionalHeaderIMAGE_OPTIONAL_HEADER32IMAGE_NT_HEADERSENDSSignature:該域?yàn)镻E標(biāo)記,值為50h,45h,00h,00h(PE\0\0)。IMAGE_DOS_SIGNATUREequ5A4DhIMAGE_OS2_SIGNATUREequ454EhIMAGE_OS2_SIGNATURE_LEequ454ChIMAGE_VXD_SIGNATUREequ454ChIMAGE_NT_SIGNATUREequ4550hFileHeader:該結(jié)構(gòu)域包含了關(guān)于PE文件物理分布的信息,比如節(jié)數(shù)目、文件執(zhí)行機(jī)器等。OptionalHeader:該結(jié)構(gòu)域包含了關(guān)于PE文件邏輯分布的信息。定位PEheaderDOSMZheader(IMAGE_DOS_HEADER)包含了指向PEheader的文件偏移量,即e_lfanew。定位步驟為:第一,檢驗(yàn)文件頭部第一個(gè)字的值是否等于IMAGE_DOS_SIGNATURE,是則DOSMZheader有效。第二,一旦證明文件的DOSMZheader有效后,就可用e_lfanew來定位PEheader了。第三,比較PEheader的第一個(gè)字的值是否等于IMAGE_NT_SIGNATURE。如果前后兩個(gè)值都匹配,那我們就認(rèn)為該文件是一個(gè)有效的PE文件。(3)文件頭(FileHeader)文件頭(FileHeader)是IMAGE_NT_HEADERS的一個(gè)重要的域。文件頭的表示結(jié)構(gòu)為:IMAGE_FILE_HEADERSTRUCTMachineWORDNumberOfSectionsWORDTimeDateStampddPointerToSymbolTableddNumberOfSymbolsddSizeOfOptionalHeaderWORDCharacteristicsWORDIMAGE_FILE_HEADERENDS域名含義Machine該文件運(yùn)行所要求的CPU。對于Intel平臺,該值是IMAGE_FILE_MACHINE_I386(14Ch)。NumberOfSections文件的節(jié)數(shù)目。如果我們要在文件中增加或刪除一個(gè)節(jié),就需要修改這個(gè)值。TimeDateStamp文件創(chuàng)建日期和時(shí)間。要讓它保持原樣,不要變PointerToSymbolTable用于調(diào)試。NumberOfSymbols用于調(diào)試。SizeOfOptionalHeader指示緊隨本結(jié)構(gòu)之后的OptionalHeader結(jié)構(gòu)大小,必須為有效值。Characteristics關(guān)于文件信息的標(biāo)記,比如文件是exe還是dll。注:節(jié)、節(jié)表和NumberOfSections的關(guān)系節(jié)表數(shù)組邊界確定。NumberOfSections,全0標(biāo)示(4)OptionalHeaderOptionalHeader是PEheader中最后,最大,也是最重要的成員,包含了PE文件的邏輯分布信息。該結(jié)構(gòu)共有31個(gè)域。虛擬地址(VA——VirtualAddress)RVA(RelativeVirtualAddress,相對虛擬地址)域名含義AddressOfEntryPointPE裝載器準(zhǔn)備運(yùn)行的PE文件的第一個(gè)指令的RVA。若您要改變整個(gè)執(zhí)行的流程,可以將該值指定到新的RVA,這樣新RVA處的指令首先被執(zhí)行。ImageBasePE文件的優(yōu)先裝載地址。比如,如果該值是400000H,PE裝載器將嘗試把文件裝到虛擬地址空間的400000H處。若該地址區(qū)域已被其他模塊占用,那PE裝載器會選用其他空閑地址。SectionAlignment內(nèi)存中節(jié)對齊的粒度。例如,如果該值是4096(1000H),那么每節(jié)的起始地址必須是4096的倍數(shù)。若第一節(jié)從401000H開始且大小是10個(gè)字節(jié),則下一節(jié)必定從402000H開始,即使401000H和402000H之間還有很多空間沒被使用。FileAlignment文件中節(jié)對齊的粒度。含義類似SectionAlignment。MajorSubsystemVersionMinorSubsystemVersionWin32系統(tǒng)版本。SizeOfImage內(nèi)存中整個(gè)PE映像體的尺寸。它是所有頭和節(jié)經(jīng)過節(jié)對齊處理后的大小。SizeOfHeaders所有頭+節(jié)表的大小,也就等于文件尺寸減去文件中所有節(jié)的尺寸??梢砸源酥底鳛镻E文件第一節(jié)的文件偏移量。SubsystemNT用來識別PE文件屬于哪個(gè)子系統(tǒng)。對于大多數(shù)Win32程序,只有兩類值:WindowsGUI和WindowsCUI(控制臺)。DataDirectoryIMAGE_DATA_DIRECTORY結(jié)構(gòu)數(shù)組。每個(gè)結(jié)構(gòu)給出一個(gè)重要數(shù)據(jù)結(jié)構(gòu)的RVA,比如引入地址表等。(5)節(jié)表(SectionTable)SectionTable是用來索引節(jié)的數(shù)組結(jié)構(gòu),其詳細(xì)表示為:IMAGE_SIZEOF_SHORT_NAMEequ8IMAGE_SECTION_HEADERSTRUCTNamedbIMAGE_SIZEOF_SHORT_NAMEdup(?)unionMiscPhysicalAddressddVirtualSizeddEndsVirtualAddressddSizeOfRawDataddPointerToRawDataddPointerToRelocationsddPointerToLinenumbersddNumberOfRelocationsdwNumberOfLinenumbersdwCharacteristicsddIMAGE_SECTION_HEADERENDS

域名含義Name節(jié)名長不超過8字節(jié)。節(jié)名僅僅是個(gè)標(biāo)記而已,可以選擇任何名字甚至空著也行。節(jié)名不是一個(gè)ASCII字符串,所以不用null結(jié)尾。VirtualAddress本節(jié)的RVA。PE裝載器將節(jié)映射至內(nèi)存時(shí)會讀取該值,如果域值是1000H,而PE文件裝在地址400000H處,那么本節(jié)就被裝載到401000H。SizeOfRawData經(jīng)過文件對齊處理后的節(jié)尺寸。該域值代表需映射入內(nèi)存的字節(jié)數(shù)。(假設(shè)一個(gè)文件的文件對齊尺寸是0x200,如果VirtualSize域指示本節(jié)長度是0x388字節(jié),則本域值為0x400,表示本節(jié)是0x400字節(jié)長)。PointerToRawData節(jié)基于文件的偏移量。PE裝載器通過該值找到節(jié)數(shù)據(jù)在文件中的位置。Characteristics包含標(biāo)記以指示節(jié)屬性。節(jié)是否含有可執(zhí)行代碼、初始化數(shù)據(jù)、未初始數(shù)據(jù),是否可寫、可讀等。PE裝載器的工作步驟:第一,讀取IMAGE_FILE_HEADER的NumberOfSections域,獲取文件的節(jié)數(shù)目;第二,SizeOfHeaders域值作為節(jié)表的文件偏移量,并以此定位節(jié)表;第三,遍歷整個(gè)結(jié)構(gòu)數(shù)組檢查各成員值;第四,對于每個(gè)結(jié)構(gòu),讀取PointerToRawData域值并定位到該文件偏移量。然后再讀取SizeOfRawData域值來決定映射內(nèi)存的字節(jié)數(shù)。將VirtualAddress域值加上ImageBase域值等于節(jié)起始的虛擬地址。然后就準(zhǔn)備把節(jié)映射進(jìn)內(nèi)存,并根據(jù)Characteristics域值設(shè)置屬性。第五,遍歷整個(gè)數(shù)組,直至所有節(jié)都已處理完畢。(6)引入表(ImportTable)兩個(gè)概念:引入函數(shù):是被某模塊調(diào)用的但又不在調(diào)用者模塊中的函數(shù),因而命名為Import(引入)函數(shù)。引入函數(shù)實(shí)際位于一個(gè)或者更多的DLL里。調(diào)用者模塊里只保留一些函數(shù)信息,包括函數(shù)名及其駐留的DLL名。DataDirectory:OptionalHeader最后一個(gè)成員就是DataDirectory,它是一個(gè)IMAGE_DATA_DIRECTORY結(jié)構(gòu)數(shù)組,共有15個(gè)成員。DataDirectory包含了PE文件中各重要數(shù)據(jù)結(jié)構(gòu)的位置和尺寸信息。每個(gè)成員包含了一個(gè)重要數(shù)據(jù)結(jié)構(gòu)的信息。DataDirectory的每個(gè)成員都是IMAGE_DATA_DIRECTORY結(jié)構(gòu)類型,其定義如下所示:IMAGE_DATA_DIRECTORYSTRUCTVirtualAddressdd//數(shù)據(jù)結(jié)構(gòu)的相對虛擬地址(RVA)isizedd//VirtualAddress所指向數(shù)據(jù)結(jié)構(gòu)的字節(jié)數(shù)IMAGE_DATA_DIRECTORYENDS15個(gè)成員序號便移包含信息簡介096Exportsymbols導(dǎo)出表1104Importsymbols導(dǎo)入表2112Resources資源3120Exception異常4128Security安全5136Baserelocation重定位表6144Debug調(diào)試信息7152Copyrightstring版權(quán)信息8160GlobalPTR全局指針相對虛擬地址表9168Threadlocalstorage(TLS)本地線程存儲10172Loadconfiguration裝載配置表11180BoundImport具體資料不祥12188ImportAddressTable引入函數(shù)的地址(宿主程序中的地址)表13192DelayImport具體資料不祥14200COMdescriptorCOM描述子15208Reserved未使用引入表:實(shí)際上是一個(gè)IMAGE_IMPORT_DESCRIPTOR結(jié)構(gòu)數(shù)組。每個(gè)結(jié)構(gòu)包含PE文件引入函數(shù)的一個(gè)相關(guān)DLL的信息。如果該P(yáng)E文件從10個(gè)不同的DLL中引入函數(shù),那么這個(gè)數(shù)組就有10個(gè)成員。該數(shù)組以一個(gè)全0的成員結(jié)尾。IMAGE_IMPORT_DESCRIPTOR結(jié)構(gòu)的定義如下:IMAGE_IMPORT_DESCRIPTORSTRUCTUnionCharacteristicsddOriginalFirstThunkddEndsTimeDateStampddForwarderChainddNameddFirstThunkddIMAGE_IMPORT_DESCRIPTORENDSOriginalFirstThunk含有指向一個(gè)IMAGE_THUNK_DATA結(jié)構(gòu)數(shù)組的RVA。FirstThunk與OriginalFirstThunk的結(jié)構(gòu)相同,只是作用不同。IMAGE_THUNK_DATA是一個(gè)指向IMAGE_IMPORT_BY_NAME結(jié)構(gòu)的指針。注意IMAGE_THUNK_DATA包含了指向一個(gè)IMAGE_IMPORT_BY_NAME結(jié)構(gòu)的指針,而不是結(jié)構(gòu)本身。IMAGE_IMPORT_BY_NAME結(jié)構(gòu)保存著一個(gè)引入函數(shù)的相關(guān)信息。IMAGE_IMPORT_BY_NAME結(jié)構(gòu)的定義:IMAGE_IMPORT_BY_NAMESTRUCTHintdw//引入函數(shù)在原dll中的索引號Namedb//引入函數(shù)在原dll中的名字IMAGE_IMPORT_BY_NAMEENDS假設(shè)有幾個(gè)IMAGE_IMPORT_BY_NAME結(jié)構(gòu),我們收集起這些結(jié)構(gòu)的RVA(=IMAGE_THUNK_DATAs)組成一個(gè)數(shù)組,并以0結(jié)尾,然后再將數(shù)組的RVA放入OriginalFirstThunk。FirstThunk與OriginalFirstThunk區(qū)別OriginalFirstThunkIMAGE_IMPORT_BY_NAMEFirstThunk

|

|IMAGE_THUNK_DATA>Function1<IMAGE_THUNK_DATAIMAGE_THUNK_DATA>Function2<IMAGE_THUNK_DATAIMAGE_THUNK_DATA>Function3<IMAGE_THUNK_DATAIMAGE_THUNK_DATA>Function4<IMAGE_THUNK_DATA...>...<...IMAGE_THUNK_DATA>Functionn<IMAGE_THUNK_DATAPE文件執(zhí)行前OriginalFirstThunkIMAGE_IMPORT_BY_NAMEFirstThunk

|

|IMAGE_THUNK_DATA>Function1AddressofFunction1IMAGE_THUNK_DATA>Function2AddressofFunction2IMAGE_THUNK_DATA>Function3AddressofFunction3IMAGE_THUNK_DATA>Function4AddressofFunction4...>......IMAGE_THUNK_DATA>FunctionnAddressofFunctionnPE文件執(zhí)行時(shí)用函數(shù)名調(diào)用:IMAGE_IMPORT_BY_NAME用序號調(diào)用:IM

溫馨提示

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

最新文檔

評論

0/150

提交評論