經典的網絡安全技術

***的種類和行爲

以我的理解,“***”大體上應該分爲“正”、“邪”兩類,正派***依靠自己掌握的知識幫助系統管理員找出系統中的漏洞並加以完善,而邪派***則是通過各種***技能對系統進行***、***或者做其他一些有害於網絡的事情,因爲邪派***所從事的事情違背了《***守則》,所以他們真正的名字叫“駭客”(Cracker)而非“***”(Hacker),也就是我們平時經常聽說的“***”(Cacker)和“紅客”(Hacker)。***的行爲主要有以下幾種:
經典的網絡安全技術

一、學習技術:

互聯網上的新技術一旦出現,***就必須立刻學習,並用最短的時間掌握這項技術,這裏所說的掌握並不是一般的瞭解,而是閱讀有關的“協議”(rfc)、深入瞭解此技術的機理,否則一旦停止學習,那麼依靠他以前掌握的內容,並不能維持他的“***身份”超過一年。
初級***要學習的知識是比較困難的,因爲他們沒有基礎,所以學習起來要接觸非常多的基本內容,然而今天的互聯網給讀者帶來了很多的信息,這就需要初級學習者進行選擇:太深的內容可能會給學習帶來困難;太“花哨”的內容又對學習***沒有用處。所以初學者不能貪多,應該儘量尋找一本書和自己的完整教材、循序漸進的進行學習。

二、僞裝自己:

***的一舉一動都會被服務器記錄下來,所以***必須僞裝自己使得對方無法辨別其真實身份,這需要有熟練的技巧,用來僞裝自己的IP地址、使用跳板逃避跟蹤、清理記錄擾亂對方線索、巧妙躲開防火牆等。
僞裝是需要非常過硬的基本功才能實現的,這對於初學者來說成的上“大成境界”了,也就是說初學者不可能用短時間學會僞裝,所以我並不鼓勵初學者利用自己學習的知識對網絡進行***,否則一旦自己的行跡敗露,最終害的害是自己。

三、發現漏洞:

漏洞對***來說是最重要的信息,***要經常學習別人發現的漏洞,並努力自己尋找未知漏洞,並從海量的漏洞中尋找有價值的、可被利用的漏洞進行試驗,當然他們最終的目的是通過漏洞進行破壞或着修補上這個漏洞。
***對尋找漏洞的執著是常人難以想象的,他們的口號說“打破權威”,從一次又一次的***實踐中,***也用自己的實際行動向世人印證了這一點——世界上沒有“不存在漏洞”的程序。在***眼中,所謂的“天衣無縫”不過是“沒有找到”而已。

四、利用漏洞:

對於正派***來說,漏洞要被修補;對於邪派***來說,漏洞要用來搞破壞。而他們的基本前提是“利用漏洞”,***利用漏洞可以做下面的事情:

1、獲得系統信息:有些漏洞可以泄漏系統信息,暴露敏感資料,從而進一步***系統;
2、***系統:通過漏洞進入系統內部,或取得服務器上的內部資料、或完全掌管服務器;
3、尋找下一個目標:一個勝利意味着下一個目標的出現,***應該充分利用自己已經掌管的服務器作爲工具,尋找並***下一個系統;

***應掌握的基本技能

從這一節開始,我們就真正踏上學習***的道路了,首先要介紹的是作爲一名初級***所必須掌握的基本技能,學習這可以通過這一節的閱讀瞭解到***並不神祕,而且學習起來很容易上手。爲了保證初學者對***的興趣,所以本書採取了循環式進度,也就是說每一章節的內容都是獨立、全面的,學習者只有完整的學習過一章的內容,才能夠進而學習下一章的內容。

一、瞭解一定量的英文:

學習英文對於***來說非常重要,因爲現在大多數資料和教程都是英文版本,而且有關***的新聞也是從國外過來的,一個漏洞從發現到出現中文介紹,需要大約一個星期的時間,在這段時間內網絡管理員就已經有足夠的時間修補漏洞了,所以當我們看到中文介紹的時候,這個漏洞可能早就已經不存在了。因此學習***從一開始就要儘量閱讀英文資料、使用英文軟件、並且及時關注國外著名的網絡安全網站。

二、學會基本軟件的使用:

這裏所說的基本軟件是指兩個內容:一個是我們日常使用的各種電腦常用命令,例如ftp、ping、net等;另一方面還要學會有關***工具的使用,這主要包括端口掃描器、漏洞掃描器、信息截獲工具和密碼破解工具等。因爲這些軟件品種多,功能各不相同,所以本書在後面將會介紹幾款流行的軟件使用方法,學習者在掌握其基本原理以後,既可以選擇適合自己的,也可以在“第二部分”中找到有關軟件的開發指南,編寫自己的***工具。

