從這一節(jié)開始,我們就真正踏上學(xué)習黑客的道路了,首先要介紹的是作為一名初級黑客所必須掌握的基本技能,學(xué)習這可以通過這一節(jié)的閱讀了解到黑客并不神秘,而且學(xué)習起來很容易上手。為了保證初學(xué)者對黑客的興趣,所以本書采取了循環(huán)式進度,也就是說每一章節(jié)的內(nèi)容都是獨立、全面的,學(xué)習者只有完整的學(xué)習過一章的內(nèi)容,才能夠進而學(xué)習下一章的內(nèi)容。
一、了解一定量的英文:
學(xué)習英文對于黑客來說非常重要,因為現(xiàn)在大多數(shù)資料和教程都是英文版本,而且有關(guān)黑客的新聞也是從國外過來的,一個漏洞從發(fā)現(xiàn)到出現(xiàn)中文介紹,需要大約一個星期的時間,在這段時間內(nèi)網(wǎng)絡(luò)管理員就已經(jīng)有足夠的時間修補漏洞了,所以當我們看到中文介紹的時候,這個漏洞可能早就已經(jīng)不存在了。因此學(xué)習黑客從一開始就要盡量閱讀英文資料、使用英文軟件、并且及時關(guān)注國外著名的網(wǎng)絡(luò)安全網(wǎng)站。
二、學(xué)會基本軟件的使用:
這里所說的基本軟件是指兩個內(nèi)容:一個是我們?nèi)粘J褂玫母鞣N電腦常用命令,例如ftp、ping、net等;另一方面還要學(xué)會有關(guān)黑客工具的使用,這主要包括端口掃描器、漏洞掃描器、信息截獲工具和密碼破解工具等。因為這些軟件品種多,功能各不相同,所以本書在后面將會介紹幾款流行的軟件使用方法,學(xué)習者在掌握其基本原理以后,既可以選擇適合自己的,也可以在“第二部分”中找到有關(guān)軟件的開發(fā)指南,編寫自己的黑客工具。
三、初步了解網(wǎng)絡(luò)協(xié)議和工作原理:
所謂“初步了解”就是“按照自己的理解方式”弄明白網(wǎng)絡(luò)的工作原理,因為協(xié)議涉及的知識多且復(fù)雜,所以如果在一開始就進行深入研究,勢必會大大挫傷學(xué)習積極性。在這里我建議學(xué)習者初步了解有關(guān)tcp/ip協(xié)議,尤其是瀏覽網(wǎng)頁的時候網(wǎng)絡(luò)是如何傳遞信息、客戶端瀏覽器如何申請“握手信息”、服務(wù)器端如何“應(yīng)答握手信息”并“接受請求”等內(nèi)容,此部分內(nèi)容將會在后面的章節(jié)中進行具體介紹。
四、熟悉幾種流行的編程語言和腳本:
同上面所述一樣,這里也不要求學(xué)習者進行深入學(xué)習,只要能夠看懂有關(guān)語言、知道程序執(zhí)行結(jié)果就可以了。建議學(xué)習者初步學(xué)習C語言、asp和cgi腳本語言,另外對于htm超文本語言和php、java等做基本了解,主要學(xué)習這些語言中的“變量”和“數(shù)組”部分,因為語言之間存在內(nèi)在聯(lián)系,所以只要熟練掌握其中一們,其他語言也可以一脈相同,建議學(xué)習C語言和htm超文本語言。
基本理論和基本知識
網(wǎng)絡(luò)安全術(shù)語解釋
一、協(xié)議:
網(wǎng)絡(luò)是一個信息交換的場所,所有接入網(wǎng)絡(luò)的計算機都可以通過彼此之間的物理連設(shè)備行信息交換,這種物理設(shè)備包括最常見的電纜、光纜、無線WAP和微波等,但是單純擁有這些物理設(shè)備并不能實現(xiàn)信息的交換,這就好像人類的身體不能缺少大腦的支配一樣,信息交換還要具備軟件環(huán)境,這種“軟件環(huán)境”是人類實現(xiàn)規(guī)定好的一些規(guī)則,被稱作“協(xié)議”,有了協(xié)議,不同的電腦可以遵照相同的協(xié)議使用物理設(shè)備,并且不會造成相互之間的“不理解”。
這種協(xié)議很類似于“摩爾斯電碼”,簡單的一點一橫,經(jīng)過排列可以有萬般變化,但是假如沒有“對照表”,誰也無法理解一分雜亂無章的電碼所表述的內(nèi)容是什么。電腦也是一樣,它們通過各種預(yù)先規(guī)定的協(xié)議完成不同的使命,例如RFC1459協(xié)議可以實現(xiàn)IRC服務(wù)器與客戶端電腦的通信。因此無論是黑客還是網(wǎng)絡(luò)管理員,都必須通過學(xué)習協(xié)議達到了解網(wǎng)絡(luò)運作機理的目的。
每一個協(xié)議都是經(jīng)過多年修改延續(xù)使用至今的,新產(chǎn)生的協(xié)議也大多是在基層協(xié)議基礎(chǔ)上建立的,因而協(xié)議相對來說具有較高的安全機制,黑客很難發(fā)現(xiàn)協(xié)議中存在的安全問題直接入手進行網(wǎng)絡(luò)攻擊。但是對于某些新型協(xié)議,因為出現(xiàn)時間短、考慮欠周到,也可能會因安全問題而被黑客利用。
二、服務(wù)器與客戶端:
最簡單的網(wǎng)絡(luò)服務(wù)形式是:若干臺電腦做為客戶端,使用一臺電腦當作服務(wù)器,每一個客戶端都具有向服務(wù)器提出請求的能力,而后由服務(wù)器應(yīng)答并完成請求的動作,最后服務(wù)器會將執(zhí)行結(jié)果返回給客戶端電腦。這樣的協(xié)議很多。例如我們平時接觸的電子郵件服務(wù)器、網(wǎng)站服務(wù)器、聊天室服務(wù)器等都屬于這種類型。另外還有一種連接方式,它不需要服務(wù)器的支持,而是直接將兩個客戶端電腦進行連接,也就是說每一臺電腦都既是服務(wù)器、又是客戶端,它們之間具有相同的功能,對等的完成連接和信息交換工作。例如DCC傳輸協(xié)議即屬于此種類型。
從此看出,客戶端和服務(wù)器分別是各種協(xié)議中規(guī)定的請求申請電腦和應(yīng)答電腦。作為一般的上網(wǎng)用戶,都是操作著自己的電腦(客戶端),別且向網(wǎng)絡(luò)服務(wù)器發(fā)出常規(guī)請求完成諸如瀏覽網(wǎng)頁、收發(fā)電子郵件等動作的,而對于黑客來說則是通過自己的電腦(客戶端)對其他電腦(有可能是客戶端,也有可能是服務(wù)器)進行攻擊,以達到入侵、破壞、竊取信息的目的。
三、系統(tǒng)與系統(tǒng)環(huán)境:
電腦要運作必須安裝操作系統(tǒng),如今流行的操作系統(tǒng)主要由UNIX、Linux、Mac、BSD、Windows2000、Windows95/98/Me、Windows NT等,這些操作系統(tǒng)各自獨立運行,它們有自己的文件管理、內(nèi)存管理、進程管理等機制,在網(wǎng)絡(luò)上,這些不同的操作系統(tǒng)既可以作為服務(wù)器、也可以作為客戶端被使用者操作,它們之間通過“協(xié)議”來完成信息的交換工作。
四、IP地址和端口:
我們上網(wǎng),可能會同時瀏覽網(wǎng)頁、收發(fā)電子郵件、進行語音聊天……如此多的網(wǎng)絡(luò)服務(wù)項目,都是通過不同的協(xié)議完成的,然而網(wǎng)絡(luò)如此之大,我們的電腦怎么能夠找到服務(wù)項目所需要的電腦?如何在一臺電腦上同時完成如此多的工作的呢?這里就要介紹到IP地址了。
每一臺上網(wǎng)的電腦都具有獨一無二的IP地址,這個地址類似于生活中人們的家庭地址,通過網(wǎng)絡(luò)路由器等多種物理設(shè)備(無需初級學(xué)習者理解),網(wǎng)絡(luò)可以完成從一個電腦到另一個電腦之間的信息交換工作,因為他們的IP地址不同,所以不會出現(xiàn)找不到目標的混亂局面。但是黑客可以通過特殊的方法偽造自己電腦的IP地址,這樣當服務(wù)器接受到黑客電腦(偽IP地址)的請求后,服務(wù)器會將應(yīng)答信息傳送到偽IP地址上,從而造成網(wǎng)絡(luò)的混亂。當然,黑客也可以根據(jù)IP地址輕易的找到任何上網(wǎng)者或服務(wù)器,進而對他們進行攻擊(想想現(xiàn)實中的入室搶劫),因而如今我們會看到很多關(guān)于《如何隱藏自己IP地址》的文章。
接下來我解釋一下上面提到的第二個問題:一臺電腦上為什么能同時使用多種網(wǎng)絡(luò)服務(wù)。這好像北京城有八個城門一樣,不同的協(xié)議體現(xiàn)在不同的網(wǎng)絡(luò)服務(wù)上,而不同的網(wǎng)絡(luò)服務(wù)則會在客戶端電腦上開辟不同的端口(城門)來完成它的信息傳送工作。當然,如果一臺網(wǎng)絡(luò)服務(wù)器同時開放了多種網(wǎng)絡(luò)服務(wù),那么它也要開放多個不同的端口(城門)來接納不同的客戶端請求。
網(wǎng)絡(luò)上經(jīng)常聽到的“后門”就是這個意思,黑客通過特殊機能在服務(wù)器上開辟了一個網(wǎng)絡(luò)服務(wù),這個服務(wù)可以用來專門完成黑客的目的,那么服務(wù)器上就會被打開一個新的端口來完成這種服務(wù),因為這個端口是供黑客使用的,因而輕易不會被一般上網(wǎng)用戶和網(wǎng)絡(luò)管理員發(fā)現(xiàn),即“隱藏的端口”,故“后門”。
每一臺電腦都可以打開65535個端口,因而理論上我們可以開發(fā)出至少65535種不同的網(wǎng)絡(luò)服務(wù),然而實際上這個數(shù)字非常大,網(wǎng)絡(luò)經(jīng)常用到的服務(wù)協(xié)議不過幾十個,例如瀏覽網(wǎng)頁客戶端和服務(wù)端都使用的是80號端口,進行IRC聊天則在服務(wù)端使用6667端口、客戶端使用1026端口等。