第一節、什麽是駭客
一、學習 技術 :
網際網路上的新 技術 一旦出現,駭客就必須立刻學習,併用最短的時間掌握這項 技術 ,這裏所說的掌握併不是一般的了解,而是閱讀有關的 “ 協議 ” ( rfc )、深入了解此 技術 的機理,否則一旦停止學習,那麽依靠他以前掌握的內容,併不能維持他的 “ 駭客身份 ” 超過一年。
初級駭客要學習的知識是比較睏難的,因為他們沒有基礎,所以學習起來要接觸非常多的基本內容,然而今天的網際網路給讀者帶來了很多的信息,這就需要初級學習者進行選擇:太深的內容可能會給學習帶來睏難;太 “ 花哨 ” 的內容又對學習駭客沒有用處。所以初學者不能貪多,應該盡量尋找一本書和自己的完整教材、循序漸進的進行學習。
二、發現漏洞:
漏洞對駭客來說是最重要的信息,駭客要經常學習別人發現的漏洞,併努力自己尋找未知漏洞,併從海量的漏洞中尋找有價值的、可被利用的漏洞進行試驗,當然他們最終的目的是通過漏洞進行破壞或著修補上這個漏洞。
駭客對尋找漏洞的執著是常人難以想象的,他們的口號說 “ 打破權威 ” ,從一次又一次的駭客實踐中,駭客也用自己的實際行動嚮世人印證了這一點 —— 世界上沒有 “ 不存在漏洞 ” 的程式。在駭客眼中,所謂的 “ 天衣無縫 ” 不過是 “ 沒有找到 ” 而已。
三、利用漏洞:
對於正派駭客來說,漏洞要被修補;對於邪派駭客來說,漏洞要用來搞破壞。而他們的基本前提是 “ 利用漏洞 ” ,駭客利用漏洞可以做下面的事情:
1 、獲得繫統信息:有些漏洞可以泄漏繫統信息,暴露敏感資料,從而進一步入侵繫統;
2 、入侵繫統:通過漏洞進入繫統內部,或取得服務器上的內部資料、或完全掌管服務器;
3 、尋找下一個目標:一個勝利意味著下一個目標的出現,駭客應該充分利用自己已經掌管的服務器作為工具,尋找併入侵下一個繫統;
4 、做一些好事:正派駭客在完成上面的工作後,就會修復漏洞或者通知繫統管理員,做出一些維護 網路 安全的事情;
5 、做一些壞事:邪派駭客在完成上面的工作後,會判斷服務器是否還有利用價值。如果有利用價值,他們會在服務器上植入木馬或者後門,便於下一次來訪;而對沒有利用價值的服務器他們決不留情,繫統崩潰會讓他們感到無限的快感
四、偽裝自己:
駭客的一舉一動都會被服務器記錄下來,所以駭客必須偽裝自己使得對方無法辨別其真實身份,這需要有熟練的技巧,用來偽裝自己的 IP 地址、使用跳闆逃避跟蹤、清理記錄擾亂對方線索、巧妙躲開防火墻等。
偽裝是需要非常過硬的基本功才能實現的,這對於初學者來說成的上 “ 大成境界 ” 了,也就是說初學者不可能用短時間學會偽裝,所以我併不鼓勵初學者利用自己學習的知識對 網路 進行攻擊,否則一旦自己的行跡敗露,最終害的害是自己。
如果有朝一日妳成為了真正的駭客,我也同樣不贊成妳對 網路 進行攻擊,畢竟駭客的成長是一種學習,而不是一種犯罪。
第二節、駭客應掌握的基本技能
從這一節開始,我們就真正踏上學習駭客的道路了,首先要介紹的是作為一名初級駭客所必須掌握的基本技能,學習這可以通過這一節的閱讀了解到駭客併不神秘,而且學習起來很容易上手。為了保證初學者對駭客的興趣,所以本書採取了循環式進度,也就是說每一章節的內容都是獨立、全面的,學習者只有完整的學習過一章的內容,才能夠進而學習下一章的內容。
一、了解一定量的英文:
學習英文對於駭客來說非常重要,因為現在大多數資料和教程都是英文版本,而且有關駭客的新聞也是從國外過來的,一個漏洞從發現到出現中文介紹,需要大約一個星期的時間,在這段時間內 網路 管理員就已經有足夠的時間修補漏洞了,所以當我們看到中文介紹的時候,這個漏洞可能早就已經不存在了。因此學習駭客從一開始就要盡量閱讀英文資料、使用英文軟體、併且及時關註國外著名的 網路 安全網站。
二、學會基本軟體的使用:
這裏所說的基本軟體是指兩個內容:一個是我們日常使用的各種 電腦 常用命令,例如 ftp 、 ping 、 net 等;另一方面還要學會有關駭客工具的使用,這主要包括端口掃描器、漏洞掃描器、信息截獲工具和密碼破解工具等。因為這些軟體品種多,功能各不相同,所以本書在後面將會介紹幾款流行的軟體使用方法,學習者在掌握其基本原理以後,既可以選擇適合自己的,也可以在 “ 第二部分 ” 中找到有關軟體的開發指南,編寫自己的駭客工具。
三、初步了解 網路 協議和工作原理:
所謂 “ 初步了解 ” 就是 “ 按照自己的理解方式 ” 弄明白 網路 的工作原理,因為協議涉及的知識多且復雜,所以如果在一開始就進行深入研究,勢必會大大挫傷學習積極性。在這裏我建議學習者初步了解有關 tcp/ip 協議,尤其是瀏覽網頁的時候 網路 是如何傳遞信息、客戶端瀏覽器如何申請 “ 握手信息 ” 、服務器端如何 “ 應答握手信息 ” 併 “ 接受請求 ” 等內容,此部分內容將會在後面的章節中進行具體介紹。
四、熟悉幾種流行的編程語言和腳本:
同上面所述一樣,這裏也不要求學習者進行深入學習,只要能夠看懂有關語言、知道程式執行結果就可以了。建議學習者初步學習 C 語言、 asp 和 cgi 腳本語言,另外對於 htm 超文本語言和 php 、 java 等做基本了解,主要學習這些語言中的 “ 變數 ” 和 “ 數組 ” 部分,因為語言之間存在內在聯繫,所以只要熟練掌握其中一們,其他語言也可以一脈相同,建議學習 C 語言和 htm 超文本語言。
五、熟悉 網路 應用程式:
網路 應用程式包括各種服務器軟體後臺程式,例如: wuftp 、 Apache 等服務器後臺;還有網上流行的各種論壇、電子社區。有條件的學習者最好將自己的 電腦 做成服務器,然後安裝併運行一些論壇代碼,經過一番嘗試之後,將會感性的弄清楚 網路 工作原理,這比依靠理論學習要容易許多,能夠達到事半功倍的效果!