三、初步瞭解網絡協議和工作原理:

所謂“初步瞭解”就是“按照自己的理解方式”弄明白網絡的工作原理,因爲協議涉及的知識多且複雜,所以如果在一開始就進行深入研究,勢必會大大挫傷學習積極性。在這裏我建議學習者初步瞭解有關tcp/ip協議,尤其是瀏覽網頁的時候網絡是如何傳遞信息、客戶端瀏覽器如何申請“握手信息”、服務器端如何“應答握手信息”並“接受請求”等內容,此部分內容將會在後面的章節中進行具體介紹。

四、熟悉幾種流行的編程語言和腳本

同上面所述一樣,這裏也不要求學習者進行深入學習,只要能夠看懂有關語言、知道程序執行結果就可以了。建議學習者初步學習C語言、asp和cgi腳本語言,另外對於htm超文本語言和php、java等做基本瞭解,主要學習這些語言中的“變量”和“數組”部分,因爲語言之間存在內在聯繫,所以只要熟練掌握其中一們,其他語言也可以一脈相同,建議學習C語言和htm超文本語言。

基本理論和基本知識之網絡安全術語解釋

一、協議:

網絡是一個信息交換的場所,所有接入網絡的計算機都可以通過彼此之間的物理連設備行信息交換,這種物理設備包括最常見的電纜、光纜、無線WAP和微波等,但是單純擁有這些物理設備並不能實現信息的交換,這就好像人類的身體不能缺少大腦的支配一樣,信息交換還要具備軟件環境,這種“軟件環境”是人類實現規定好的一些規則,被稱作“協議”,有了協議,不同的電腦可以遵照相同的協議使用物理設備,並且不會造成相互之間的“不理解”。
這種協議很類似於“摩爾斯電碼”,簡單的一點一橫,經過排列可以有萬般變化,但是假如沒有“對照表”,誰也無法理解一分雜亂無章的電碼所表述的內容是什麼。電腦也是一樣,它們通過各種預先規定的協議完成不同的使命,例如RFC1459協議可以實現IRC服務器與客戶端電腦的通信。因此無論是***還是網絡管理員,都必須通過學習協議達到了解網絡運作機理的目的。
每一個協議都是經過多年修改延續使用至今的,新產生的協議也大多是在基層協議基礎上建立的,因而協議相對來說具有較高的安全機制,***很難發現協議中存在的安全問題直接入手進行網絡***。但是對於某些新型協議,因爲出現時間短、考慮欠周到,也可能會因安全問題而被***利用。

二、服務器與客戶端:

最簡單的網絡服務形式是:若干臺電腦做爲客戶端,使用一臺電腦當作服務器,每一個客戶端都具有向服務器提出請求的能力,而後由服務器應答並完成請求的動作,最後服務器會將執行結果返回給客戶端電腦。這樣的協議很多。例如我們平時接觸的電子郵件服務器、網站服務器、聊天室服務器等都屬於這種類型。另外還有一種連接方式,它不需要服務器的支持,而是直接將兩個客戶端電腦進行連接,也就是說每一臺電腦都既是服務器、又是客戶端,它們之間具有相同的功能,對等的完成連接和信息交換工作。例如DCC傳輸協議即屬於此種類型。
從此看出,客戶端和服務器分別是各種協議中規定的請求申請電腦和應答電腦。作爲一般的上網用戶,都是操作着自己的電腦(客戶端),別且向網絡服務器發出常規請求完成諸如瀏覽網頁、收發電子郵件等動作的,而對於***來說則是通過自己的電腦(客戶端)對其他電腦(有可能是客戶端,也有可能是服務器)進行***,以達到***、破壞、竊取信息的目的。

三、系統與系統環境:

電腦要運作必須安裝操作系統,如今流行的操作系統主要由UNIX、Linux、Mac、BSD、Windows2000、Windows95/98/Me、Windows NT等,這些操作系統各自獨立運行,它們有自己的文件管理、內存管理、進程管理等機制,在網絡上,這些不同的操作系統既可以作爲服務器、也可以作爲客戶端被使用者操作,它們之間通過“協議”來完成信息的交換工作。

四、IP地址和端口:

