關(guān)于我們
書單推薦
新書推薦
|
網(wǎng)絡(luò)攻防原理及應(yīng)用
本書內(nèi)容主要從三個(gè)方面來進(jìn)行組織: 1、從信息網(wǎng)絡(luò)攻防的角度, 分析了當(dāng)前網(wǎng)絡(luò)與信息安全所面臨問題, 總結(jié)了網(wǎng)絡(luò)攻防現(xiàn)狀、攻防模型及信息安全漏洞的相關(guān)標(biāo)準(zhǔn); 2、立足于“知己知彼, 百戰(zhàn)不貽”的原則, 深入論述各種網(wǎng)絡(luò)攻防技術(shù)的機(jī)理、方法及案例; 3、最后從系統(tǒng)與網(wǎng)絡(luò)安全防范的角度, 對(duì)目前常見的信息網(wǎng)絡(luò)攻擊防范技術(shù)進(jìn)行了原理分析, 并給出相關(guān)的應(yīng)用場景。
1. 詳細(xì)介紹主流操作系統(tǒng)Windows 7、Windows 8及Windows 10的安全防護(hù)機(jī)制。
2. 詳細(xì)介紹緩沖區(qū)溢出導(dǎo)致的漏洞和針對(duì)緩沖區(qū)溢出的內(nèi)存保護(hù)機(jī)制。
3. 編者建有網(wǎng)站www.pku-exploit.com(北京大學(xué)軟件安全小組),不定期發(fā)布*新技術(shù)文章。
近年來,隨著互聯(lián)網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,互聯(lián)網(wǎng)使用者不約而同地將注意力轉(zhuǎn)向網(wǎng)絡(luò)安全領(lǐng)域。用戶在選擇互聯(lián)網(wǎng)服務(wù)時(shí)將商家是否能提供穩(wěn)定安全的服務(wù)納入考慮范疇,商家通過向客戶提供安全的服務(wù)來吸引用戶。從政府角度而言,網(wǎng)絡(luò)空間安全已上升到國家安全層面,政府通過立法的手段來保障網(wǎng)絡(luò)空間安全。為提升國內(nèi)網(wǎng)絡(luò)空間安全,需要大量從業(yè)人員加入到安全行業(yè)中。
如今市場上有大量關(guān)于網(wǎng)絡(luò)攻防方面的書籍,其中不乏經(jīng)典之作,筆者在閱讀這些書籍的過程中收獲良多。本書以介紹網(wǎng)絡(luò)攻防技術(shù)為主,涵蓋了網(wǎng)絡(luò)攻防中常用的方法,通過介紹網(wǎng)絡(luò)攻擊和網(wǎng)絡(luò)防范兩個(gè)角度的技術(shù),幫助讀者較為全面地認(rèn)知網(wǎng)絡(luò)攻防的本質(zhì)。筆者結(jié)合自身研究內(nèi)容和教學(xué)經(jīng)歷,整理編寫此書,希望能為讀者提供不同的角度來認(rèn)識(shí)網(wǎng)絡(luò)攻防的世界。本書對(duì)緩沖區(qū)溢出導(dǎo)致的漏洞和針對(duì)緩沖區(qū)溢出的內(nèi)存保護(hù)機(jī)制進(jìn)行了詳細(xì)的介紹,希望能為漏洞分析、漏洞挖掘、惡意代碼研究方向的讀者提供具有參考價(jià)值的實(shí)例。
內(nèi)容及特色
第一部分網(wǎng)絡(luò)攻防基礎(chǔ)
這一部分幫助讀者建立良好的理論基礎(chǔ),以便讀者閱讀后文內(nèi)容。在實(shí)際的攻防場景中,對(duì)網(wǎng)絡(luò)安全現(xiàn)狀、攻擊原理、漏洞標(biāo)準(zhǔn)的了解并不是必需的,但這些理論知識(shí)有助于提升讀者對(duì)于網(wǎng)絡(luò)攻防的整體認(rèn)知,幫助讀者在后續(xù)的學(xué)習(xí)過程中從根本上理解技術(shù)點(diǎn)的應(yīng)用范圍和適用場景。
第1章分析了當(dāng)代網(wǎng)絡(luò)安全現(xiàn)狀,介紹了信息安全領(lǐng)域的問題和發(fā)展趨勢。讀者通過閱讀本章可對(duì)信息安全領(lǐng)域的網(wǎng)絡(luò)攻防方向有整體的認(rèn)知。
第2章詳細(xì)介紹了網(wǎng)絡(luò)攻擊過程以及網(wǎng)絡(luò)攻防模型。深入理解本部分內(nèi)容有助于讀者建立學(xué)習(xí)網(wǎng)絡(luò)攻防技術(shù)的知識(shí)框架,幫助讀者在閱讀后文的過程中將細(xì)節(jié)知識(shí)點(diǎn)納入整體知識(shí)框架中,加深讀者對(duì)知識(shí)點(diǎn)的記憶和理解。
第3章介紹了漏洞標(biāo)準(zhǔn)以及漏洞分析方法。漏洞是攻擊者和防護(hù)者在較量過程中關(guān)注的焦點(diǎn)。本部分除了介紹通用的漏洞標(biāo)準(zhǔn),還詳細(xì)介紹了漏洞分析技術(shù)、漏洞挖掘技術(shù)、漏洞利用技術(shù)。希望有意愿深入學(xué)習(xí)網(wǎng)絡(luò)攻防知識(shí)的讀者對(duì)本章進(jìn)行深入學(xué)習(xí),并按照本章介紹動(dòng)手實(shí)踐。
第二部分網(wǎng)絡(luò)攻擊技術(shù)原理與防范
這一部分介紹在網(wǎng)絡(luò)攻防世界中攻擊者常使用的攻擊技術(shù)。網(wǎng)絡(luò)上已存在許多功能完備、可供讀者使用的攻擊工具,直接使用攻擊工具有助于讀者快速入門網(wǎng)絡(luò)攻防領(lǐng)域,因此在本部分的每個(gè)章節(jié)中都會(huì)介紹相應(yīng)的攻擊工具。為防止讀者陷入“通過使用工具就可以實(shí)施網(wǎng)絡(luò)攻擊”的誤區(qū),在每一章節(jié)中還會(huì)對(duì)實(shí)施攻擊行為的原理進(jìn)行深入的分析,可以讓讀者了解到實(shí)現(xiàn)攻擊工具的內(nèi)部底層原理。本部分的內(nèi)容建立在讀者對(duì)于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)有一定認(rèn)知的基礎(chǔ)上。本部分中每個(gè)章節(jié)的內(nèi)容相對(duì)獨(dú)立,讀者可選擇感興趣的章節(jié)閱讀。
第4章介紹了網(wǎng)絡(luò)攻擊掃描技術(shù),在網(wǎng)絡(luò)攻擊場景中,搜集攻擊目標(biāo)信息是實(shí)施攻擊行為的重要環(huán)節(jié)之一。讀者通過閱讀本章節(jié)可以掌握攻擊者搜集信息的方法、過程以及途徑。
第5章詳細(xì)介紹了惡意代碼的原理、傳播、實(shí)現(xiàn),惡意代碼的關(guān)鍵性技術(shù)以及分析惡意代碼技術(shù)的方法體系。本章部分涉及對(duì)各類惡意代碼實(shí)現(xiàn)技術(shù)細(xì)節(jié)的分析,僅適合于對(duì)計(jì)算機(jī)體系有一定理解的讀者閱讀。
第6章主要介紹了攻擊者針對(duì)用戶口令的攻擊方式,并以實(shí)際場景中的服務(wù)和軟件為例列舉了幾種常見的口令破解工具?诹罟舻膶(shí)現(xiàn)原理相對(duì)容易被讀者理解,沒有計(jì)算機(jī)基礎(chǔ)的讀者也可以閱讀本章內(nèi)容。
第7章闡述了各類網(wǎng)絡(luò)欺騙攻擊,欺騙攻擊的實(shí)施難度不高,但產(chǎn)生的負(fù)面影響大。理解本章內(nèi)容需要讀者對(duì)計(jì)算機(jī)網(wǎng)絡(luò)有一定的了解,通過本章的學(xué)習(xí)讀者可以采取技術(shù)手段繞過攻擊者的欺騙攻擊。
第8章主要介紹了緩沖區(qū)溢出攻擊的原理,列舉出針對(duì)不同操作系統(tǒng)的典型緩沖區(qū)溢出攻擊實(shí)例,并向讀者推薦了幾類防范緩沖區(qū)溢出攻擊的方法。讀者可以在閱讀過程中實(shí)踐構(gòu)造相應(yīng)的緩沖區(qū)溢出代碼,這有助于讀者深入理解緩沖區(qū)溢出的原理,加強(qiáng)讀者對(duì)于程序運(yùn)行時(shí)系統(tǒng)底層實(shí)現(xiàn)的理解。
第9章介紹了幾類典型的拒絕服務(wù)攻擊,并分析了其實(shí)現(xiàn)原理。拒絕服務(wù)攻擊是攻擊者常使用的網(wǎng)絡(luò)攻擊手段之一,本章內(nèi)容適合對(duì)網(wǎng)絡(luò)協(xié)議有一定了解的讀者學(xué)習(xí)。
第10章介紹了SQL注入攻擊的原理、注入策略、防范方法等。本章適合對(duì)SQL語言有一定了解的讀者學(xué)習(xí),也適合于服務(wù)器端的開發(fā)人員閱讀,用于增強(qiáng)服務(wù)器端的數(shù)據(jù)安全。建議在閱讀過程中配合實(shí)踐,以便在實(shí)際環(huán)境中了解如何實(shí)施SQL注入攻擊。
第三部分網(wǎng)絡(luò)攻擊防范技術(shù)及應(yīng)用
這一部分介紹對(duì)抗網(wǎng)絡(luò)攻擊技術(shù)的防范技術(shù)。信息安全領(lǐng)域中攻擊和防范的聯(lián)系是矛與盾的關(guān)系,通過不斷的攻防對(duì)抗來提升攻防技術(shù)。在本書的第二部分介紹了大量的網(wǎng)絡(luò)攻擊技術(shù),而本部分則著重介紹對(duì)抗網(wǎng)絡(luò)攻擊的防范措施,幫助讀者了解安全從業(yè)人員通過哪些具體的策略實(shí)現(xiàn)對(duì)系統(tǒng)的保護(hù),進(jìn)而對(duì)抗外界的攻擊。
第11章主要介紹了Windows操作系統(tǒng)安全。相較于Linux操作系統(tǒng),Windows操作系統(tǒng)的安全增強(qiáng)功能封裝性更強(qiáng),加之Windows不是開源的操作系統(tǒng),用戶基于Windows進(jìn)行自主開發(fā)的空間較小,因此本章主要介紹了Windows系統(tǒng)已經(jīng)提供的安全防范功能,普通的Windows用戶也可通過本章的閱讀對(duì)自己所使用的Windows系統(tǒng)進(jìn)行安全增強(qiáng)。
第12章介紹了Linux操作系統(tǒng)的安全防護(hù)體系。以操作系統(tǒng)對(duì)于文件權(quán)限管理、用戶認(rèn)證、惡意代碼查殺、協(xié)議安全等幾個(gè)方面的安全加強(qiáng)措施作為切入點(diǎn),幫助讀者了解在對(duì)系統(tǒng)進(jìn)行防范功能增強(qiáng)時(shí),應(yīng)當(dāng)從哪些方面實(shí)施。本章適合對(duì)于Linux操作系統(tǒng)有一定了解的讀者進(jìn)行閱讀。
第13章主要介紹了防火墻的原理及應(yīng)用。隨著硬件設(shè)備互聯(lián)度的增強(qiáng),設(shè)備間邊界逐漸模糊,通過劃分區(qū)域?qū)υO(shè)備進(jìn)行安全隔離的技術(shù)已逐漸退出大眾視野,但防火墻技術(shù)作為一種高級(jí)的訪問控制設(shè)備對(duì)區(qū)域內(nèi)設(shè)備和網(wǎng)絡(luò)的保護(hù)起到了不容忽視的作用。讀者通過閱讀本章可以了解防火墻技術(shù)的實(shí)現(xiàn)部署細(xì)節(jié),可以將其設(shè)計(jì)思路延續(xù)到其他場景的安全防護(hù)中。
第14章主要介紹了入侵檢測的原理及應(yīng)用。通過本章的學(xué)習(xí),讀者可以了解到攻擊者在繞過防火墻的防范后,如何通過檢測系統(tǒng)內(nèi)動(dòng)態(tài)的信息來發(fā)現(xiàn)攻擊行為。入侵檢測技術(shù)的實(shí)現(xiàn)原理在當(dāng)今互聯(lián)的設(shè)備中依舊可以延續(xù)使用,達(dá)到保護(hù)系統(tǒng)整體安全的目的。
第15章主要介紹了數(shù)據(jù)安全及應(yīng)用。數(shù)據(jù)安全是系統(tǒng)防護(hù)的最后保障,保證用戶在受到攻擊后可以快速恢復(fù),繼續(xù)提供服務(wù)。為幫助讀者理解數(shù)據(jù)安全實(shí)現(xiàn)的本質(zhì),本章還介紹幾類不同的文件系統(tǒng)結(jié)構(gòu)和數(shù)據(jù)恢復(fù)的基本原理。
第四部分新型網(wǎng)絡(luò)攻擊防范技術(shù)探索
這一部分介紹了新型的漏洞分析技術(shù),對(duì)新型操作系統(tǒng)的安全機(jī)制進(jìn)行分析。本部分內(nèi)容翔實(shí),涉及計(jì)算機(jī)底層知識(shí),需要讀者在對(duì)計(jì)算機(jī)技術(shù)有較為深入理解的基礎(chǔ)上再進(jìn)行閱讀。本部分需要實(shí)踐操作的內(nèi)容較多,所以在閱讀本部分內(nèi)容時(shí),建議讀者根據(jù)書中的指導(dǎo)進(jìn)行手動(dòng)調(diào)試,更有助于增強(qiáng)理解。
第16章介紹了新型的漏洞分析技術(shù),為了方便讀者理解,對(duì)應(yīng)不同漏洞分析方法配合了相關(guān)的實(shí)例分析。本章的漏洞分析以MS11-010漏洞為例,建議讀者在了解MS11-010漏洞原理的基礎(chǔ)上進(jìn)行學(xué)習(xí)。
第17章介紹了對(duì)于Windows 7、Windows 8以及Windows 10系統(tǒng)的內(nèi)存保護(hù)機(jī)制。需要讀者對(duì)系統(tǒng)底層有充分的了解之后再學(xué)習(xí)內(nèi)存保護(hù)機(jī)制的內(nèi)容,對(duì)本章內(nèi)容理解困難時(shí)建議讀者結(jié)合第8章緩沖區(qū)溢出的知識(shí)進(jìn)行理解。
適合的讀者
信息安全、網(wǎng)絡(luò)空間安全專業(yè)學(xué)生及安全行業(yè)入門者
本書囊括許多攻防工具的實(shí)際操作和系統(tǒng)底層知識(shí)的介紹,有助于初學(xué)者了解安全領(lǐng)域涉及的各類知識(shí),幫助初學(xué)者快速入門。
安全領(lǐng)域研究人員
本書介紹了一些安全領(lǐng)域的研究方法,可以為安全從業(yè)人員進(jìn)行漏洞分析、漏洞挖掘、惡意代碼分析等方面的研究提供一定的幫助。
軟件開發(fā)人員
安全作為軟件開發(fā)的質(zhì)量屬性之一,是開發(fā)人員在設(shè)計(jì)實(shí)現(xiàn)軟件時(shí)必須考慮的重要因素之一。通過閱讀本書可以幫助開發(fā)者了解如何通過編碼加強(qiáng)軟件的安全性。
配套資源與支持
在本書交稿之后,筆者依然擔(dān)心會(huì)因自身語言表達(dá)和理解不足誤導(dǎo)讀者對(duì)于知識(shí)的領(lǐng)悟。由于筆者的寫作水平和寫作時(shí)間有限,書中存在許多不足之處,因此特開通讀者郵箱weipingwen@ss.pku.edu.cn與大家共同交流,如有任何建議和意見歡迎隨時(shí)與筆者聯(lián)系。
本書的配套PPT課件等資源可以下載,關(guān)于本書的使用及課件下載中的問題。
本書的勘誤將不定期發(fā)布(北京大學(xué)軟件安全小組)網(wǎng)站,該網(wǎng)站持續(xù)發(fā)布關(guān)于漏洞評(píng)測等專業(yè)文章,歡迎讀者訪問。
致謝
感謝本書編輯付弘宇老師。在編寫本書期間,她提出了許多建議,由于她細(xì)心付出才使得本書得以順利出版。感謝我的家人對(duì)我一直以來的支持和理解,是他們給了我繼續(xù)學(xué)習(xí)的動(dòng)力。感謝北京大學(xué)軟件安全小組所有成員為本書初期工作付出的努力。感謝我的師兄蔣建春老師對(duì)我的支持,希望我們能繼續(xù)保持在專業(yè)領(lǐng)域的切磋和交流。感謝那些不斷在安全領(lǐng)域進(jìn)行探索的組織和個(gè)人,沒有他們的奉獻(xiàn),筆者無法在安全領(lǐng)域進(jìn)行深入的研究。
作者2017年5月
第一部分網(wǎng)絡(luò)攻防基礎(chǔ)
第1章網(wǎng)絡(luò)安全現(xiàn)狀、問題及其發(fā)展
1.1網(wǎng)絡(luò)安全現(xiàn)狀
1.1.1當(dāng)代網(wǎng)絡(luò)信息戰(zhàn)關(guān)注焦點(diǎn)
1.1.2當(dāng)代網(wǎng)絡(luò)攻擊的特點(diǎn)
1.1.3網(wǎng)絡(luò)安全威脅
1.2網(wǎng)絡(luò)安全發(fā)展
1.2.1網(wǎng)絡(luò)安全發(fā)展趨勢
1.2.2黑客發(fā)展史
1.3信息安全問題
1.3.1安全管理問題分析
1.3.2信息技術(shù)環(huán)境問題分析
1.3.3信息化建設(shè)問題分析
1.3.4人員的安全培訓(xùn)和管理問題分析
1.4信息安全觀發(fā)展
1.5本章小結(jié)
習(xí)題1
第2章網(wǎng)絡(luò)攻擊過程及攻防模型
2.1典型網(wǎng)絡(luò)攻擊過程
2.1.1網(wǎng)絡(luò)攻擊階段
2.1.2網(wǎng)絡(luò)攻擊流程
2.2網(wǎng)絡(luò)攻擊模型
2.3網(wǎng)絡(luò)防護(hù)模型
2.4本章小結(jié)
習(xí)題2
第3章系統(tǒng)漏洞分析及相關(guān)標(biāo)準(zhǔn)
3.1概述
3.1.1系統(tǒng)漏洞相關(guān)概念
3.1.2系統(tǒng)漏洞分析研究現(xiàn)狀
3.1.3漏洞標(biāo)準(zhǔn)
3.2漏洞分析技術(shù)
3.2.1漏洞分析技術(shù)模型
3.2.2信息收集
3.2.3調(diào)試分析
3.2.4利用分析
3.2.5漏洞分析實(shí)踐方法
3.3漏洞利用
3.3.1漏洞研究流程
3.3.2漏洞利用技術(shù)
3.4漏洞分析方向
3.4.1軟件漏洞
3.4.2通信協(xié)議漏洞
3.4.3操作系統(tǒng)典型漏洞
3.4.4應(yīng)用服務(wù)典型漏洞
3.4.5網(wǎng)絡(luò)安全保障系統(tǒng)漏洞
3.4.6信息系統(tǒng)漏洞
3.5漏洞利用實(shí)例
3.5.1瀏覽器漏洞利用
3.5.2Office漏洞利用
3.6本章小結(jié)
習(xí)題3
第二部分網(wǎng)絡(luò)攻擊技術(shù)原理與防范
第4章網(wǎng)絡(luò)攻擊掃描原理與防范
4.1概述
4.1.1目標(biāo)掃描理念
4.1.2目標(biāo)掃描過程
4.1.3目標(biāo)掃描類型
4.1.4目標(biāo)掃描途徑
4.2確定攻擊目標(biāo)方法與工具
4.3主機(jī)掃描技術(shù)
4.4端口掃描技術(shù)
4.4.1端口掃描原理與類型
4.4.2開放掃描
4.4.3隱蔽掃描
4.4.4半開放掃描
4.4.5端口掃描工具
4.5漏洞掃描技術(shù)
4.6操作系統(tǒng)類型信息獲取方法與工具
4.7防范攻擊信息收集方法與工具
4.8反掃描技術(shù)
4.9本章小結(jié)
習(xí)題4
第5章惡意代碼攻擊機(jī)理分析
5.1惡意代碼概述
5.1.1惡意代碼的定義
5.1.2惡意代碼的危害
5.1.3惡意代碼存在原因
5.1.4惡意代碼傳播與發(fā)作
5.1.5惡意代碼攻擊模型
5.2惡意代碼生存技術(shù)
5.3惡意代碼攻擊技術(shù)
5.4惡意代碼的分析技術(shù)方法
5.4.1惡意代碼分析技術(shù)方法概況
5.4.2靜態(tài)分析技術(shù)方法
5.4.3動(dòng)態(tài)分析技術(shù)方法
5.4.4兩種分析技術(shù)比較
5.5典型惡意代碼攻擊與防范
5.5.1典型計(jì)算機(jī)病毒攻擊與防范
5.5.2典型網(wǎng)絡(luò)蠕蟲攻擊與防范
5.5.3典型特洛伊木馬攻擊與防范
5.5.4典型Rootkit攻擊與防范
5.6本章小結(jié)
習(xí)題5
第6章口令攻擊
6.1常用的口令攻擊技術(shù)
6.1.1口令安全分析
6.1.2口令攻擊方法
6.1.3口令字典構(gòu)造
6.1.4網(wǎng)絡(luò)口令破解
6.1.5口令嗅探器
6.2UNIX系統(tǒng)口令攻擊
6.3口令攻擊案例
6.4口令攻擊防范技術(shù)與方法
6.5本章小結(jié)
習(xí)題6
第7章欺騙攻擊
7.1IP欺騙攻擊
7.1.1IP欺騙攻擊的概念
7.1.2IP欺騙攻擊的原理
7.1.3IP欺騙攻擊的實(shí)現(xiàn)過程
7.1.4IP欺騙對(duì)抗
7.2會(huì)話劫持攻擊
7.2.1會(huì)話劫持攻擊的概念
7.2.2TCP會(huì)話劫持
7.2.3HTTP會(huì)話劫持
7.3DNS欺騙攻擊
7.3.1DNS欺騙攻擊的概念
7.3.2DNS欺騙攻擊的原理
7.3.3DNS欺騙攻擊的實(shí)現(xiàn)過程
7.4網(wǎng)絡(luò)釣魚攻擊
7.4.1網(wǎng)絡(luò)釣魚攻擊的概念
7.4.2URL混淆
7.4.3網(wǎng)絡(luò)釣魚攻擊的防范
7.5本章小結(jié)
習(xí)題7
第8章緩沖區(qū)溢出攻擊與防范
8.1緩沖區(qū)溢出攻擊的相關(guān)概念與發(fā)展歷程
8.1.1緩沖區(qū)溢出攻擊的相關(guān)概念
8.1.2緩沖區(qū)溢出攻擊類型
8.1.3緩沖區(qū)溢出攻擊的發(fā)展歷史
8.1.4緩沖區(qū)溢出的危害
8.2緩沖區(qū)溢出攻擊技術(shù)原理剖析
8.2.1堆棧溢出攻擊技術(shù)
8.2.2堆溢出攻擊技術(shù)
8.2.3整型溢出攻擊技術(shù)
8.2.4格式化字符串溢出攻擊技術(shù)
8.2.5單字節(jié)溢出攻擊技術(shù)
8.3溢出保護(hù)技術(shù)
8.4緩沖區(qū)溢出攻擊典型實(shí)例
8.4.1緩沖區(qū)攻擊實(shí)例For Windows
8.4.2緩沖區(qū)攻擊實(shí)例For UNIX
8.4.3緩沖區(qū)攻擊實(shí)例For Linux
8.4.4緩沖區(qū)攻擊實(shí)例For Sun Solaris 2.4
8.5Windows操作系統(tǒng)緩沖區(qū)溢出攻擊防范技術(shù)
8.5.1Windows下實(shí)現(xiàn)緩沖區(qū)溢出的必要條件
8.5.2Win32函數(shù)調(diào)用與Windows下緩沖區(qū)溢出攻擊的關(guān)系
8.5.3Win32函數(shù)截獲和檢測基本策略實(shí)現(xiàn)
8.6其他緩沖區(qū)溢出攻擊防范技術(shù)
8.7本章小結(jié)
習(xí)題8
第9章拒絕服務(wù)攻擊與防范
9.1拒絕服務(wù)攻擊概述
9.1.1拒絕服務(wù)攻擊的概念
9.1.2攻擊者動(dòng)機(jī)
9.2DDoS攻擊的典型過程
9.3拒絕服務(wù)攻擊技術(shù)及分類
9.4拒絕服務(wù)攻擊的防范
9.4.1拒絕服務(wù)攻擊的防御
9.4.2拒絕服務(wù)攻擊的檢測
9.4.3拒絕服務(wù)攻擊的追蹤
9.5拒絕服務(wù)攻擊的發(fā)展趨勢
9.5.1攻擊程序的安裝
9.5.2攻擊程序的利用
9.5.3攻擊的影響
9.6本章小結(jié)
習(xí)題9
第10章SQL注入攻擊與防范
10.1SQL注入攻擊背景、危害與原理
10.1.1SQL注入攻擊背景
10.1.2SQL注入攻擊危害
10.1.3SQL注入攻擊原理
10.1.4SQL注入攻擊場景
10.2SQL注入技術(shù)方法與工具
10.2.1SQL注入技術(shù)
10.2.2SQL注入攻擊過程
10.2.3SQL注入方法類型
10.2.4SQL注入攻擊軟件
10.3SQL注入攻擊防范技術(shù)方法
10.4實(shí)戰(zhàn)案例——利用SQL注入獲取管理員口令
10.5本章小結(jié)
習(xí)題10
第三部分網(wǎng)絡(luò)攻擊防范技術(shù)及應(yīng)用
第11章Windows系統(tǒng)安全
11.1Windows安全框架
11.2用戶賬戶安全
11.3文件系統(tǒng)安全
11.4網(wǎng)絡(luò)服務(wù)安全
11.5本章小結(jié)
習(xí)題11
第12章Linux系統(tǒng)安全
12.1Linux安全框架
12.2LSM
12.2.1LSM簡介
12.2.2LSM設(shè)計(jì)思想
12.2.3LSM接口說明
12.3SELinux體系
12.3.1Linux與SELinux的區(qū)別
12.3.2Flask安全框架
12.3.3SELinux安全功能
12.4文件權(quán)限管理
12.5PAM用戶認(rèn)證機(jī)制
12.6殺毒應(yīng)用程序
12.7Linux網(wǎng)絡(luò)傳輸協(xié)議安全
12.8本章小結(jié)
習(xí)題12
第13章防火墻技術(shù)原理及應(yīng)用
13.1防火墻工作機(jī)制與用途
13.1.1防火墻的概念
13.1.2防火墻的原理
13.2防火墻核心技術(shù)與分類
13.3防火墻防御體系結(jié)構(gòu)類型
13.3.1基于雙宿主主機(jī)的防火墻結(jié)構(gòu)
13.3.2基于代理型的防火墻結(jié)構(gòu)
13.3.3基于屏蔽子網(wǎng)的防火墻結(jié)構(gòu)
13.4防火墻主要技術(shù)參數(shù)
13.5防火墻產(chǎn)品類型、局限性與發(fā)展
13.5.1防火墻產(chǎn)品分類
13.5.2開源代碼防火墻
13.5.3防火墻的局限性
13.6防火墻部署過程與典型應(yīng)用模式
13.6.1防火墻部署的基本方法與步驟
13.6.2防火墻典型部署模式
13.7本章小結(jié)
習(xí)題13
第14章入侵檢測的原理及應(yīng)用
14.1入侵檢測概述
14.1.1入侵檢測技術(shù)背景
14.1.2入侵檢測技術(shù)模型
14.1.3入侵檢測技術(shù)的現(xiàn)狀及發(fā)展
14.2入侵檢測技術(shù)
14.2.1基于誤用的入侵檢測技術(shù)
14.2.2基于異常的入侵檢測技術(shù)
14.3入侵檢測系統(tǒng)的結(jié)構(gòu)與分類
14.4常見的入侵檢測系統(tǒng)及評(píng)估
14.4.1入侵檢測系統(tǒng)設(shè)計(jì)
14.4.2入侵檢測系統(tǒng)評(píng)估
14.4.3入侵檢測系統(tǒng)介紹
14.5本章小結(jié)
習(xí)題14
第15章數(shù)據(jù)安全及應(yīng)用
15.1數(shù)據(jù)安全基礎(chǔ)
15.1.1數(shù)據(jù)存儲(chǔ)技術(shù)
15.1.2數(shù)據(jù)恢復(fù)技術(shù)
15.2FAT文件系統(tǒng)
15.2.1硬盤區(qū)域的組織
15.2.2根目錄下文件的管理
15.2.3子目錄的管理
15.2.4文件的刪除
15.2.5子目錄的刪除
15.2.6分區(qū)快速高級(jí)格式化
15.2.7分區(qū)完全高級(jí)格式化
15.3NTFS文件系統(tǒng)
15.3.1NTFS文件系統(tǒng)基礎(chǔ)
15.3.2NTFS文件系統(tǒng)的層次模型
15.3.3NTFS文件系統(tǒng)的特性分析
15.3.4Windows NT 4.0的磁盤分區(qū)
15.3.5Windows 2000后的磁盤分區(qū)
15.3.6NTFS文件系統(tǒng)結(jié)構(gòu)分析
15.3.7NTFS的性能
15.4數(shù)據(jù)恢復(fù)
15.4.1數(shù)據(jù)恢復(fù)的定義
15.4.2數(shù)據(jù)恢復(fù)的原理
15.4.3主引導(dǎo)記錄的恢復(fù)
15.4.4分區(qū)的恢復(fù)
15.4.50磁道損壞的修復(fù)
15.4.6硬盤邏輯鎖的處理
15.4.7磁盤壞道的處理
15.4.8DBR的恢復(fù)
15.4.9FAT表的恢復(fù)
15.4.10數(shù)據(jù)的恢復(fù)
15.5文檔修復(fù)
15.5.1文檔修復(fù)的定義
15.5.2Windows常見文檔類型
15.5.3辦公文檔修復(fù)
15.5.4影音文檔修復(fù)
15.5.5壓縮文檔修復(fù)
15.5.6文檔修復(fù)的局限
15.6數(shù)據(jù)安全與數(shù)據(jù)備份
15.6.1文件文檔保護(hù)
15.6.2數(shù)據(jù)刪除安全
15.6.3數(shù)據(jù)備份的定義
15.6.4數(shù)據(jù)備份方案比較
15.6.5系統(tǒng)數(shù)據(jù)的備份方法
15.6.6用戶數(shù)據(jù)的備份方法
15.6.7數(shù)據(jù)備份注意事項(xiàng)
15.7本章小結(jié)
習(xí)題15
第四部分新型網(wǎng)絡(luò)攻擊防范技術(shù)探索
第16章新型漏洞分析
16.1參考安全補(bǔ)丁的漏洞分析技術(shù)
16.1.1參考安全補(bǔ)丁的漏洞分析方法實(shí)現(xiàn)原理
16.1.2參考安全補(bǔ)丁的漏洞分析方法形式化描述
16.1.3參考安全補(bǔ)丁的漏洞分析方法實(shí)例分析
16.2系統(tǒng)內(nèi)核函數(shù)無序調(diào)用漏洞分析技術(shù)
16.3本章小結(jié)
習(xí)題16
第17章新型操作系統(tǒng)內(nèi)存安全機(jī)制分析
17.1Windows 7的內(nèi)存保護(hù)機(jī)制
17.1.1GS保護(hù)機(jī)制分析
17.1.2SafeSEH及SEHOP分析
17.1.3DEP機(jī)制分析
17.1.4ASLR分析
17.2Windows 8的內(nèi)存保護(hù)機(jī)制
17.3Windows 7內(nèi)存保護(hù)機(jī)制脆弱性分析
17.4Windows 8傳統(tǒng)內(nèi)存保護(hù)機(jī)制脆弱性分析
17.5Windows 7內(nèi)存保護(hù)機(jī)制測試案例
17.5.1GS保護(hù)脆弱性測試
17.5.2SafeSEH和SEHOP脆弱性測試
17.5.3ASLR脆弱性測試
17.5.4DEP脆弱性測試
17.6Windows 8內(nèi)存保護(hù)機(jī)制測試案例
17.6.1GS保護(hù)脆弱性測試
17.6.2SafeSEH及SEHOP測試
17.6.3DEP測試
17.6.4ASLR測試
17.7Windows 10安全保護(hù)新特性
17.7.1CFG控制流防護(hù)機(jī)制
17.7.2字體防護(hù)增強(qiáng)
17.8本章小結(jié)
習(xí)題17
參考文獻(xiàn)
第5章惡意代碼攻擊機(jī)理分析第5章惡意代碼攻擊機(jī)理分析
5.1惡意代碼概述5.1.1惡意代碼的定義計(jì)算機(jī)病毒是早期主要形式的惡意代碼。在20世紀(jì)80年代,計(jì)算機(jī)病毒誕生,它是早期惡意代碼的主要內(nèi)容,由Adleman命名、Cohen設(shè)計(jì)出的一種在運(yùn)行過程中具有復(fù)制自身功能的破壞性程序。在這之后,病毒被Adleman定義為一個(gè)具有相同性質(zhì)的程序集合,只要程序具有破壞、傳染或模仿的特點(diǎn),就可認(rèn)為是計(jì)算機(jī)病毒。這種定義使得病毒內(nèi)涵被賦予了擴(kuò)大化的傾向,將任意帶有破壞性的程序都認(rèn)為是病毒,掩蓋了病毒潛伏、傳染等其他重要特征。20世紀(jì)90年代末,隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展進(jìn)步,惡意代碼(Malicious Code)的定義也被逐漸擴(kuò)充并豐富起來,惡意代碼被Grimes定義為從一臺(tái)計(jì)算機(jī)系統(tǒng)到另外一臺(tái)計(jì)算機(jī)系統(tǒng)未經(jīng)授權(quán)認(rèn)證,經(jīng)過存儲(chǔ)介質(zhì)和網(wǎng)絡(luò)進(jìn)行傳播的破壞計(jì)算機(jī)系統(tǒng)完整性的程序或代碼。計(jì)算機(jī)病毒(Computer Virus)、蠕蟲(Worms)、特洛伊木馬(Trojan Horse)、邏輯炸彈(Logic Bombs)、病菌(Bacteria)、用戶級(jí)RootKit、核心級(jí)RootKit、腳本惡意代碼(Malicious Scripts)和惡意Active X控件等都屬于惡意代碼。
因此可以總結(jié)出惡意代碼兩個(gè)顯著的特點(diǎn): 非授權(quán)性和破壞性。表51列舉了惡意代碼的幾個(gè)主要類型及關(guān)于其自身的定義說明和特點(diǎn)。
5.1.2惡意代碼的危害
惡意代碼問題不但造成了企業(yè)和眾多用戶巨大的經(jīng)濟(jì)損失,還對(duì)國家的安全產(chǎn)生了嚴(yán)重的威脅。目前國際上一些發(fā)達(dá)國家都投入大量資金和人力對(duì)惡意代碼領(lǐng)域的問題進(jìn)行了長期深度的研究,同時(shí)在某種程度上取得了顯著的技術(shù)成果。1991年的海灣戰(zhàn)爭,據(jù)報(bào)道,伊拉克從國外購買的打印機(jī)被美國植入了可遠(yuǎn)程控制的惡意代碼,這使得戰(zhàn)爭還沒打響之前就造成了伊拉克整個(gè)計(jì)算機(jī)網(wǎng)絡(luò)管理的雷達(dá)預(yù)警系統(tǒng)全部癱瘓。這是美國第一次公開在表51主要惡意代碼的相關(guān)定義惡意代碼類型相關(guān)定義說明特點(diǎn)計(jì)算機(jī)病毒指編制或在計(jì)算機(jī)程序中插入的破壞計(jì)算機(jī)功能或毀壞數(shù)據(jù)、影響計(jì)算機(jī)使用,并能自我復(fù)制的一組計(jì)算機(jī)指令或程序代碼潛伏、傳染和破壞計(jì)算機(jī)蠕蟲指通過網(wǎng)絡(luò)自我復(fù)制、消耗系統(tǒng)和網(wǎng)絡(luò)資源的程序掃描、攻擊和擴(kuò)散特洛伊木馬指一種與連接遠(yuǎn)程計(jì)算機(jī)通過網(wǎng)絡(luò)控制本地計(jì)算機(jī)的程序欺騙、隱蔽和信息竊取邏輯炸彈指一段嵌入計(jì)算機(jī)系統(tǒng)程序的、通過特殊的數(shù)據(jù)或時(shí)間作為條件完成破壞功能的程序潛伏和破壞病菌指不依賴于系統(tǒng)軟件自我復(fù)制和傳播,以消耗系統(tǒng)資源為目的的程序傳染和拒絕服務(wù)用戶級(jí)RootKit指通過替代或修改被執(zhí)行的程序進(jìn)入系統(tǒng),從而實(shí)現(xiàn)隱藏和創(chuàng)建后門的程序隱蔽、潛伏核心級(jí)RootKit指嵌入操作系統(tǒng)內(nèi)核進(jìn)行隱藏和創(chuàng)建后門的程序隱蔽、潛伏
實(shí)戰(zhàn)中利用惡意代碼攻擊技術(shù)獲得的重大軍事利益。在Internet安全事件中,由惡意代碼造成的經(jīng)濟(jì)損失居第一位。
5.1.3惡意代碼存在原因
計(jì)算機(jī)技術(shù)飛速發(fā)展的同時(shí)并未使系統(tǒng)的安全性得到增強(qiáng)。計(jì)算機(jī)技術(shù)的進(jìn)步帶來的安全增強(qiáng)能力最多只能對(duì)由應(yīng)用環(huán)境的復(fù)雜性帶來的安全威脅的增長程度進(jìn)行一定的彌補(bǔ)。除此之外,計(jì)算機(jī)新技術(shù)的出現(xiàn)或許會(huì)讓計(jì)算機(jī)系統(tǒng)的安全性降低。AT&T實(shí)驗(yàn)室的S. Bellovin曾經(jīng)對(duì)美國CERT提供的安全報(bào)告進(jìn)行過分析,分析結(jié)果表明,大約50%的計(jì)算機(jī)網(wǎng)絡(luò)安全問題是由軟件工程中產(chǎn)生的安全缺陷引起的,其中,很多問題的根源都來自操作系統(tǒng)的安全脆弱性。
互聯(lián)網(wǎng)的飛速發(fā)展成為惡意代碼廣泛傳播成長的溫室。互聯(lián)網(wǎng)自身的開放性,缺乏中心控制性和全局視圖能力的特點(diǎn),使得網(wǎng)絡(luò)主機(jī)處在一個(gè)受不到統(tǒng)一保護(hù)的環(huán)境中。Bellovin等認(rèn)為計(jì)算機(jī)和網(wǎng)絡(luò)系統(tǒng)自身存在的設(shè)計(jì)缺陷,會(huì)導(dǎo)致安全隱患的發(fā)生。
針對(duì)性是惡意代碼的主要特征之一,即特定的脆弱點(diǎn)的針對(duì)性,這充分說明了惡意代碼實(shí)現(xiàn)其惡意目的正是建立在軟件的脆弱性基礎(chǔ)上的。歷史上產(chǎn)生廣泛影響的1988年Morris蠕蟲事件,入侵的最初突破點(diǎn)就是利用的郵件系統(tǒng)的脆弱性。
雖然人們做了諸多努力來保證系統(tǒng)和網(wǎng)絡(luò)基礎(chǔ)設(shè)施的安全,但令人遺憾的是,系統(tǒng)的脆弱性仍然無法避免。各種安全措施只能減少,但不能杜絕系統(tǒng)的脆弱性; 而測試手段也只能證明系統(tǒng)存在脆弱性,卻無法證明系統(tǒng)不存在脆弱性。更何況,為了實(shí)際需求的滿足,信息系統(tǒng)規(guī)模的逐漸擴(kuò)大,會(huì)使安全脆弱性的問題越來越明顯。隨著逐步發(fā)現(xiàn)這些脆弱性,針對(duì)這些脆弱性的新的惡意代碼將會(huì)層出不窮。
總體來講,許多不可避免的安全問題和安全脆弱性存在于信息系統(tǒng)的各個(gè)層次結(jié)構(gòu)中,包括從底層的操作系統(tǒng)到上層的網(wǎng)絡(luò)應(yīng)用在內(nèi)的各個(gè)層次。這些安全脆弱性的不可避免,也是惡意代碼必然存在的原因。
5.1.4惡意代碼傳播與發(fā)作
如今的信息社會(huì),信息共享是大勢所趨,而惡意代碼入侵最常見的途徑則是信息共享引起的信息流動(dòng)。惡意代碼的入侵途徑各種各樣,如從Internet上下載的程序自身也許就帶有惡意代碼、接收已經(jīng)感染惡意代碼的電子郵件、從光盤或軟盤向系統(tǒng)上安裝攜帶惡意代碼的軟件、黑客或攻擊者故意將惡意代碼植入系統(tǒng)等。
通過用戶執(zhí)行該惡意代碼或已被惡意感染的可執(zhí)行代碼,從而使得惡意代碼得以執(zhí)行,進(jìn)而將自身或自身的變體植入其他可執(zhí)行程序中,就造成了惡意代碼感染。被執(zhí)行的惡意代碼在完成自身傳播、具有足夠的權(quán)限并滿足某些條件時(shí),就會(huì)發(fā)作同時(shí)進(jìn)行破壞活動(dòng),造成信息丟失或泄密等。
惡意代碼的入侵和發(fā)作需要在盜用系統(tǒng)或應(yīng)用進(jìn)程的合法權(quán)限基礎(chǔ)上才可以實(shí)現(xiàn)。隨著Internet開放程度越來越高,信息共享和交流也越來越強(qiáng),惡意代碼編寫水平也越來越高,可被惡意代碼利用的系統(tǒng)和網(wǎng)絡(luò)的脆弱性也越來越多,從而使惡意代碼越來越具有欺騙性和隱蔽性。重要的是,新的惡意代碼總是在惡意代碼的檢測技術(shù)前出現(xiàn),這也就是由Cohen和Adelman提出的“惡意代碼通用檢測方法的不可判定性”的結(jié)論。首先人們很難將正常代碼和惡意代碼區(qū)別開,其次對(duì)許多信息系統(tǒng)沒有必要的保護(hù)措施。所以,人們經(jīng)常被惡意代碼所蒙蔽,從而在無意中執(zhí)行了惡意代碼。在CERT統(tǒng)計(jì)數(shù)據(jù)中,其中因被欺騙或誤用從而發(fā)生的惡意代碼事件達(dá)到所有惡意代碼事件的90%。只要某些條件被滿足,惡意代碼就會(huì)發(fā)作,甚至大規(guī)模傳播。
雖然越來越多的惡意代碼安全事件通過Internet發(fā)生,但是惡意代碼卻早就已經(jīng)出現(xiàn)。多年來,攻擊者致力于對(duì)具有更強(qiáng)攻擊能力和生存能力的惡意代碼的研究。
5.1.5惡意代碼攻擊模型
惡意代碼行為各不相同,破壞程度也不盡相同,但它們的作用機(jī)制基本大致相同,作用過程可大概分為6個(gè)部分。
① 侵入系統(tǒng)。惡意代碼實(shí)現(xiàn)其惡意目的的第一步必然是入侵系統(tǒng)。惡意代碼侵入系統(tǒng)有許多途徑,如從互聯(lián)網(wǎng)下載的程序其自身也許就帶有惡意代碼、接收了已被惡意感染的電子郵件、通過光盤或軟盤在系統(tǒng)上安裝的軟件、攻擊者故意植入系統(tǒng)的惡意代碼等。
② 維持或提升已有的特權(quán)。惡意代碼的傳播與破壞需要建立在盜用用戶或進(jìn)程的權(quán)限合法的基礎(chǔ)之上。
③ 隱蔽策略。為了隱蔽已經(jīng)入侵的惡意代碼,可能會(huì)對(duì)惡意代碼進(jìn)行改名、刪除源文件或修改系統(tǒng)的安全策略。
④ 潛伏。惡意代碼侵入系統(tǒng)后,在具有足夠的權(quán)限并滿足某些條件時(shí),就會(huì)發(fā)作同時(shí)進(jìn)行破壞活動(dòng)。
⑤ 破壞。惡意代碼具有破壞性的本質(zhì),為的是造成信息丟失、泄密,系統(tǒng)完整性被破壞等。
⑥ 重復(fù)①~⑤對(duì)新的目標(biāo)實(shí)施攻擊過程。惡意代碼的攻擊模型如圖51所示。
圖51惡意代碼的攻擊模型惡意代碼的攻擊過程可以存在于惡意代碼攻擊模型中的部分或全部。例如,①④⑤⑥存在于計(jì)算機(jī)病毒行為,①②⑤⑥存在于網(wǎng)絡(luò)蠕蟲,①②③⑤存在于特洛伊木馬,①④⑤存在于邏輯炸彈,①⑤⑥存在于病菌,①②③⑤存在于用戶級(jí)RootKit,①③⑤存在于核心級(jí)RootKit,其他的惡意代碼行為也可以映射到模型中的相應(yīng)部分,其中①和⑤是必不可少的。
5.2惡意代碼生存技術(shù)
1. 反跟蹤技術(shù)
惡意代碼靠采用反跟蹤技術(shù)來提高自身的偽裝能力和防破譯能力,使檢測與清除惡意代碼的難度大大增加。反跟蹤技術(shù)大致可以分為兩大類: 反動(dòng)態(tài)跟蹤技術(shù)和反靜態(tài)分析技術(shù)。
1) 反動(dòng)態(tài)跟蹤技術(shù)
(1) 禁止跟蹤中斷。惡意代碼通過修改程序的入口地址對(duì)調(diào)試分析工具運(yùn)行系統(tǒng)的單步中斷與斷點(diǎn)中斷服務(wù)程序來實(shí)現(xiàn)其反跟蹤的目的。
(2) 封鎖鍵盤輸入和屏幕顯示,使跟蹤調(diào)試工具運(yùn)行的必需環(huán)境被破壞。
(3) 檢測跟蹤法。根據(jù)檢測跟蹤調(diào)試和正常執(zhí)行二者的運(yùn)行環(huán)境、中斷入口和時(shí)間不同,各自采取相應(yīng)的措施實(shí)現(xiàn)其反跟蹤目的。
(4) 其他技術(shù),如指令流隊(duì)列法和逆指令流法等。
2) 反靜態(tài)分析技術(shù)
(1) 對(duì)程序代碼分塊加密執(zhí)行。為了不讓程序代碼通過反匯編進(jìn)行靜態(tài)分析,將以分塊的程序代碼以密文形式裝入內(nèi)存,由解密程序在執(zhí)行時(shí)進(jìn)行譯碼,立即清除執(zhí)行完畢后的代碼,力求分析者在任何時(shí)候都無法從內(nèi)存中獲得執(zhí)行代碼完整形式。
(2) 偽指令法。偽指令法是指將“廢指令”插入指令流中,讓靜態(tài)反匯編得不到全部正常的指令,進(jìn)而不能進(jìn)行有效的靜態(tài)分析。例如,Apparition是一種基于編譯器變形的Win32平臺(tái)的病毒,每次新的病毒體可執(zhí)行代碼被編譯器編譯出時(shí)要被插入一定數(shù)量的偽指令,不僅使其變形,而且實(shí)現(xiàn)了反跟蹤的目的。不僅如此,該技術(shù)還在宏病毒與腳本惡意代碼中應(yīng)用廣泛。
……
你還可能感興趣
我要評(píng)論
|