黑客技術(shù),簡單地說,是對計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)的缺陷和漏洞的發(fā)現(xiàn),以及針對這些缺陷實(shí)施攻擊的技術(shù)。這里說的缺陷,包括軟件缺陷、硬件缺陷、網(wǎng)絡(luò)協(xié)議缺陷、管理缺陷和人為的失誤。很顯然,黑客技術(shù)對網(wǎng)絡(luò)具有強(qiáng)大的破壞能力,“黑客技術(shù)”一詞是由英語Hackte音譯出來的,拼為“Hackte”。它是互聯(lián)網(wǎng)發(fā)展至今一個客觀的存在,對此我們無須諱言。與科學(xué)技術(shù)應(yīng)用一樣,黑客既有攻擊性,也有防護(hù)的作用。黑客技術(shù)不斷地促使計(jì)算機(jī)和網(wǎng)絡(luò)產(chǎn)品供應(yīng)商不斷地改善他們的產(chǎn)品,對整個互聯(lián)網(wǎng)的發(fā)展始終起著推動的作用。發(fā)現(xiàn)并實(shí)現(xiàn)黑客技術(shù)通常要求這個人對計(jì)算機(jī)和網(wǎng)絡(luò)非常精通,發(fā)現(xiàn)并證實(shí)一個計(jì)算機(jī)系統(tǒng)漏洞可能需要做大量測試、分析大量代碼和長時間的程序編寫(如對iOS系統(tǒng)進(jìn)行越獄工作),這和一個科學(xué)家在實(shí)驗(yàn)室中埋頭苦干沒有太大的區(qū)別。發(fā)現(xiàn)者不同于那些在網(wǎng)上尋找并使用別人已經(jīng)寫好的黑客軟件的人,就如同武器發(fā)明者和使用者的區(qū)別。
黑與白 是與非
與一切科學(xué)技術(shù)一樣,黑客技術(shù)的好壞取決于使用它的人。計(jì)算機(jī)系統(tǒng)和網(wǎng)絡(luò)漏洞的不斷發(fā)現(xiàn)促使產(chǎn)品開發(fā)商修補(bǔ)產(chǎn)品的安全缺陷,同時也使他們在設(shè)計(jì)時更加注意安全。研究過黑客技術(shù)的管理員會把自己使用的操作系統(tǒng)和網(wǎng)絡(luò)配置得更安全。如果沒有那些公布重大漏洞發(fā)現(xiàn)并提出修補(bǔ)建議的黑客,互聯(lián)網(wǎng)不可能像今天這樣讓人們受益,也不會有今天這么強(qiáng)韌(相對而言)。在2014年,除360互聯(lián)網(wǎng)安全大會外,黑帽大會、黑客聯(lián)盟大賽也逐一展開,使之前讓人感覺神秘的黑客們走向了臺前。其實(shí),許多黑客為追求技術(shù)而起,最終大都投入至互聯(lián)網(wǎng)安全領(lǐng)域,所以不能因?yàn)榻泻诳途褪恰昂凇?,如著名的烏云網(wǎng)站、360的白帽們,就是因?yàn)橛兴麄冞@群維護(hù)正義的黑客,才會使漏洞得到及時彌補(bǔ)、危險(xiǎn)得以公開。
黑客常見術(shù)語淺析
俗話說,入鄉(xiāng)隨俗。既然入了黑客的門,就必須懂得黑客的行話,下面先簡單介紹一下黑客專用術(shù)語:
1.肉雞:所謂“肉雞”是一種很形象的比喻,比喻那些可以隨意被我們控制的電腦,對方可以是Windows操作系統(tǒng),也可以是UNIX/LINUX等系統(tǒng),可以是普通的個人電腦,也可以是大型的服務(wù)器,我們可以像操作自己的電腦那樣來操作它們,而不被對方所發(fā)覺;
2.木馬:就是那些表面上偽裝成了正常的程序,但是當(dāng)這些程序被運(yùn)行時,就會獲取系統(tǒng)的整個控制權(quán)限。有很多黑客就是熱衷于使用木馬程序來控制別人的電腦,如臭名昭著的灰鴿子;
3.網(wǎng)頁木馬:表面上偽裝成普通的網(wǎng)頁文件或?qū)⒆约旱拇a直接插入到正常的網(wǎng)頁文件中,當(dāng)有人訪問時,網(wǎng)頁木馬就會利用對方系統(tǒng)或者瀏覽器的漏洞自動將配置好的木馬的服務(wù)端下載到訪問者的電腦上來自動執(zhí)行;
4.掛馬:就是在別人的網(wǎng)站文件里面放入網(wǎng)頁木馬或者是將代碼潛入到對方正常的網(wǎng)頁文件里,以使瀏覽者中馬;
5.后門:這是一種形象的比喻,入侵者在利用某些方法成功地控制了目標(biāo)主機(jī)后,可以在對方的系統(tǒng)中植入特定的程序,或者是修改某些設(shè)置。這些改動表面上是很難被察覺的,但是入侵者卻可以使用相應(yīng)的程序或者方法來輕易地與這臺電腦建立連接,重新控制這臺電腦;
6.Rootkit:是攻擊者用來隱藏自己的行蹤和保留Root(根權(quán)限,可以理解成Windows的System或者管理員權(quán)限)訪問權(quán)限的工具。通常,攻擊者通過遠(yuǎn)程攻擊的方式獲得Root訪問權(quán)限,或者是先使用密碼破解的方式獲得對系統(tǒng)的普通訪問權(quán)限,進(jìn)入系統(tǒng)后,再通過對方系統(tǒng)內(nèi)存在的安全漏洞獲得系統(tǒng)的Root權(quán)限。隨后攻擊者就會在對方的系統(tǒng)中安裝Rootkit,以達(dá)到自己長久控制對方的目的,Rootkit與我們前邊提到的木馬和后門很類似,但遠(yuǎn)比它們要隱蔽;
7.IPC$:是共享“命名管道”的資源,它是為了讓進(jìn)程間通信而開放的命名管道,可以通過驗(yàn)證用戶名和密碼獲得相應(yīng)的權(quán)限,在遠(yuǎn)程管理計(jì)算機(jī)和查看計(jì)算機(jī)的共享資源時使用;
8.弱口令:指那些強(qiáng)度不夠,容易被猜解的,類似123、abc這樣的口令(密碼);
9.默認(rèn)共享:默認(rèn)共享是Windows 2000/XP/2003系統(tǒng)開啟共享服務(wù)時自動開啟所有硬盤的共享,因?yàn)榧恿恕?”符號,所以看不到共享的托手圖表,也稱為隱藏共享。
10.Shell:指的是一種命令執(zhí)行環(huán)境,比如我們按下鍵盤上的“開始鍵+R”時出現(xiàn)“運(yùn)行”對話框,在里面輸入“cmd”會出現(xiàn)一個用于執(zhí)行命令的黑窗口,這個就是Windows的Shell執(zhí)行環(huán)境。通常我們使用遠(yuǎn)程溢出程序成功溢出遠(yuǎn)程電腦后得到的那個用于執(zhí)行系統(tǒng)命令的環(huán)境就是對方的Shell;
11.WebShell:WebShell就是以asp、php、jsp或者cgi等網(wǎng)頁文件形式存在的一種命令執(zhí)行環(huán)境,也可以將其稱做是一種網(wǎng)頁后門。黑客在入侵了一個網(wǎng)站后,通常會將這些asp或php后門文件與網(wǎng)站服務(wù)器Web目錄下正常的網(wǎng)頁文件混在一起,然后就可以使用瀏覽器來訪問這些asp或者php后門,得到一個命令執(zhí)行環(huán)境,以達(dá)到控制網(wǎng)站服務(wù)器的目的。可以上傳下載文件、查看數(shù)據(jù)庫、執(zhí)行任意程序命令等。國內(nèi)常用的WebShell有海陽ASP木馬、Phpspy、c99shell等;
12.溢出:確切地講,應(yīng)該是“緩沖區(qū)溢出”。簡單地解釋就是程序?qū)邮盏妮斎霐?shù)據(jù)沒有執(zhí)行有效的檢測而導(dǎo)致錯誤,后果可能是造成程序崩潰或者是執(zhí)行攻擊者的命令。大致可以分為兩類:堆溢出和棧溢出;
13.注入:隨著B/S模式應(yīng)用開發(fā)的發(fā)展,使用這種模式編寫程序的程序員越來越多,但是由于程序員的水平參差不齊,相當(dāng)大一部分應(yīng)用程序存在安全隱患。用戶可以提交一段數(shù)據(jù)庫查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想要知道的數(shù)據(jù),這個就是所謂的SQLinjection,即:SQL注入;
14.注入點(diǎn):是可以實(shí)行注入的地方,通常是一個訪問數(shù)據(jù)庫的連接。根據(jù)注入點(diǎn)數(shù)據(jù)庫的運(yùn)行賬號的權(quán)限的不同,你所得到的權(quán)限也不同;
15.內(nèi)網(wǎng):通俗地講就是局域網(wǎng),比如網(wǎng)吧、校園網(wǎng)、公司內(nèi)部網(wǎng)等都屬于此類。查看IP地址如果是在以下三個范圍之內(nèi)的話,就說明我們是處于內(nèi)網(wǎng)之中的:10.0.0.0~10.255.255.255,172.16.0.0~172.31.255.255,192.168.0.0~192.168.255.255;
16.外網(wǎng):直接連入互聯(lián)網(wǎng),可以與互聯(lián)網(wǎng)上的任意一臺電腦互相訪問,IP地址不是保留IP(內(nèi)網(wǎng))IP地址;
17.端口:相當(dāng)于一種數(shù)據(jù)的傳輸通道。用于接收某些數(shù)據(jù),然后傳輸給相應(yīng)的服務(wù),而電腦將這些數(shù)據(jù)處理后,再將相應(yīng)的恢復(fù)通過開啟的端口傳給對方。一般每一個端口的開放都對應(yīng)了相應(yīng)的服務(wù),要關(guān)閉這些端口只需要將對應(yīng)的服務(wù)關(guān)閉就可以了;
18.免殺:就是通過加殼、加密、修改特征碼、加花指令等等技術(shù)來修改程序,使其逃過殺毒軟件的查殺;
19.加殼:就是利用特殊的算法,將EXE可執(zhí)行程序或者DLL動態(tài)連接庫文件的編碼進(jìn)行改變(如實(shí)現(xiàn)壓縮、加密),以達(dá)到縮小文件體積或者加密程序編碼,甚至是躲過殺毒軟件查殺的目的。較常用的殼有UPX,ASPack、PePack、PECompact、UPack、免疫007、木馬彩衣等;
20.花指令:就是幾句匯編指令,讓匯編語句進(jìn)行一些跳轉(zhuǎn),使得殺毒軟件不能正常地判斷病毒文件的構(gòu)造。說通俗點(diǎn)就是“殺毒軟件是從頭到腳按順序來查找病毒,如果我們把病毒的頭和腳顛倒位置,殺毒軟件就找不到病毒了”。
網(wǎng)絡(luò)安全可以理解成是對網(wǎng)絡(luò)上信息的保護(hù),所以我們完全可以用儲存安全和傳輸安全兩個方面來概括。前者就是指信息在靜態(tài)存儲時所涉及到的使用權(quán)限,后者則是說信息在傳輸過程中的安全狀態(tài)??傊?,網(wǎng)絡(luò)安全的本質(zhì)就是對信息保護(hù)的安全,只要是涉及到網(wǎng)絡(luò)上信息的保密性、可用性和完整真實(shí)性等方面的相關(guān)技術(shù)和理論都是網(wǎng)絡(luò)安全所涉及的研究領(lǐng)域。那么確保網(wǎng)絡(luò)安全又該注意什么呢?
1.對網(wǎng)絡(luò)上信息的監(jiān)聽
2.對用戶身份的仿冒
3.對網(wǎng)絡(luò)上信息的篡改
4.對發(fā)出的信息予以否認(rèn)
5.對信息進(jìn)行重發(fā)
針對以上問題,我們總結(jié)了幾點(diǎn)常見黑客使用的手法,現(xiàn)在介紹給大家,以便讓你更好地對自己的信息進(jìn)行安全保護(hù)。
口令入侵
顧名思義,口令入侵就是利用一些軟件破解被人所加密的文檔信息。當(dāng)然,這種方法很笨,如今大多黑客多用一種“繞開”口令保護(hù)程序的方法進(jìn)行黑客工作。破解或隔離口令的軟件我們常稱為“Crack”,這些軟件如今很容易就能找到,所以使現(xiàn)在進(jìn)行黑客動作變得非常簡單,就算是不懂系統(tǒng)內(nèi)部結(jié)構(gòu)的初學(xué)者,也可以進(jìn)行操作。
特洛伊木馬術(shù)
就像古希臘人所做的那樣,特洛伊木馬病毒簡單來說就是“打入敵人內(nèi)部”,然后里應(yīng)外合完成黑客行動。最典型的木馬病毒就是把一個能夠幫助黑客完成某一特定動作的程序依附在某個用戶的正常程序中,以篡改該用戶程序的代碼。當(dāng)黑客觸發(fā)該程序時,之前潛入的程序便會被激活去完成某個特定指令,而黑客就可以利用這個病毒所創(chuàng)造的漏洞,從而進(jìn)行侵入工作。由于這種病毒很有特定性,所以使用起來一般都是黑客自己進(jìn)行編寫,需要一定的編程能力,主要是進(jìn)行代碼更改時會需要一定的權(quán)限,所以比較難以搞定。但好壞參半,正因?yàn)樗膹?fù)雜性,所以使被入侵用戶很難發(fā)現(xiàn)。
監(jiān)聽法
監(jiān)聽法很常見也很有效,但是也非常危險(xiǎn)。這種黑客手法很簡單,就是通過截取網(wǎng)絡(luò)節(jié)點(diǎn)的信息,從而得到自己想要的信息。簡單來說就是在一個沒有集線器的網(wǎng)絡(luò)環(huán)境中,利用數(shù)據(jù)傳輸沒有特定方向的特性進(jìn)行截取。眾所周知,網(wǎng)絡(luò)節(jié)點(diǎn)與工作站之間是通過信息流的轉(zhuǎn)送而完成傳輸?shù)?,此時你可以理解成每一個工作站都是一個固定的接口。而你就可以“假扮”這樣一個接口,然后“光明正大”地完成數(shù)據(jù)接收,簡單、有效。如今網(wǎng)絡(luò)上流傳著很多嗅探類軟件,利用它們就可以監(jiān)聽到很多數(shù)據(jù),甚至包括重要的口令文件,甚至有的文件在傳輸過程中根本沒有進(jìn)行加密過程,一旦被截取后果非常嚴(yán)重。
這個辦法簡單有效,但也最容易被人家查出來,是把雙刃劍。
E-mail技術(shù)
E-mail并不是一種侵入的手段,黑客更多是通過E-mail的運(yùn)用把木馬病毒放入到目標(biāo)用戶的系統(tǒng)當(dāng)中。這種辦法非常有效,一般用戶很難發(fā)現(xiàn),尤其現(xiàn)在很多用戶對網(wǎng)絡(luò)安全意識比較模糊,給了很多黑客可乘之機(jī)。
攻擊前的準(zhǔn)備工作
入侵者有兩種,一種是內(nèi)部入侵,就是利用自己職能的便利和權(quán)限來獲取不該有權(quán)限的信息。另一種是外部入侵,包括遠(yuǎn)程入侵和網(wǎng)絡(luò)節(jié)點(diǎn)等入侵方式。所謂家賊難防,內(nèi)部入侵比較難以應(yīng)對,所以我們主要講解一下外部入侵。
網(wǎng)絡(luò)入侵是一件非常系統(tǒng)的事,不管你用何種手段基本都遵循著這個步驟來完成——獲取信息、進(jìn)行侵入、遠(yuǎn)程登錄、取得權(quán)限、取得超級用戶權(quán)限、留下渠道、清除日志。其中分析、獲取、破解是至關(guān)重要的一環(huán),當(dāng)然日志的清除是黑客高手的標(biāo)志。
確定攻擊的目的
黑客在完成一次侵入之前一定會有著明確的目標(biāo),會想到要達(dá)到什么樣的目的,或者是給對方造成什么樣的后果。常見的攻擊目的基本上包含破壞性攻擊和盜取性入侵兩種。從字面上就可以簡單理解,破壞性指的是給對方造成一定的損失,使其系統(tǒng)不能正常運(yùn)行或者不能正常控制,從而達(dá)到破壞的目的。這種破壞性攻擊常見的手段有很多,比如最主要的拒絕服務(wù)攻擊。
而后者的黑客行為就更為常見了,這種入侵目的性很強(qiáng),往往都是黑客鎖定目標(biāo)之后才進(jìn)行目的性操作的。這種攻擊主要是獲得目標(biāo)的一定控制權(quán)限,從而達(dá)到一些制定的目的,比如獲取文件信息等等。這種攻擊比較普遍,威脅性也大,手里握有重要數(shù)據(jù)的用戶一定要嚴(yán)加防范。此類攻擊多是利用服務(wù)器操作系統(tǒng)、軟件或者網(wǎng)絡(luò)協(xié)議的漏洞,進(jìn)行針對性破解的。當(dāng)然還有更簡單的辦法,就是獲取目標(biāo)用戶的密碼,從而獲得權(quán)限進(jìn)行黑客動作,這時黑客也就可以利用管理員的身份進(jìn)行任何操作了。
信息獲取
當(dāng)確定了攻擊目標(biāo)之后,黑客往往下一步動作就是大量收集目標(biāo)用戶的信息,這些信息主要是目標(biāo)用戶的系統(tǒng)類型、版本,還有提供何種服務(wù)。這些資料越全黑客也就越容易找到系統(tǒng)漏洞,從而制定一個有效的黑客方案。
攻擊一臺計(jì)算機(jī)確定運(yùn)行的操作系統(tǒng)非常關(guān)鍵,甚至同一系統(tǒng)不同的版本也會有不同的應(yīng)對措施。因?yàn)槿魏我粋€版本、種類的系統(tǒng)漏洞都各不相同,而且區(qū)別很大。所以要確定目標(biāo)的準(zhǔn)確系統(tǒng)和版本是非常困難的事,這往往都來自黑客的經(jīng)驗(yàn)和判斷。當(dāng)然,這也不是無據(jù)可依,往往從服務(wù)器上的一些信息中都可以看出一些端倪,例如一臺TELNET服務(wù)器上顯示:Unix(r)System V Release 4.0 login,那么基本上就可以確定這個機(jī)器上運(yùn)行的操作系統(tǒng)為SUN OS 5.5或5.5.l。但這樣來判斷操作系統(tǒng)類型不一定100%準(zhǔn)確,因?yàn)檫@些信息都可以進(jìn)行人為修改來迷惑對方,不過這在一般情況下都是最直觀的判斷依據(jù)了。
無論如何,絕大多數(shù)黑客的成功案例都是恰當(dāng)?shù)乩昧讼到y(tǒng)軟件本身的漏洞,而造成這種漏洞的原因往往都是編程者嚴(yán)重缺乏安全意識。比如利用緩沖區(qū)溢出進(jìn)行破譯,就是當(dāng)黑客對目標(biāo)用戶的軟件進(jìn)行非正常的調(diào)用請求時,造成的緩沖區(qū)溢出或者對文件的非法訪問。利用緩沖區(qū)溢出漏洞來獲得非法權(quán)限就是黑客最常使用的手段之一,據(jù)統(tǒng)計(jì)80%以上成功的攻擊都是由此方法實(shí)現(xiàn)的。
權(quán)限的擴(kuò)大
系統(tǒng)漏洞分為遠(yuǎn)程漏洞和本地漏洞兩種,遠(yuǎn)程漏洞是指黑客可以直接利用其它計(jì)算機(jī)上的漏洞,對目標(biāo)用戶進(jìn)行攻擊,從而獲取一定的權(quán)限。這種漏洞的威脅很大,絕大部分的黑客動作都是遠(yuǎn)程漏洞入手的,但利用遠(yuǎn)程漏洞所獲取的權(quán)限往往都不是最高權(quán)限,而普通的用戶權(quán)限所造成的損失就小很多了。雖然造成不了巨大的破壞,但對數(shù)據(jù)安全的保障還是非常危險(xiǎn)的。當(dāng)遇到這種情況,黑客往往都選擇配合本地漏洞來把所獲得的權(quán)限擴(kuò)大,從而得到管理員的操作權(quán)限。
當(dāng)獲得了管理員權(quán)限之后,目標(biāo)電腦就像是為黑客敞開了一座大門,這時就可以進(jìn)行諸如監(jiān)聽、清掃痕跡等動作了。當(dāng)然要完成權(quán)限擴(kuò)大也不是一件容易的事,首先要利用已獲得的普通權(quán)限在本地漏洞中尋找契機(jī),比如放置一些木馬程序來竊得管理員密碼。這種木馬程序在本地很受限制,基本上只能用來套取高級權(quán)限的密碼,而不能進(jìn)行遠(yuǎn)程操控。不過當(dāng)一個黑客得知了另一個普通用戶的登錄權(quán)限,那么就可以利用這個權(quán)限提前安排好一個“復(fù)制陷阱”,等真正管理員錄入管理密碼時,這個陷阱軟件就可以記錄下來再告訴黑客,從而獲得最高的操作權(quán)限。
結(jié)束語
總之,黑客入侵最重要的一點(diǎn)就是找到目標(biāo)用戶的本地漏洞。而當(dāng)?shù)弥镜芈┒吹木唧w信息,那么操作起來就水到渠成了。不過如上文所講,判斷目標(biāo)用戶的系統(tǒng)版本和類型尤為關(guān)鍵,這就需要多下工夫積累經(jīng)驗(yàn)了。