我們上網,可能會同時瀏覽網頁、收發電子郵件、進行語音聊天……如此多的網絡服務項目,都是通過不同的協議完成的,然而網絡如此之大,我們的電腦怎麼能夠找到服務項目所需要的電腦?如何在一臺電腦上同時完成如此多的工作的呢?這裏就要介紹到IP地址了。
每一臺上網的電腦都具有獨一無二的IP地址,這個地址類似於生活中人們的家庭地址,通過網絡路由器等多種物理設備(無需初級學習者理解),網絡可以完成從一個電腦到另一個電腦之間的信息交換工作,因爲他們的IP地址不同,所以不會出現找不到目標的混亂局面。但是***可以通過特殊的方法僞造自己電腦的IP地址,這樣當服務器接受到***電腦(僞IP地址)的請求後,服務器會將應答信息傳送到僞IP地址上,從而造成網絡的混亂。當然,***也可以根據IP地址輕易的找到任何上網者或服務器,進而對他們進行***(想想現實中的入室搶劫),因而如今我們會看到很多關於《如何隱藏自己IP地址》的文章。
接下來我解釋一下上面提到的第二個問題:一臺電腦上爲什麼能同時使用多種網絡服務。這好像北京城有八個城門一樣,不同的協議體現在不同的網絡服務上,而不同的網絡服務則會在客戶端電腦上開闢不同的端口(城門)來完成它的信息傳送工作。當然,如果一臺網絡服務器同時開放了多種網絡服務,那麼它也要開放多個不同的端口(城門)來接納不同的客戶端請求。
網絡上經常聽到的“後門”就是這個意思,***通過特殊機能在服務器上開闢了一個網絡服務,這個服務可以用來專門完成***的目的,那麼服務器上就會被打開一個新的端口來完成這種服務,因爲這個端口是供***使用的,因而輕易不會被一般上網用戶和網絡管理員發現,即“隱藏的端口”,故“後門”。
每一臺電腦都可以打開65535個端口,因而理論上我們可以開發出至少65535種不同的網絡服務,然而實際上這個數字非常大,網絡經常用到的服務協議不過幾十個,例如瀏覽網頁客戶端和服務端都使用的是80號端口,進行IRC聊天則在服務端使用6667端口、客戶端使用1026端口等。

常用***軟件用途分類

一、防範:

這是從安全的角度出發涉及的一類軟件,例如防火牆、查病毒軟件、系統進程監視器、端口管理程序等都屬於此類軟件。這類軟件可以在最大程度上保證電腦使用者的安全和個人隱私,不被***破壞。網絡服務器對於此類軟件的需要也是十分重視的,如日誌分析軟件、系統***軟件等可以幫助管理員維護服務器並對***系統的***進行追蹤。

二、信息蒐集:

信息蒐集軟件種類比較多,包括端口掃描、漏洞掃描、弱口令掃描等掃描類軟件;還有監聽、截獲信息包等間諜類軟件,其大多數屬於亦正亦邪的軟件,也就是說無論正派***、邪派***、系統管理員還是一般的電腦使用者,都可以使用者類軟件完成各自不同的目的。在大多數情況下,***使用者類軟件的頻率更高,因爲他們需要依靠此類軟件對服務器進行全方位的掃描,獲得儘可能多的關於服務器的信息,在對服務器有了充分的瞭解之後,才能進行***動作。

三、***與蠕蟲:

這是兩種類型的軟件,不過他們的工作原理大致相同,都具有病毒的隱藏性和破壞性,另外此類軟件還可以由擁有控制權的人進行操作,或由事先精心設計的程序完成一定的工作。當然這類軟件也可以被系統管理員利用,當作遠程管理服務器的工具。

四、洪水:

所謂“洪水”即信息垃圾×××,通過大量的垃圾請求可以導致目標服務器負載超負荷而崩潰,近年來網絡上又開始流行DOS分散式***,簡單地說也可以將其歸入此類軟件中。洪水軟件還可以用作郵件×××或者聊天式×××,這些都是經過簡化並由網絡安全愛好者程序化的“傻瓜式”軟件,也就是本書一開始指責的“僞***”手中經常使用的軟件。

五、密碼破解:

網絡安全得以保證的最實用方法是依靠各種加密算法的密碼系統,***也許可以很容易獲得一份暗文密碼文件,但是如果沒有加密算法,它仍然無法獲得真正的密碼,因此使用密碼破解類軟件勢在必行,利用電腦的高速計算能力,此類軟件可以用密碼字典或者窮舉等方式還原經過加密的暗文。

六、欺騙:

