1.熟練掌握 C語言,匯編語言 基本上黑客新手都要學(xué)到disassemble(反匯編),就是通過一個(gè)程序運(yùn)行的匯編套路來分析其源代碼。
并用c語言進(jìn)行測試。匯編要掌握到(stack,protected mode,data segment,ESP,EBP。)
,C語言(bit-field, stdcall。) 2.計(jì)算機(jī)原理 分析程序數(shù)據(jù)沒有十進(jìn)制,只有2進(jìn)制和16進(jìn)制(就是0101 0010或0xFF。)
要懂得基本運(yùn)算。還有big/little-endian等基本術(shù)語,會用WinHex/UltraEdit或VS的dempbin分析程序。
3.網(wǎng)絡(luò):TCP/IP(TCP,UDP,ICMP,DNS,IP等許多協(xié)議),會截取數(shù)據(jù)包,還有分析frame,結(jié)合telnet/ftp/c語言的socket等命令進(jìn)行網(wǎng)絡(luò)打劫!這部分最難最枯燥,建議看understanding TCP/IP這本書 4.系統(tǒng)的認(rèn)知!了解Windows內(nèi)部API,sockets編程,IP proxy(IPv6最好也學(xué)),真正的黑客是幾乎漏不出馬腳的! 這些就是基礎(chǔ),然后熟練掌握各種操作流程,可以強(qiáng)行進(jìn)行telnet,或進(jìn)行TCP hijack,或奪取遠(yuǎn)程sid等。
還有很多要學(xué),根本數(shù)不完。
推薦你看一下幾本書(我看過許多書,走過彎路,這是整理后的最優(yōu)選擇) 1.Assembly language step-by-step 掌握匯編語言,和CPU運(yùn)行機(jī)制,內(nèi)存模式等 2.the C programming language C語言的靈魂制作 3.(C++可以了解一下)C++ from ground up或C++ premier C++在底層其實(shí)代替不了C 4.Understanding TCP/IP TCP/IP網(wǎng)絡(luò)的精髓,最黑客的前提。
這里我羅列出一些需要學(xué)習(xí)的知識: (1) 計(jì)算機(jī)的各種配件知識。
(2) 網(wǎng)卡,(3) 路由器,(4) 交換機(jī)等一些網(wǎng)絡(luò)設(shè)備(5) 的專業(yè)術(shù)語及工作原理。 (6) 網(wǎng)線的分類,(7) 數(shù)據(jù)傳輸?shù)幕厩闆r,(8) 交叉線,(9) 直通線的水晶頭打法。
(10) 了解最新的網(wǎng)絡(luò)設(shè)備(11) 具有那些功能,(12) 試著去解釋或想象這些功能的實(shí)現(xiàn)方法。 (13) 了解硬件編程語言(匯編語言)。
(14) 深入學(xué)習(xí)內(nèi)存分配的原理 對于網(wǎng)絡(luò)知識,本鼠認(rèn)為并不是多多易善,而且恰恰相反,只要專著于一門就OK了!因?yàn)?,網(wǎng)絡(luò)知識實(shí)在是太過宏大,一個(gè)人就算以一生的時(shí)間也不可能強(qiáng)其完全學(xué)完,何況處在知識爆炸的今天,往往一門技術(shù),你剛剛掌握,說不定它已經(jīng)成為了眾所周知的秘密了。所以學(xué)習(xí)黑客技術(shù),講求的就是一個(gè)“快”字!當(dāng)然這首先需要大家有扎實(shí)的網(wǎng)絡(luò)基礎(chǔ)知識。
這些知識,你可以從大學(xué)或者社會上一些培訓(xùn)機(jī)構(gòu)獲得。對于基礎(chǔ)知識的學(xué)習(xí),無論網(wǎng)絡(luò)上還是現(xiàn)實(shí)中都有很多很多人提及,在這里,小鼠就不做詳細(xì)的說明了,只是羅列一些知識點(diǎn): (1)計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)(好象很多出版社都出過這本書)最出名的就是清華的。
主要講解網(wǎng)絡(luò)的七層架構(gòu)及一些協(xié)議的說明。光這個(gè)相信大家都要研究好久,畢竟知識在不斷更新的,面太廣,所以只能說是做了解。
(2)在對計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)的學(xué)習(xí)過程中,進(jìn)一步發(fā)掘自己的興趣,找準(zhǔn)自己的學(xué)習(xí)方向。將知識進(jìn)一步細(xì)分,從而往深處鉆研。
上面小鼠已經(jīng)說了,學(xué)習(xí)黑客技術(shù)講求的是一個(gè)“快”字。為什么?什么是牛人?牛人就是擁有別人所不知道的技術(shù)或者說是大多數(shù)人不知道的技術(shù)。
如果你擁有這樣的技術(shù),你就是牛人。舉個(gè)簡單的例子,一間裝滿食物的房子的門是虛掩著的,一群饑餓的人站在門口,但誰都認(rèn)為門是鎖著的,當(dāng)其中一個(gè)人無意間發(fā)現(xiàn)了門并沒有鎖。
他便進(jìn)了門,獲得了食物。當(dāng)他將這個(gè)知識告訴了第二個(gè)人,第二個(gè)人告訴了第三個(gè)人,很快大家都知道可以進(jìn)門拿食物,這個(gè)知識便沒有了新鮮感,從而變?yōu)榱顺WR。
當(dāng)房子的主人知道了這個(gè)事情,并在房間上加了把鎖,大家又不能得到食物了,從而這個(gè)知識也就作廢了。當(dāng)其中一個(gè)人會打開那把鎖,這個(gè)技術(shù)就又成了一個(gè)新的知識 學(xué)習(xí)黑客知識也一樣。
只有我們知道最新的漏洞,知道利用這個(gè)漏洞的方法,我們才能最先拿到“房子里面的食物”。這些最新,最權(quán)威的知識那里來?最快的當(dāng)然是自己發(fā)現(xiàn),或者自己編寫的啊。
當(dāng)然,如果你還不具備這樣的能力的話,不妨去做那“第二個(gè)人”,到各大專業(yè)網(wǎng)站去搜索,查看。最好是去國外的站點(diǎn),畢竟,計(jì)算機(jī)是老美最先搞出來的,他們那邊技術(shù)比國內(nèi)先進(jìn)的多。
如果你在語言上不方便,那你可以到國內(nèi)的一些專業(yè)站點(diǎn)查看。例如小鼠所在的第八軍團(tuán)(做個(gè)廣告哈:)
電腦在開機(jī)自檢時(shí)出現(xiàn)問題后會出現(xiàn)各種各樣的英文短句,短句中包含了非常重要的信息,讀懂這些信息可以自己解決一些小問題,可是這些英文難倒了一部分朋友,與是我收集了一些常見的BIOS短句的解釋,大家可以參考一下。
1.CMOS battery failed 中文:CMOS電池失效。 解釋:這說明CMOS電池已經(jīng)快沒電了,只要更換新的電池即可。
2.CMOS check sum error-Defaults loaded 中文:CMOS 執(zhí)行全部檢查時(shí)發(fā)現(xiàn)錯(cuò)誤,要載入系統(tǒng)預(yù)設(shè)值。 解釋:一般來說出現(xiàn)這句話都是說電池快沒電了,可以先換個(gè)電池試試,如果問題還是沒有解決,那么說明CMOS RAM可能有問題,如果沒過一年就到經(jīng)銷商處換一塊主板,過了一年就讓經(jīng)銷商送回生產(chǎn)廠家修一下吧! 3.Press ESC to skip memory test 中文:正在進(jìn)行內(nèi)存檢查,可按ESC鍵跳過。
解釋:這是因?yàn)樵贑MOS內(nèi)沒有設(shè)定跳過存儲器的第二、三、四次測試,開機(jī)就會執(zhí)行四次內(nèi)存測試,當(dāng)然你也可以按 ESC 鍵結(jié)束內(nèi)存檢查,不過每次都要這樣太麻煩了,你可以進(jìn)入COMS設(shè)置后選擇BIOS FEATURS SETUP,將其中的Quick Power On Self Test設(shè)為Enabled,儲存后重新啟動即可。 4.Keyboard error or no keyboard present 中文:鍵盤錯(cuò)誤或者未接鍵盤。
解釋:檢查一下鍵盤的連線是否松動或者損壞。 5.Hard disk install failure 中文:硬盤安裝失敗。
解釋:這是因?yàn)橛脖P的電源線或數(shù)據(jù)線可能未接好或者硬盤跳線設(shè)置不當(dāng)。你可以檢查一下硬盤的各根連線是否插好,看看同一根數(shù)據(jù)線上的兩個(gè)硬盤的跳線的設(shè)置是否一樣,如果一樣,只要將兩個(gè)硬盤的跳線設(shè)置的不一樣即可(一個(gè)設(shè)為Master,另一個(gè)設(shè)為Slave)。
6.Secondary slave hard fail 中文:檢測從盤失敗 解釋:可能是CMOS設(shè)置不當(dāng),比如說沒有從盤但在CMOS里設(shè)為有從盤,那么就會出現(xiàn)錯(cuò)誤,這時(shí)可以進(jìn)入COMS設(shè)置選擇IDE HDD AUTO DETECTION進(jìn)行硬盤自動偵測。也可能是硬盤的電源線、數(shù)據(jù)線可能未接好或者硬盤跳線設(shè)置不當(dāng),解決方法參照第5條。
7.Floppy Disk(s) fail 或 Floppy Disk(s) fail(80) 或Floppy Disk(s) fail(40) 中文:無法驅(qū)動軟盤驅(qū)動器。 解釋:系統(tǒng)提示找不到軟驅(qū),看看軟驅(qū)的電源線和數(shù)據(jù)線有沒有松動或者是接錯(cuò),或者是把軟驅(qū)放到另一臺機(jī)子上試一試,如果這些都不行,那么只好再買一個(gè)了,好在軟驅(qū)還不貴。
8.Hard disk(s) diagnosis fail 中文:執(zhí)行硬盤診斷時(shí)發(fā)生錯(cuò)誤。 解釋:出現(xiàn)這個(gè)問題一般就是說硬盤本身出現(xiàn)故障了,你可以把硬盤放到另一臺機(jī)子上試一試,如果問題還是沒有解決,只能去修一下了。
9.Memory test fail 中文:內(nèi)存檢測失敗。 解釋:重新插拔一下內(nèi)存條,看看是否能解決,出現(xiàn)這種問題一般是因?yàn)閮?nèi)存條互相不兼容,去換一條吧! 10.Override enable-Defaults loaded 中文:當(dāng)前CMOS設(shè)定無法啟動系統(tǒng),載入BIOS中的預(yù)設(shè)值以便啟動系統(tǒng)。
解釋:一般是在COMS內(nèi)的設(shè)定出現(xiàn)錯(cuò)誤,只要進(jìn)入COMS設(shè)置選擇LOAD SETUP DEFAULTS載入系統(tǒng)原來的設(shè)定值然后重新啟動即可。 11.Press TAB to show POST screen 中文:按TAB鍵可以切換屏幕顯示。
解釋:有的OEM廠商會以自己設(shè)計(jì)的顯示畫面來取代BIOS預(yù)設(shè)的開機(jī)顯示畫面,我們可以按TAB鍵來在BIOS預(yù)設(shè)的開機(jī)畫面與廠商的自定義畫面之間進(jìn)行切換。 12.Resuming from disk,Press TAB to show POST screen 中文:從硬盤恢復(fù)開機(jī),按TAB顯示開機(jī)自檢畫面)。
解釋:這是因?yàn)橛械闹靼宓腂IOS提供了Suspend to disk(將硬盤掛起)的功能,如果我們用Suspend to disk的方式來關(guān)機(jī),那么我們在下次開機(jī)時(shí)就會顯示此提示消息。 13.Hareware Monitor found an error,enter POWER MANAGEMENT SETUP for details,Press F1 to continue,DEL to enter SETUP 中文:監(jiān)視功能發(fā)現(xiàn)錯(cuò)誤,進(jìn)入POWER MANAGEMENT SETUP察看詳細(xì)資料,按F1鍵繼續(xù)開機(jī)程序,按DEL鍵進(jìn)入COMS設(shè)置。
解釋:有的主板具備硬件的監(jiān)視功能,可以設(shè)定主板與CPU的溫度監(jiān)視、電壓調(diào)整器的電壓輸出準(zhǔn)位監(jiān)視和對各個(gè)風(fēng)扇轉(zhuǎn)速的監(jiān)視,當(dāng)上述監(jiān)視功能在開機(jī)時(shí)發(fā) 覺有異常情況,那么便會出現(xiàn)上述這段話,這時(shí)可以進(jìn)入COMS設(shè)置選擇POWER MANAGEMENT SETUP,在右面的**Fan Monitor**、**Thermal Monitor**和**Voltage Monitor**察看是哪部分發(fā)出了異常,然后再加以解決。來這我教你 hacker.org。) Java也是好的入門語言。
它比Python難得多,但是生成的代碼速度也快得多。 它同時(shí)也是一種優(yōu)秀的計(jì)算機(jī)語言,不止是用來入門。
但是注意,如果你只會一兩門語言,你將不會達(dá)到黑客所要求的技術(shù)水平, 甚至也不能達(dá)到一個(gè)程序員的水平——你需要學(xué)會如何以抽象的方式思考編程問題, 獨(dú)立于任何語言。要做一名真正的黑客,你需要學(xué)會在幾天內(nèi)通過一些手冊, 結(jié)合你現(xiàn)在所知,迅速掌握一門新語言。
這意味著你應(yīng)該學(xué)會幾種截然不同的語言。 如果要做一些重要的編程工作,你將不得不學(xué)習(xí)C語言,Unix的核心語言。
C++與C非常其他類似;如果你了解其中一種,學(xué)習(xí)另一種應(yīng)該不難。 但這兩種都不適合編程入門者學(xué)習(xí)。
而且事實(shí)上,你越避免用C編程,你的工作效率會越高。 C非常有效率,節(jié)約你的機(jī)器資源。
不幸的是,C的高效是通過你手動做很多底層的管理 (如內(nèi)存)來達(dá)到的。底層代碼都是復(fù)雜極易出現(xiàn)bug的,會使你花極多的時(shí)間調(diào)試。
如今的機(jī)器速度如此之快,這通常是得不償失——比較明智的做法是使用一種運(yùn)行較慢、較低 效率,但大幅節(jié)省你的時(shí)間的語言。因此,選擇Python。
其他對黑客而言比較重要的語言包括 Perl和 LISP。 Perl實(shí)用,值得一學(xué);它被廣泛用于動態(tài)網(wǎng)頁和系統(tǒng)管理, 因此即便你從不用Perl寫程序,至少也應(yīng)該學(xué)會看。
許多人使用Perl的理由和 我建議你使用Python的理由一樣,都是為了避免用C完成那些不需要C高效率的工作。 你會需要理解那些工作的代碼的。
LISP值得學(xué)習(xí)的理由不同——最終掌握了它時(shí)你會得到豐富的啟迪和經(jīng)驗(yàn)。 這些經(jīng)驗(yàn)會使你在以后的日子里成為一個(gè)更好的程序員,即使你實(shí)際上很少使用LISP本身。
當(dāng)然,實(shí)際上你最好五種都會(Python,Java,C/C++,Perl和LISP)。 除了是最重要的黑客語言外,它們還代表了截然不同的編程思路和方法,每種都會讓你受益非淺。
這里我無法給你完完全全的指導(dǎo)教會你如何編程——這是個(gè)復(fù)雜的技能。 但我可以告訴你,書本和上課也不能作到(最好的黑客中,有許多,也許 幾乎都是自學(xué)成材的)。
你可以從書本上學(xué)到語言的特點(diǎn)——只是一些皮毛, 但要使書面知識成為自身技能只能通過實(shí)踐和虛心向他人學(xué)習(xí)。 因此要作到 (一)讀代碼及(二)寫代碼。
學(xué)習(xí)如何編程就象學(xué)習(xí)用優(yōu)美的自然語言寫作一樣。 最好的做法是讀一些大師的名著,試著自己寫點(diǎn)東西,再讀些,再寫點(diǎn),再讀些,再寫點(diǎn)…… 如此往復(fù),直到你的文章達(dá)到你體會到的范文的簡潔和力量。
過去找到適合閱讀的好的代碼是困難的,因?yàn)閹缀鯖]有大型程序的源代碼能讓新手練手。 這種狀況已經(jīng)戲劇性地發(fā)生變化;開放源代碼軟件,編程工具和操作系統(tǒng)(全都由黑客寫成)現(xiàn)在已經(jīng) 隨處可見。
讓我們在下一個(gè)話題中繼續(xù)討論…… 2. 得到一個(gè)開放源代碼的Unix并學(xué)會使用、運(yùn)行它。 我假設(shè)你已經(jīng)擁有或者能使用一臺個(gè)人電腦(今天的孩子們真幸福 :-) )。
新手們能夠朝學(xué)習(xí)黑客技能邁出的最基本的一步就是得到 一份Linux或BSD-Unix的一種,安裝在個(gè)人電腦上,并運(yùn)行它。 沒錯(cuò),這世界上除了Unix還有其他操作系統(tǒng)。
但它們都是以二進(jìn)制形式發(fā)布的——你無法讀到它的源代碼,也不可能修改它。 嘗試在運(yùn)行DOS或Windows或MacOS的機(jī)器上學(xué)習(xí)黑客技術(shù),就象是帶著腳鐐學(xué)跳舞。
除此之外,Unix還是Internet的操作系統(tǒng)。 你可以學(xué)會上網(wǎng)卻不知道Unix,但你不了解Unix就無法成為一名Internet黑客。
因此,今天的黑客文化在很大程度上是以Unix為中心的。(這點(diǎn)并不總是真的, 一些很早的黑客對此一直很不高興,但Unix和Internet之間的聯(lián)系已是如此之強(qiáng), 甚至連Microsoft也無可奈何。)
所以, 安裝一套UNIX——我個(gè)人喜愛LINUX但還有其他種類的 (是的,你可以同時(shí)安裝Linux及DOS/Windows在同一電腦上)。 學(xué)習(xí)它,使用它,配置它。
用它在Internet上沖浪。閱讀它的源代碼。
修改它的源代碼。 你會得到比在Microsoft操作系統(tǒng)上更好的編程工具(包括C,LISP,Python及Perl)。
你會覺得樂趣無窮,學(xué)到在你成為大師之前意識不到的更多的知識。 想知道更多關(guān)于學(xué)習(xí)Unix的信息,訪問 The Loginataka。
想知道如何得到一份Linux,訪問 我在哪里可以獲得Linux。 (譯者:對于中文讀者來講,最簡單的方式未過于前往附近的D版/正版光盤店。)
你可以在 www.bsd.org找到BSD Unix的求助。
要是想學(xué)的話,給你介紹一些書吧,大家都是自學(xué)的,拜師基本都收費(fèi):初學(xué)先看:《黑客X檔案》(月刊),《傻瓜黑客》《黑客饕餮大餐》《黑客入門》等;
再看:《黑客手冊》(月刊),語言,如:C/C++,VB,JAVA,ASP,PHP,.NET等.看興趣再看《黑客編程》《精通黑客免殺》《加密與解密》《精通腳本黑客》;
然后看《黑客防線》(要是不會語言就別看了,浪費(fèi)時(shí)間的),還有協(xié)議、內(nèi)核、系統(tǒng)有關(guān)的資料和書
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€(gè)月內(nèi)通知我們,我們會及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時(shí)間:3.857秒