民用資訊科技的發展,早期集中在美國這個使用英語的國度,所有的文件和名詞都以英文為主,來到東方翻譯成中文時,可能譯者都是「文科人」,往往詞不達意,令很多資訊科技名詞難以「望文生義」。而資訊科技確實有很多專有名詞,很多是難以直接按字面翻譯,以至現今有很多翻譯出來的詞彙,都經不起嚴格的考證,同時也形成了學習資訊科技的困難。就一個最明顯的例子,Firewall很多時被翻譯為「防火牆」,字面上Firewall是「火」和「牆」的結合,象形為一道上面有火的牆壁,寓意為入侵者不可能越過的障礙,那不是很好嗎?譯為「防火牆」就好像是其意義的相反詞,燒不起來的牆?防的不是入侵者而是作為屏障的火? 那不就是最好給入侵者輕易爬過去的嗎? 為「Firewall」正名 原來,英文的Firewall是來自建築學裡,用以分隔空間兼具防火作用的隔壁,所以當時的譯者便直接把翻譯照搬過來,但用在網路保安上,看起來就不倫不類,做不到「望文生義」的生動翻譯了,資訊保安的看似艱深,不貼切的翻譯可能要負起一定責任。在這裡,很想為「Firewall」正名,其實「保安火牆」可能才是最貼切的翻譯,夏里遜福(Ford Harrison)的那套電影Firewall在香港被譯名為「銅牆火壁」可說是正確示範作,若譯成「防火牆」,肯定是中文翻譯電影名稱史上的最大敗筆。「黑客」和「駭客」而很多專有名稱,被不求甚解的傳媒亂引用多了,更是令一些名詞的概念混淆不堪。 一般人根本就以為「黑客」和「駭客」是同一類人,但若按最初正式的業內理解和翻譯,黑客是Hacker,駭客是Cracker,那是完全不同的兩類人。簡單來說,「黑客」Hacker是在某一領域的高人,以Hacking改進技術,視解決問題和助人為己任,「駭客」Cracker才是秩序的破壞者。這種錯誤,是半吊子的外行人,如編劇和記者才會搞錯的,真正的明白甚麼是資訊科技的人絕對不會用錯這名詞。以下的一節,一方面要為一些錯誤的名詞「正名」,其實主要是為各初學者提供一些正確的詞彙及其相關概念,對後面閱讀有關資訊和網路安全的文章會容易多了。 在這裡,我們的解說是簡化和淺易的,但會盡量留下英文原名,方便有興趣深入研究的朋友用Google鑽研下去。OSI參考模型
要說明資訊保安,我們沒法不涉及一些最基礎的概念,最簡單的,就是資訊在網上是以甚麼形式存在的,因為沒有這概念,很難解釋網路內的攻防是怎麼上演的,於是我們便要對TCP/IP數據封包(Data Packet)說明一下,希望能夠做到深入淺出。要說明甚麼是TCP/IP數據封包(Data Packet),就可能要提到OSI 7層參考模型(Open Systems Interconnection Basic Reference Model)。這是由國際標準組織 (ISO)於1983年所制定的,稱為OSI/ISO。該標準共有七層,每一層均分別負責資料在網路中傳輸的一定步驟。但這對一般用家來說可能太深了,但不去了解的話,其實又很難明白資訊是怎樣在網路裡流動,和網路保安是幹甚麼的,約略也要說明一下。TCP/IP數據封包把問題降到最基本的原理,很多人都聽過,數據在電腦內被處理,或在網路流動時,它們是以「二進位」的「0101」傳送的,簡單來說,可想像為:有電流通過就是1,沒有電流時就是0,這些「0101」就可視為我們這個資訊世紀的「原點」。而資訊這些「0101」的傳送,雖然是不斷地在網路裡流動,但其實卻不是絕對準確的,因為這些「有電和無電」的狀況很容易受外界干擾,傳送便會出錯,當「0101」變成「0111」,其意義便完全不同。若驗出任何一個位置錯誤,整段資料便要重新傳送。於是,聰明的工程師們便想出了辦法,他們設計出數據封包(Data Packet)這個數據流通模式。系統會先把數據切開為固定長度的段落,然後在每一段數據開頭加入特訂的標籤,再在每一段的結尾加入驗證碼,這便構成一個「數據封包」。系統和系統之間會訂出標準的通訊協定(Protocol),要求系統按標籤傳送數據,再按驗證碼檢查其完整性,完好的數據封包會被接收,若有不能通過驗證碼檢查的,系統便會按通訊協定,要求上游的發送者重新傳送那個特定的「數據封包」,整個互聯網,就是建立在「數據封包」之上。而互聯網上通用使用的通訊協定(Protocol),就是TCP/IP協定。資訊和網路安全的工作,也就是按「數據封包」的技術建立起來,例如保安火牆(Firewall)的工作原理之一,就是按「數據封包」的標籤,按特定的條件過濾「數據封包」,把有問題的「數據封包」丟棄,以確保系統的安全。IP位址IP(Internet Protocol)位址如同是電腦的「往址」一樣,類似電話號碼,作為通訊識別之用。每一個與互聯網連接的電腦都要被指派一個獨一無二的號碼,也就是網際網路通訊協定(IP)位址。由於這些號碼通常會按區域指派給某一個國家或地區,因此IP位址經常用來識別與互聯網連接的電腦是來自哪個國家。當某台電腦要傳送訊息給另一台電腦時,就需指定IP位址才能正確送到。現行標準的IPv4的IP位址,其表示方法以小數點來分隔這4個位元組(每個位元組的數字範圍是0至255),換言之就是0.0.0.0至255.255.255.255,約可列出四十三億個地址。但在網路產業的蓬勃發展下,很快會無法滿足全世界的需求,也漸漸跟不上各式各樣新發展的網路工具。新式的IPv6的IP位址以六個整數組成,相信將會在未來取代IPv4的協定。URL和網址而URL就是Uniform Resource Locator的縮寫,一般稱之為「網址」或「域名」。 但其實一般的寫法如:yahoo.com 或 google.com,表示的是「域名」。例如,www.linuxpilot.net就是網址內的「域名」部份,而寫成http://www.linuxpilot.net/index.htm就是「網址」。當您於瀏覽器輸入完整的網址後,瀏覽器便會透過網路上的「域名伺服器」(DNS Server)把像英文的「域名」翻譯成網上獨一無二的IP位址,以www.linuxpilot.net為例就是202.65.223.234。這樣電腦就能找到該網頁或檔案所在的網路位址。連接埠連接埠(Port),若將IP位址比作地址,一部電腦比做一棟大廈,連接埠就像這大廈的不同的入口,負責各種不同的業務,行人訪客,駕車的訪客和送貨的貨車各有不同入口。所有的連接埠都會按TCP/IP協定,被賦與由0至65536的不同編號。在TCP/IP的網路上,數據封包由一個發送端電腦的埠,流向接收端系統的埠,而當電腦收到數據封包時,便根據其連接埠編號,判斷交由哪個入口,由那特定的應用程式來處理。因為IP位址與網路服務的關係是一對多的關係,網路實際上是透過「IP地址+連接埠號」來區分不同的服務的,一般這樣的組合會被稱為一個Socket(有譯為「線程」)。Socket可以說是識別整個互聯網所要處理的單一點對點的網路連接的關鍵,要正確處理每個TCP/IP數據封包,我們需要兩個Socket,一個位於發訊的系統之上,另一個則位於受訊的主機,才可能產生正確的TCP/IP通訊協定連接。連接埠的類別連接埠可分為三大類,第一類是公認的常用連接埠(Well Known Ports),埠號從0到1023,它們絕大部份都被設定了一些重要的服務,例如連接埠80就是我們常用的HTTP網頁通訊。第二類是已註冊的連接埠(Registered Ports),埠號從1024到49151,它們被鬆散地設定了一些服務。這些連接埠會被用於許多不同其它目的,例如許多系統處理動態連接埠從1024左右開始。它們都已在IANA(Internet Assigned Numbers Authority)這個處理關於各項網際網路通信協定參數的總註冊中心註冊為正式「註冊連接埠」(Registered Ports),例如1433就是Microsoft SQL Server資料庫常用的指定接口,3306就是MySQL資料庫常用的指定接口。第三類是動態或私有連接埠(Dynamic and/or Private Ports),埠號從49152到65535,表1列出了常見的連接埠和相關的應用。
黑客(Hacker)的歷史可以追溯到電腦的誕生初期和互聯網的前身ARPAnet開始實驗的時代。那時有一個文化族群,他們都是由具有分享特質的程式設計專家和網路高手所組成的,他們自稱為黑客(Hackers)。這些黑客建立了Internet,創造出我們現在使用的UNIX作業系統,也使Usenet和World Wide Web活動起來。這些第一代黑客,他們有自己一套的道德標準及值觀,照他們自己的說法,大致如下。1. 這個世界上充滿著很多迷人的問題等待著被解決。2. 沒有任何人需要一再解決同一個問題。3. 無聊而單調的工作是有害的。4. 自由最可貴,所以任何獨裁式的行為都會被挑戰。5. 他們不喜歡虛有其表的人和事,他們尊敬的是能力。6. 喜歡無條件的創作及願意分享自己研究成果。「黑」是由英文(Hack)一字翻譯過來的,這個詞在英語中有「亂砍、劈,砍」之意,還有一個意思是指「受僱於從事艱苦乏味的工作的文人」。Hack的一個引申的意思是指「幹了一件非常漂亮的事」。從有百多年「黑」(Hack)傳統的麻省理工出發,在校園中可被褒獎為「黑」事件,一定要安全、不可令任何人士或財物受損、而且要有幽默感,「黑」事件多是使用簡單的方法得出意想不到的結果。而「黑」事件也會表現出黑客完完全全地掌握了整個系統的特性,真正黑客技巧的優雅性有如一門藝術,絕對不簡單。麻省理工著名的「黑」Hack傳統事件很多,像在1994年5月,有學生神不知鬼不覺的,把一輛汽車放了在離地數十公尺的麻省理工大圓頂(Great Dome)之上,這類的「行為藝術」在那裡是優良的傳統。(antihack208)黑客世界裡,有不同的精神和文化,但就對自己有很高的要求,黑客不干涉政治,不受政治利用,只憑著其對技術的崇拜的不斷追求與創新。真黑客完全投入數位世界,成為了電腦冒險家。他們不受制於任何規條,勇於嘗試,甚至把「黑」推廣至生命的各一個部分。例如推動自由軟體運動就是黑客的重要成就,發現漏洞並通知協助管理員修補它從而締造「完美」無暇的自由開放軟體軟體,就是黑客們最為熱愛去做的一種精神與文化。 強大但免費的Linux就是這樣出現的。 白帽黑客(White Hats) 這些是懂得安全弱點的黑客,同時也知道如何找出並且利用弱點的人,但他們就很少會做入侵之類的事,找出問題和解決它們才是他們的目的。指令小子(Script Kiddle)所利用之系統漏洞和破解工具的原碼,可能大多出於這些黑客之手,但這些原碼多半只是黑客作為保安試驗和測試的作品,只是在開放和分享的前題下,被Cracker們改寫和利用了。這些黑客具備道德的良知,正職可能是在企業或資訊保安公司裡,默默協助資訊安全的強化的貢獻者,對資訊科技發展幫助甚大,異於那些亂搞卻不知其然的小朋友。黑帽黑客(Black Hats) 他們的技術知識可能與白帽駭客相差不大,但差別在於他們不具備道德良知,只關注於利益或炫耀其技術,甘於被人有目的地利用。最可怕的莫於利用自身具備的能力,作出威脅和破壞。利用黑帽黑客的包括商業機構和政府,早前甚至有黑客被軍方收編,美軍於2005年建立了世界上第一支網路黑客部隊負責網路戰的網軍美軍「網路戰聯合功能構成司令部」(Joint Functional Component Command for Network Warfare, JFCC-NW),同樣在中國和台灣也有類似的部隊。他們都被視為「黑帽駭客」,有違真正黑客們崇高的獨立自由理想和堅守「無條件」服務的自我道德操守。駭客 比黑帽黑客更差的,就是駭客,是「Cracker」的音譯,就是「破壞者/解密者」的意思。這些人做的事情更多的是破解商業軟體、惡意入侵別人的網站並造成損失。駭客具有與黑客同樣的本領,只不過在行事上有很大差別,這是人們常常很難分清黑客與駭客的原因之一。最初的Cracker出現在電話普及的初期,當時電話費用可不像現在一般便宜,於是一群聰明人發明了一些電子裝置,藉著利用系統的漏洞,得以免費使用電話網路。他們還用電話線聯接電腦,互相交流各種資源,這些資源包括他們破解的付費商業軟體,尤其是遊戲軟體。更由於初期的個人電腦跟大型電腦的性能相差甚遠,只能做很有限的工作,因此他們為了獲得到功能巨大的大型電腦的使用權,通過破解密碼入侵學校,商業機構,政府等所擁有的大型電腦系統,以取得最高使用權「root」,作私人用途。在互聯網的出現後,駭客的行為更是如魚得水,網上充斥著各種破解軟體免費下載,網站入侵事件更時有聽聞,盜取網上的各式源代碼供人免費使用等等,就成為駭客的主要行徑。跛腳鴨(Lamer) Lame的意思是指跛腳的,瘸的,無自己的行動力之意思,Lamer當然就是指無自己的能力去行動的人,要翻譯得傳神的話,可能要借用政治上名詞「跛腳鴨」。在網上,Lamer被玩遊戲的族群泛指為那些不勞而獲在社群裡毫無貢獻,但又到處惹是生非挑起論戰的人,頗切合「跛腳鴨」那自己走不動但又呱呱大叫的性質。通常很多人會把新手和Lamer混淆,雖然無可否認,新手菜鳥經常會有些Lamer行為,例如到處去問甚麼地方可以找到被破解的程序和免費遊戲,為甚麼某某程序還沒有被破解等等,算是殺傷力比較小的。真正的Lamer有個最重要的特點就是無論甚麼言行,最終目的就只有玩到被破解的程序這一個而已,在他們眼裡不存在版權,不存在道德,把破解認為這是合情合理天經地義的事。
指令小子(Script Kiddle)Script Kiddle許多中文翻譯為指令小子,指電腦程度不佳,卻愛拿現成的入侵工具把玩的人。他們遠比單純的Lamer可怕,網路上他們的數目遠比Hacker和Cracker多,最多的破壞就是他們造成的。顧名思義他們他們沒有實力撰寫自己的入侵工具,也沒有專業知識,只是把玩著他們找到的「駭客工具」,以這些現成的程式掃瞄出系統的弱點,以自動攻擊程式去入侵別人的系統。指令小子通常不具備深入的相關系統知識,對這些系統弱點及掃瞄與運作方式都不熟悉,所以入侵經常無法成功,但是萬一得手,卻又不曉得已經造成重大危害,實在非常糟糕。加上他們下載回來的入侵程式,很多時是被駭客特意放出的,讓Script Kiddle們安裝後,駭客便可以神不知鬼不覺的透過這些「跳板」進行入侵。許多喜歡騎劫網站(Defaced)的駭客便屬於此一族群,數量非常龐大。
Javascript must be enabled to use this form.
為更好地維繫文章的討論,及減少濫發貼和廣告,請正確輸入以上的驗証碼,和輸入正確的電郵地址。 閣下的寶貴回應或提問在送出後,將會有電子郵件送達你提交的郵箱,請按郵件的指示作簡單的按鍵確認。