如果希望獲得上面提到的明文密碼,***需要對暗文進行加密算法還原,但如果是一個複雜的密碼,破解起來就不是那麼簡單了。但如果讓知道密碼的人直接告訴***密碼的原型,是不是更加方便?欺騙類軟件就是爲了完成這個目的而設計的。

七、僞裝:

網絡上進行的各種操作都會被ISP、服務器記錄下來,如果沒有經過很好的僞裝就進行***動作,很容易就會被反跟蹤技術追查到***的所在,所以僞裝自己的IP地址、身份是***非常重要的一節必修課,但是僞裝技術需要高深的網絡知識,一開始沒有堅實的基礎就要用到這一類軟件了。

學習***的基本環境

一、操作系統的選擇:

我們經常聽說***酷愛Linux系統,這是因爲Linux相對Windows提供了更加靈活的操作方式,更加強大的功能。例如對於IP地址的僞造工作,利用Linux系統編寫特殊的IP頭信息可以輕鬆完成,然而在Windows系統下卻幾乎不可能做到。但是Linux也有它不足的一面,這個系統的命令龐雜、操作複雜,並不適合初學者使用,而且對於個人學習者,並沒有過多的人會放棄“舒適”的Windows、放棄精彩的電腦遊戲和便捷的操作方式,去全心投入***學習中。而且對於初學***的學習者來說,大多數網絡知識都可以在Windows系統中學習,相對Linux系統,Windows平臺下的***軟件也並不在少數,另外通過安裝程序包,Windows系統中也可以調試一定量的程序,因此初步學習***沒有必要從Linux入手。
本書使用的平臺WindowsME,因爲對於個人用戶來說,NT或者2000多少有些苛刻——系統配置要求太高;然而使用95或者98又缺少某些必要的功能——NET、TELNET命令不完善。但是本書的大部分內容測試漏洞,從遠程服務器出發,所以也不是非要WindowsME操作系統進行學習,對於少數系統版本之間的差異,學習者可以和我聯繫獲得相應系統的學習方法。

二、需要的常用軟件:

如果你的系統是WindowsME,那麼告訴你一個好消息——你沒有必要安裝過多的額外軟件,因爲我們接觸的***知識依靠系統提供給我們的命令和內置軟件就足可以完成了!除了基本的操作系統以外,學習者還需要安裝各類掃描器,之後下載一個比較優秀的***軟件、一個監聽類軟件,除此以外別無它求。如果有必要,讀者可以自行安裝本文上述軟件,然後學習其用法,但是我要告訴你,對於各類×××、還有網絡上各式各樣的***軟件,在學習完本書後,你都可以自己製作、自己開發,根本沒有必要使用他人編寫的軟件。
對於掃描器和×××,我給出以下建議,並且在本書的後面還會對這幾個軟件進行詳細介紹:
這三個軟件都是免費的,而且功能異常強大。像xscanner是國產軟件,他集成了多種掃描功能於一身,並且同時支持控制檯和圖形界面兩種操作方式,另外提供了詳細的漏洞使用說明。對於初學者來說,具備了這兩個工具,學習***已經綽綽有餘了。

三、額外的工具:

如果可以安裝下面的工具,將會對學習***有莫大的幫助,當然下面的軟件主要是學習額外內容併爲“第二部分”學習作鋪墊用的,所以沒有也不會妨礙本書的學習。
1、後臺服務器:
擁有某些網絡應用的後臺服務程序,可以將自己的電腦設置成一個小型服務器,用來學習相應的網絡應用,從“內部”瞭解其運作機理,這將會大大提高自己對服務器的感性認識,同時還能夠在激活服務器的時候;監測自己服務器上的數據,如果有其他***來***,則可以清晰的記錄下對方的***過程,從而學習到更多的******方法。對於本書而言,主要介紹網站的Perl和asp等腳本語言漏洞,所以可以安裝一個IIS或者HTTPD。然後在安裝ActivePerl,使自己的服務器具備編譯cgi和pl腳本的能力。使用自己的服務器還有一個好處,可以節省大量的上網時間,將學習、尋找漏洞的過程放到自己的電腦上,既節省了金錢、有不會對網絡構成威脅,一舉兩得。
2、C語言編譯平臺:
今後在學習***的路途中,將會遇到很多“屬於自己的問題”,這些問題網絡上的其他人可能不會注意,所以無法找到相應的程序,這個時候學習者就要自己動手開發有關的工具了,所以安裝一個Borland C++將會非常便捷,通過這個編譯器,學習者既可以學習C語言,也能夠修改本書後面列出的一些小程序,打造一個屬於自己的工具庫

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章