最經典的黑客入門教程
第一節、黑客的種類和行為
以我的理解,“黑客”大體上應該分為“正”、“邪”兩類,正派黑客依靠自己掌握的知識幫助系統管理員找出系統中的漏洞並加以完善,而邪派黑客則是通過各種黑客技能對系統進行攻擊、入侵或者做其他一些有害於網路的事情,因為邪派黑客所從事的事情違背了《黑客守則》,所以他們真正的名字叫“駭客”(Cracker)而非“黑客”(Hacker),也就是我們平時經常聽說的“黑客”(Cacker)和“紅客”(Hacker)。
無論那類黑客,他們最初的學習內容都將是本部分所涉及的內容,而且掌握的基本技能也都是一樣的。即便日後他們各自走上了不同的道路,但是所做的事情也差不多,只不過出發點和目的不一樣而已。
很多人曾經問我:“做黑客平時都做什麼?是不是非常刺激?”也有人對黑客的理解是“天天做無聊且重複的事情”。實際上這些又是一個錯誤的認識,黑客平時需要用大量的時間學習,我不知道這個過程有沒有終點,只知道“多多益善”。由於學習黑客完全出於個人愛好,所以無所謂“無聊”;重複是不可避免的,因為“熟能生巧”,只有經過不斷的聯絡、實踐,才可能自己體會出一些只可意會、不可言傳的心得。
在學習之餘,黑客應該將自己所掌握的知識應用到實際當中,無論是哪種黑客做出來的事情,根本目的無非是在實際中掌握自己所學習的內容。
黑客的行為主要有以下幾種:
一、學習技術:
網際網路上的新技術一旦出現,黑客就必須立刻學習,並用最短的時間掌握這項技術,這裡所說的掌握並不是一般的瞭解,而是閱讀有關的“協議”(rfc)、深入瞭解此技術的機理,否則一旦停止學習,那麼依靠他以前掌握的內容,並不能維持他的“黑客身份”超過一年。
初級黑客要學習的知識是比較困難的,因為他們沒有基礎,所以學習起來要接觸非常多的基本內容,然而今天的網際網路給讀者帶來了很多的資訊,這就需要初級學習者進行選擇:太深的內容可能會給學習帶來困難;太“花哨”的內容又對學習黑客沒有用處。所以初學者不能貪多,應該儘量尋找一本書和自己的完整教材、循序漸進的進行學習。
二、偽裝自己:
黑客的一舉一動都會被伺服器記錄下來,所以黑客必須偽裝自己使得對方無法辨別其真實身份,這需要有熟練的技巧,用來偽裝自己的IP地址、使用跳板逃避跟蹤、清理記錄擾亂對方線索、巧妙躲開防火牆等。
偽裝是需要非常過硬的基本功才能實現的,這對於初學者來說成的上“大成境界”了,也就是說初學者不可能用短時間學會偽裝,所以我並不鼓勵初學者利用自己學習的知識對網路進行攻擊,否則一旦自己的行跡敗露,最終害的害是自己。
如果有朝一日你成為了真正的黑客,我也同樣不贊成你對網路進行攻擊,畢竟黑客的成長是一種學習,而不是一種犯罪。
三、發現漏洞:
漏洞對黑客來說是最重要的資訊,黑客要經常學習別人發現的漏洞,並努力自己尋找未知漏洞,並從海量的漏洞中尋找有價值的、可被利用的漏洞進行試驗,當然他們最終的目的是通過漏洞進行破壞或著修補上這個漏洞。
黑客對尋找漏洞的執著是常人難以想象的,他們的口號說“打破權威”,從一次又一次的黑客實踐中,黑客也用自己的實際行動向世人印證了這一點——世界上沒有“不存在漏洞”的程式。在黑客眼中,所謂的“天衣無縫”不過是“沒有找到”而已。
四、利用漏洞:
對於正派黑客來說,漏洞要被修補;對於邪派黑客來說,漏洞要用來搞破壞。而他們的基本前提是“利用漏洞”,黑客利用漏洞可以做下面的事情:
1、獲得系統資訊:有些漏洞可以洩漏系統資訊,暴露敏感資料,從而進一步入侵系統;
2、入侵系統:通過漏洞進入系統內部,或取得伺服器上的內部資料、或完全掌管伺服器;
3、尋找下一個目標:一個勝利意味著下一個目標的出現,黑客應該充分利用自己已經掌管的伺服器作為工具,尋找併入侵下一個系統;
4、做一些好事:正派黑客在完成上面的工作後,就會修復漏洞或者通知系統管理員,做出一些維護網路安全的事情;
5、做一些壞事:邪派黑客在完成上面的工作後,會判斷伺服器是否還有利用價值。如果有利用價值,他們會在伺服器上植入木馬或者後門,便於下一次來訪;而對沒有利用價值的伺服器他們決不留情,系統崩潰會讓他們感到無限的快感!
第二節、黑客應掌握的基本技能
從這一節開始,我們就真正踏上學習黑客的道路了,首先要介紹的是作為一名初級黑客所必須掌握的基本技能,學習這可以通過這一節的閱讀了解到黑客並不神祕,而且學習起來很容易上手。為了保證初學者對黑客的興趣,所以本書採取了迴圈式進度,也就是說每一章節的內容都是獨立、全面的,學習者只有完整的學習過一章的內容,才能夠進而學習下一章的內容。
一、瞭解一定量的英文:
學習英文對於黑客來說非常重要,因為現在大多數資料和教程都是英文版本,而且有關黑客的新聞也是從國外過來的,一個漏洞從發現到出現中文介紹,需要大約一個星期的時間,在這段時間內網路管理員就已經有足夠的時間修補漏洞了,所以當我們看到中文介紹的時候,這個漏洞可能早就已經不存在了。因此學習黑客從一開始就要儘量閱讀英文資料、使用英文軟體、並且及時關注國外著名的網路安全網站。
二、學會基本軟體的使用:
這裡所說的基本軟體是指兩個內容:一個是我們日常使用的各種電腦常用命令,例如ftp、ping、net等;另一方面還要學會有關黑客工具的使用,這主要包括埠掃描器、漏洞掃描器、資訊截獲工具和密碼破解工具等。因為這些軟體品種多,功能各不相同,所以本書在後面將會介紹幾款流行的軟體使用方法,學習者在掌握其基本原理以後,既可以選擇適合自己的,也可以在“第二部分”中找到有關軟體的開發指南,編寫自己的黑客工具。
三、初步瞭解網路協議和工作原理:
所謂“初步瞭解”就是“按照自己的理解方式”弄明白網路的工作原理,因為協議涉及的知識多且複雜,所以如果在一開始就進行深入研究,勢必會大大挫傷學習積極性。在這裡我建議學習者初步瞭解有關tcp/ip協議,尤其是瀏覽網頁的時候網路是如何傳遞資訊、客戶端瀏覽器如何申請“握手資訊”、伺服器端如何“應答握手資訊”並“接受請求”等內容,此部分內容將會在後面的章節中進行具體介紹。
四、熟悉幾種流行的程式語言和指令碼:
同上面所述一樣,這裡也不要求學習者進行深入學習,只要能夠看懂有關語言、知道程式執行結果就可以了。建議學習者初步學習C語言、asp和cgi指令碼語言,另外對於htm超文字語言和php、java等做基本瞭解,主要學習這些語言中的“變數”和“陣列”部分,因為語言之間存在內在聯絡,所以只要熟練掌握其中一們,其他語言也可以一脈相同,建議學習C語言和htm超文字語言。
五、熟悉網路應用程式:
網路應用程式包括各種伺服器軟體後臺程式,例如:wuftp、Apache等伺服器後臺;還有網上流行的各種論壇、電子社群。有條件的學習者最好將自己的電腦做成伺服器,然後安裝並執行一些論壇程式碼,經過一番嘗試之後,將會感性的弄清楚網路工作原理,這比依靠理論學習要容易許多,能夠達到事半功倍的效果!
第一章、基本理論和基本知識
第一節、網路安全術語解釋
一、協議:
網路是一個資訊交換的場所,所有接入網路的計算機都可以通過彼此之間的物理連裝置行資訊交換,這種物理裝置包括最常見的電纜、光纜、無線WAP和微波等,但是單純擁有這些物理裝置並不能實現資訊的交換,這就好像人類的身體不能缺少大腦的支配一樣,資訊交換還要具備軟體環境,這種“軟體環境”是人類實現規定好的一些規則,被稱作“協議”,有了協議,不同的電腦可以遵照相同的協議使用物理裝置,並且不會造成相互之間的“不理解”。
這種協議很類似於“摩爾斯電碼”,簡單的一點一橫,經過排列可以有萬般變化,但是假如沒有“對照表”,誰也無法理解一分雜亂無章的電碼所表述的內容是什麼。電腦也是一樣,它們通過各種預先規定的協議完成不同的使命,例如RFC1459協議可以實現IRC伺服器與客戶端電腦的通訊。因此無論是黑客還是網路管理員,都必須通過學習協議達到了解網路運作機理的目的。
每一個協議都是經過多年修改延續使用至今的,新產生的協議也大多是在基層協議基礎上建立的,因而協議相對來說具有較高的安全機制,黑客很難發現協議中存在的安全問題直接入手進行網路攻擊。但是對於某些新型協議,因為出現時間短、考慮欠周到,也可能會因安全問題而被黑客利用。
對於網路協議的討論,更多人則認為:現今使用的基層協議在設計之初就存在安全隱患,因而無論網路進行什麼樣的改動,只要現今這種網路體系不進行根本變革,從根本上就無法杜絕網路黑客的出現。但是這種黑客機能已經超出了本書的範圍,因而不在這裡詳細介紹。
二、伺服器與客戶端:
最簡單的網路服務形式是:若干臺電腦做為客戶端,使用一臺電腦當作伺服器,每一個客戶端都具有向伺服器提出請求的能力,而後由伺服器應答並完成請求的動作,最後伺服器會將執行結果返回給客戶端電腦。這樣的協議很多。例如我們平時接觸的電子郵件伺服器、網站伺服器、聊天室伺服器等都屬於這種型別。另外還有一種連線方式,它不需要伺服器的支援,而是直接將兩個客戶端電腦進行連線,也就是說每一臺電腦都既是伺服器、又是客戶端,它們之間具有相同的功能,對等的完成連線和資訊交換工作。例如DCC傳輸協議即屬於此種型別。
從此看出,客戶端和伺服器分別是各種協議中規定的請求申請電腦和應答電腦。作為一般的上網使用者,都是操作著自己的電腦(客戶端),別且向網路伺服器發出常規請求完成諸如瀏覽網頁、收發電子郵件等動作的,而對於黑客來說則是通過自己的電腦(客戶端)對其他電腦(有可能是客戶端,也有可能是伺服器)進行攻擊,以達到入侵、破壞、竊取資訊的目的。
三、系統與系統環境:
電腦要運作必須安裝作業系統,如今流行的作業系統主要由UNIX、Linux、Mac、BSD、Windows2000、Windows95/98/Me、Windows NT等,這些作業系統各自獨立執行,它們有自己的檔案管理、記憶體管理、程式管理等機制,在網路上,這些不同的作業系統既可以作為伺服器、也可以作為客戶端被使用者操作,它們之間通過“協議”來完成資訊的交換工作。
不同的作業系統配合不同的應用程式就構成了系統環境,例如Linux系統配合Apache軟體可以將電腦構設成一臺網站伺服器,其他使用客戶端的電腦可以使用瀏覽器來獲得網站伺服器上供瀏覽者閱讀的文字資訊;再如Windows2000配合Ftpd軟體可以將電腦構設成一臺檔案伺服器,通過遠端ftp登陸可以獲得系統上的各種檔案資源等。
四、IP地址和埠:
我們上網,可能會同時瀏覽網頁、收發電子郵件、進行語音聊天……如此多的網路服務專案,都是通過不同的協議完成的,然而網路如此之大,我們的電腦怎麼能夠找到服務專案所需要的電腦?如何在一臺電腦上同時完成如此多的工作的呢?這裡就要介紹到IP地址了。
每一臺上網的電腦都具有獨一無二的IP地址,這個地址類似於生活中人們的家庭地址,通過網路路由器等多種物理裝置(無需初級學習者理解),網路可以完成從一個電腦到另一個電腦之間的資訊交換工作,因為他們的IP地址不同,所以不會出現找不到目標的混亂局面。但是黑客可以通過特殊的方法偽造自己電腦的IP地址,這樣當伺服器接受到黑客電腦(偽IP地址)的請求後,伺服器會將應答資訊傳送到偽IP地址上,從而造成網路的混亂。當然,黑客也可以根據IP地址輕易的找到任何上網者或伺服器,進而對他們進行攻擊(想想現實中的入室搶劫),因而如今我們會看到很多關於《如何隱藏自己IP地址》的文章。
接下來我解釋一下上面提到的第二個問題:一臺電腦上為什麼能同時使用多種網路服務。這好像北京城有八個城門一樣,不同的協議體現在不同的網路服務上,而不同的網路服務則會在客戶端電腦上開闢不同的埠(城門)來完成它的資訊傳送工作。當然,如果一臺網路伺服器同時開放了多種網路服務,那麼它也要開放多個不同的埠(城門)來接納不同的客戶端請求。
網路上經常聽到的“後門”就是這個意思,黑客通過特殊機能在伺服器上開闢了一個網路服務,這個服務可以用來專門完成黑客的目的,那麼伺服器上就會被開啟一個新的埠來完成這種服務,因為這個埠是供黑客使用的,因而輕易不會被一般上網使用者和網路管理員發現,即“隱藏的埠”,故“後門”。
每一臺電腦都可以開啟65535個埠,因而理論上我們可以開發出至少65535種不同的網路服務,然而實際上這個數字非常大,網路經常用到的服務協議不過幾十個,例如瀏覽網頁客戶端和服務端都使用的是80號埠,進行IRC聊天則在服務端使用6667埠、客戶端使用1026埠等。
五、漏洞:
漏洞就是程式中沒有考慮到的情況,例如最簡單的“弱口令”漏洞是指系統管理員忘記遮蔽某些網路應用程式中的賬號;Perl程式漏洞則可能是由於程式設計師在設計程式的時候考慮情況不完善出現的“讓程式執行起來不知所措”的程式碼段,“溢位”漏洞則屬於當初設計系統或者程式的時候,沒有預先保留出足夠的資源,而在日後使用程式是造成的資源不足;特殊IP包炸彈實際上是程式在分析某些特殊資料的時候出現錯誤等……
總而言之,漏洞就是程式設計上的人為疏忽,這在任何程式中都無法絕對避免,黑客也正是利用種種漏洞對網路進行攻擊的,本章開始的字眼兒“網路安全”實際就是“漏洞”的意思。黑客利用漏洞完成各種攻擊是最終的結果,其實真正對黑客的定義就是“尋找漏洞的人”,他們並不是以網路攻擊為樂趣,而是天天沉迷在閱讀他人的程式併力圖找到其中的漏洞。應該說,從某種程度上講,黑客都是“好人”,他們為了追求完善、建立安全的網際網路才投身此行的,只不過因為有的黑客或者乾脆是偽黑客經常利用具有攻擊性的漏洞,近些年人們才對黑客有了畏懼和敵視的心理。
六、加密與解密:
在“協議”的講解中,我提到了“由於網路設計的基層存在問題……”,簡單的說這一問題是允許所有上網者參與資訊共享,因而對某些商業、個人隱私在網路上的傳送,就會暴露在眾目睽睽之下,我們的信用卡、個人電子郵件等都可以通過監聽或者截獲的方式被他人的到,如何才能讓這些資訊保安呢?讀者也許想到了“二戰中”的間諜戰:參戰國家在使用電報的時候,都對程式碼進行了加密處理,只有知道了“密碼薄”的接收者,才可以進行譯碼工作。正是這種古老的加密方式,在現代化的網路上也依然存在它旺盛的生命力,通過加密處理的資訊在網路上傳送,無論誰拿到了這份檔案,只要沒有“密碼薄”仍然是白費力氣的。
網路上最長使用的是設定個人密碼、使用DES加密鎖,這兩種加密方式分別可以完成使用者登陸系統、網站、電子郵件信箱和保護資訊包的工作,而黑客所要進行的工作,就是通過漏洞、暴力猜測、加密演算法反向應用等方式獲得加密檔案的明文,有人把“魔高一尺、道高一仗”用在這裡,的確是在恰當不過了!網路上的加密方法和需要驗證密碼的系統層出不窮,黑客也在尋找破解這些系統的種種辦法。
可以說,“漏洞”和“解密”是兩個完全不同的黑客領域,對於不同的學習者對他們的偏好,將會直接影響到今後將會成為的黑客型別,因而在二者之間的選擇,應根據個人喜好進行,本書將會側重學習“漏洞”方面的知識。
七、特洛伊木馬:
特洛伊木馬是一個程式,這個程式可以做程式設計者有意設計的未出現過的事情。但是對於特洛伊木馬所做的操作,不論是否使用者瞭解,都是不被贊同的。根據某些人的認識,病毒是特洛伊木馬的一個特例,即:能夠傳播到其他的程式當中(也就是將這些程式也變成特洛伊木馬)。根據另外的人的理解,不是有意造成任何損壞的病毒不是特洛伊木馬。最終,不論如何定義,許多人僅僅用“特洛伊木馬”來形容不能複製的帶有惡意的程式,以便將特洛伊木馬與病毒區分開?
第三節、常用黑客軟體用途分類
一、防範:
這是從安全的角度出發涉及的一類軟體,例如防火牆、查病毒軟體、系統程式監視器、埠管理程式等都屬於此類軟體。這類軟體可以在最大程度上保證電腦使用者的安全和個人隱私,不被黑客破壞。網路伺服器對於此類軟體的需要也是十分重視的,如日誌分析軟體、系統入侵軟體等可以幫助管理員維護伺服器並對入侵系統的黑客進行追蹤。
二、資訊蒐集:
資訊蒐集軟體種類比較多,包括埠掃描、漏洞掃描、弱口令掃描等掃描類軟體;還有監聽、截獲資訊包等間諜類軟體,其大多數屬於亦正亦邪的軟體,也就是說無論正派黑客、邪派黑客、系統管理員還是一般的電腦使用者,都可以使用者類軟體完成各自不同的目的。在大多數情況下,黑客使用者類軟體的頻率更高,因為他們需要依靠此類軟體對伺服器進行全方位的掃描,獲得儘可能多的關於伺服器的資訊,在對伺服器有了充分的瞭解之後,才能進行黑客動作。
三、木馬與蠕蟲:
這是兩種型別的軟體,不過他們的工作原理大致相同,都具有病毒的隱藏性和破壞性,另外此類軟體還可以由擁有控制權的人進行操作,或由事先精心設計的程式完成一定的工作。當然這類軟體也可以被系統管理員利用,當作遠端管理伺服器的工具。
四、洪水:
所謂“洪水”即資訊垃圾炸彈,通過大量的垃圾請求可以導致目標伺服器負載超負荷而崩潰,近年來網路上又開始流行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語言,也能夠修改本書後面列出的一些小程式,打造一個屬於自己的工具庫。
四、網路安全軟體分類
現在我們來了解一下有關網路安全軟體的分類,因為學習黑客知識是兩個相互聯絡的過程:既學習如何黑,還要學會如何防止被黑。
1、防火牆:
這是網路上最常見的安全機制軟體,防火牆有硬體的、也有軟體的,大多數讀者看到的可能更多都是軟體防火牆。其功能主要是過濾垃圾資訊(保證系統不會受到炸彈攻擊)、防止蠕蟲入侵、防止黑客入侵、增加系統隱私性(對敏感資料進行保護)、實時監控系統資源,防止系統崩潰、定期維護資料庫,備份主要資訊……防火牆可以將系統本身的漏洞修補上,讓黑客沒有下手的機會。另外對於擁有區域網的企業來說,防火牆可以限制系統埠的開放,禁止某些網路服務(杜絕木馬)。
2、檢測軟體:
網際網路上有專門針對某個黑客程式進行清除的工具,但是這類軟體更多是整合在防毒軟體或者防火牆軟體內的,對於系統內的木馬、蠕蟲可以進行檢測並清除,軟體為了保護系統不受侵害,會自動保護硬碟資料、自動維護登錄檔檔案、檢測內容可以程式碼、監測系統埠開放狀態等。如果使用者需要,軟體還可以編寫有關的指令碼對指定埠進行遮蔽(防火牆一樣具備此功能)。
3、備份工具:
專門用來備份資料的工具可以幫助伺服器定期備份資料,並在制定時間更新資料,這樣即便黑客破壞了伺服器上的資料庫,軟體也可以在短時間內完全修復收到入侵的資料。另外對於個人使用者,這類軟體可以對硬碟進行完全映像備份,一旦系統崩潰,使用者利用這類軟體可以將系統恢復到原始狀態,例如Ghost就是這類軟體中的佼佼者。
4、日誌紀錄、分析工具:
對於伺服器來說,日誌檔案是必不可少的,管理員可以通過日誌瞭解伺服器的請求型別和請求來源,並且根據日誌判斷系統是否受到黑客攻擊。通過日誌分析軟體,管理員可以輕鬆的對入侵黑客進行反追蹤,找到黑客的攻擊來源,進而抓不黑客。這也就是為什麼黑客在攻擊的時候多采用IP地址偽裝、伺服器跳轉,並在入侵伺服器之後清除日誌檔案的原因.
相關文章
- Kafka入門經典教程Kafka
- Webpack經典入門Web
- 哪有python入門經典教程資源分享?Python
- 新手看招:最經典的駭客技術入門知識(轉)
- 《Flutter 入門經典》之“Flutter 入門 ”Flutter
- [轉]BI入門經典
- BI入門經典 (轉)
- 聊聊經典機器學習入門機器學習
- 經典入門教程:在ASP中使用SQL 語句SQL
- 最適合入門的 Laravel 入門教程 (四)Laravel
- 最適合入門的 Laravel 入門教程 (五)Laravel
- Unix 入門經典 筆記筆記
- springboot入門經典Spring Boot
- Python入門教程之Python經典面試題(附答案)Python面試題
- 最簡單的 Git 入門教程Git
- Python入門經典案例一Python
- 《jQueryMobile入門經典》——2.4 總結jQuery
- 大資料hadoop 新手快速入門經典視訊教程大資料Hadoop
- 經典加密演算法入門-RSA加密演算法
- 博弈論經典模型解析(入門級)模型
- 《jQueryMobile入門經典》——2.5 問與答jQuery
- Spark入門(三)--Spark經典的單詞統計Spark
- C語言入門經典(第5版)C語言
- Go語言入門經典第18章Go
- 嵌入式開發 ARM入門經典
- 新手入門經典:Jsp環境配置JS
- Spring 經典教程Spring
- Oracle Spool經典教程Oracle
- 最適合入門的 Laravel 初級教程 (一)Laravel
- 最適合入門的 Laravel 初級教程 (二)Laravel
- 演算法競賽入門經典_5 c++與STL入門演算法C++
- 《C語言入門經典》讀後感(一)C語言
- 程式語言入門經典案例【Python版】Python
- JFreeChart介紹及經典入門資料
- windows網路程式設計經典入門 (轉)Windows程式設計
- css 最經典的按鈕樣式CSS
- kaggle再一次入門~經典入門級競賽~Titanic
- 大話PM 談談產品入門的經典語錄