官术网_书友最值得收藏!

  • 0day安全
  • 王清主編
  • 2860字
  • 2019-01-01 12:25:59

前言

關(guān)于安全技術(shù)人才

國(guó)內(nèi)外對(duì)網(wǎng)絡(luò)安全技術(shù)人才的需求量很大,精通緩沖區(qū)溢出攻擊的安全專家可以在大型軟件公司輕易地獲得高薪的安全咨詢職位。

信息安全技術(shù)是一個(gè)對(duì)技術(shù)性要求極高的領(lǐng)域,除了扎實(shí)的計(jì)算機(jī)理論基礎(chǔ)外,更重要的是優(yōu)秀的動(dòng)手實(shí)踐能力。在我看來(lái),不懂二進(jìn)制數(shù)據(jù)就無(wú)從談起安全技術(shù)。

國(guó)內(nèi)近年來(lái)對(duì)網(wǎng)絡(luò)安全的重視程度正在逐漸增加,許多高校相繼成立了“信息安全學(xué)院”或者設(shè)立“網(wǎng)絡(luò)安全專業(yè)”。科班出身的學(xué)生往往具有扎實(shí)的理論基礎(chǔ),他們通曉密碼學(xué)知識(shí)、知道PKI體系架構(gòu),但要談到如何真刀實(shí)槍地分析病毒樣本、如何拿掉PE上復(fù)雜的保護(hù)殼、如何在二進(jìn)制文件中定位漏洞、如何對(duì)軟件實(shí)施有效的攻擊測(cè)試……能夠做到的人并不多。

雖然每年有大量的網(wǎng)絡(luò)安全技術(shù)人才從高校涌入人力市場(chǎng),真正能夠滿足用人單位需求的卻寥寥無(wú)幾。捧著書(shū)本去做應(yīng)急響應(yīng)和風(fēng)險(xiǎn)評(píng)估是濫竽充數(shù)的作法,社會(huì)需要的是能夠?yàn)榭蛻羟袑?shí)解決安全風(fēng)險(xiǎn)的技術(shù)精英,而不是滿腹教條的闊論者。

我所認(rèn)識(shí)的很多資深安全專家都并非科班出身,他們有的學(xué)醫(yī)、有的學(xué)文、有的根本沒(méi)有學(xué)歷和文憑,但他們卻技術(shù)精湛,充滿自信。

這個(gè)行業(yè)屬于有興趣、夠執(zhí)著的人,屬于為了夢(mèng)想能夠不懈努力的意志堅(jiān)定者。

關(guān)于“Impossible”與“I’m possible”

從拼寫(xiě)上看,“Impossible”與“I’m possible”僅僅相差一個(gè)用于縮寫(xiě)的撇號(hào)(apostrophe)。學(xué)完本書(shū)之后,您會(huì)發(fā)現(xiàn)將“不可能(Impossible)”變?yōu)椤翱赡埽↖’m possible)”的“關(guān)鍵(key point)”往往就是那么簡(jiǎn)單的幾個(gè)字節(jié),本書(shū)將要討論的就是在什么位置畫(huà)上這一撇!

從語(yǔ)法上看,“Impossible”是一個(gè)單詞,屬于數(shù)據(jù)的范疇;“I’m possible”是一個(gè)句子,含有動(dòng)詞(算符),可以看成是代碼的范疇。學(xué)完本書(shū)之后,您會(huì)明白現(xiàn)代攻擊技術(shù)的精髓就是混淆數(shù)據(jù)和代碼的界限,讓系統(tǒng)錯(cuò)誤地把數(shù)據(jù)當(dāng)作代碼去執(zhí)行。

從意義上看,To be the apostrophe which changed“Impossible”into“I’m possible”代表著人類挑戰(zhàn)自我的精神,代表著對(duì)理想執(zhí)著的追求,代表著對(duì)事業(yè)全情的投入,代表著敢于直面慘淡人生的豪情……而這一切正好是黑客精神的完美詮釋——還記得在電影《Sword Fish(劍魚(yú)行動(dòng))》中,Stan在那臺(tái)酷斃的計(jì)算機(jī)前堅(jiān)定地說(shuō):“Nothing is impossible”,然后開(kāi)始在使用Vernam加密算法和512位密鑰加密的網(wǎng)絡(luò)上,挑戰(zhàn)蠕蟲(chóng)的經(jīng)典鏡頭嗎?

于是我在以前所發(fā)表過(guò)的所有文章和代碼中都加入了這個(gè)句子。盡管我的英語(yǔ)老師和不少外國(guó)朋友提醒我,說(shuō)這個(gè)句子帶有強(qiáng)烈的“Chinglish”味道,甚至?xí)餘ative Speaker的誤解,然而我最終還是決定把它寫(xiě)進(jìn)書(shū)里。

雖然我不是莎士比亞那樣的文豪,可以創(chuàng)造語(yǔ)言,發(fā)明修辭,用文字撞擊人們的心靈,但這句“Chinglish”的確能把我所要表達(dá)的含義精確地傳遞給中國(guó)人,這已足夠。

關(guān)于本書(shū)

通常情況下,利用緩沖區(qū)溢出漏洞需要深入了解計(jì)算機(jī)系統(tǒng),精通匯編語(yǔ)言乃至二進(jìn)制的機(jī)器代碼,這足以使大多數(shù)技術(shù)愛(ài)好者望而卻步。

隨著時(shí)間的推移,緩沖區(qū)溢出攻擊在漏洞的挖掘、分析、調(diào)試、利用等環(huán)節(jié)上已經(jīng)形成了一套完整的體系。伴隨著調(diào)試技術(shù)和逆向工程的發(fā)展,Windows平臺(tái)下涌現(xiàn)出的眾多功能強(qiáng)大的debug工具和反匯編分析軟件逐漸讓二進(jìn)制世界和操作系統(tǒng)變得不再神秘,這有力地推動(dòng)了Windows平臺(tái)下緩沖區(qū)溢出的研究。除此以外,近年來(lái)甚至出現(xiàn)了基于架構(gòu)(Frame Work)的漏洞利用程序開(kāi)發(fā)平臺(tái),讓這項(xiàng)技術(shù)的進(jìn)入門檻大大降低,使得原本高不可攀的黑客技術(shù)變得不再遙不可及。

遺憾的是,與國(guó)外飛速發(fā)展的高級(jí)黑客技術(shù)相比,目前國(guó)內(nèi)還沒(méi)有系統(tǒng)介紹Windows平臺(tái)下緩沖區(qū)溢出漏洞利用技術(shù)的專業(yè)書(shū)籍,而且相關(guān)的中文文獻(xiàn)資料也非常匱乏。

本書(shū)將系統(tǒng)全面地介紹Windows平臺(tái)軟件緩沖區(qū)溢出漏洞的發(fā)現(xiàn)、檢測(cè)、分析和利用等方面的知識(shí)。

為了保證這些技術(shù)能夠被讀者輕松理解并掌握,本書(shū)在敘述中盡量避免枯燥乏味的大段理論闡述和代碼粘貼。概念只有在實(shí)踐中運(yùn)用后才能真正被掌握,這是我多年來(lái)求學(xué)生涯的深刻體會(huì)。書(shū)中所有概念和方法都會(huì)在緊隨其后的調(diào)試實(shí)驗(yàn)中被再次解釋,實(shí)驗(yàn)和案例是本書(shū)的精髓所在。從為了闡述概念而精心自制的漏洞程序調(diào)試實(shí)驗(yàn)到現(xiàn)實(shí)中已經(jīng)造成很大影響的著名漏洞分析,每一個(gè)調(diào)試實(shí)驗(yàn)都有著不同的技術(shù)側(cè)重點(diǎn),每一個(gè)漏洞利用都有自己的獨(dú)到之處。

我將帶領(lǐng)您一步一步地完成調(diào)試的每一步,并在這個(gè)過(guò)程中逐步解釋漏洞分析思路。不管您是網(wǎng)絡(luò)安全從業(yè)人員、黑客技術(shù)發(fā)燒友、網(wǎng)絡(luò)安全專業(yè)的研究生或本科生,如果您能夠完成這些分析實(shí)驗(yàn),相信您的軟件調(diào)試技術(shù)、對(duì)操作系統(tǒng)底層的理解等計(jì)算機(jī)能力一定會(huì)得到一次質(zhì)的飛躍,并能夠?qū)Π踩夹g(shù)有一個(gè)比較深入的認(rèn)識(shí)。

關(guān)于本書(shū)源代碼及相關(guān)文檔

本書(shū)中調(diào)試實(shí)驗(yàn)所涉及的所有源代碼和PE文件都可從看雪論壇相關(guān)版面下載http://zeroday.pediy.com。

這些代碼都經(jīng)過(guò)了仔細(xì)調(diào)試,如在使用中發(fā)現(xiàn)問(wèn)題,請(qǐng)查看實(shí)驗(yàn)指導(dǎo)中對(duì)實(shí)驗(yàn)環(huán)境的要求。個(gè)別攻擊實(shí)驗(yàn)的代碼可能會(huì)被部分殺毒軟件鑒定為存在風(fēng)險(xiǎn)的文件,請(qǐng)您調(diào)試前詳細(xì)閱讀實(shí)驗(yàn)說(shuō)明。

關(guān)于對(duì)讀者的要求

雖然溢出技術(shù)經(jīng)常涉及匯編語(yǔ)言,但本書(shū)并不要求讀者一定具備匯編語(yǔ)言的開(kāi)發(fā)能力。所用到的指令和寄存器在相關(guān)的章節(jié)都有額外介紹,只要您有C語(yǔ)言基礎(chǔ)就能消化本書(shū)的絕大部分內(nèi)容。

我并不推薦在閱讀本書(shū)之前先去系統(tǒng)的學(xué)習(xí)匯編知識(shí)和逆向知識(shí),枯燥的尋址方式和指令介紹很容易讓人失去學(xué)習(xí)的興趣。本書(shū)將帶您迅速跨過(guò)漏洞分析與利用技術(shù)的進(jìn)入門檻。即使您并不懂匯編與二進(jìn)制也能完成書(shū)中的調(diào)試實(shí)驗(yàn),并獲得一定的樂(lè)趣。當(dāng)然,在您達(dá)到一定水平想進(jìn)一步提高時(shí),補(bǔ)習(xí)逆向知識(shí)和匯編語(yǔ)言將是絕對(duì)必要的。

本書(shū)適合的讀者群體包括:

·安全技術(shù)工作者 本書(shū)比較全面、系統(tǒng)地收錄了Windows平臺(tái)下緩沖區(qū)溢出攻擊所涉及的各種方法,將會(huì)是一本不錯(cuò)的技術(shù)字典。

·信息安全理論研究者 本書(shū)中披露的許多漏洞利用、檢測(cè)方法在學(xué)術(shù)上具有一定的前沿性,在一定程度上反映了目前國(guó)內(nèi)外安全技術(shù)所關(guān)注的焦點(diǎn)問(wèn)題。

·QA工程師、軟件測(cè)試人員 本書(shū)第4篇中集中介紹了產(chǎn)品安全性測(cè)試方面的知識(shí),這些方法可以指導(dǎo)QA人員審計(jì)軟件中的安全漏洞,增強(qiáng)軟件的安全性,提高軟件質(zhì)量。

·軟件開(kāi)發(fā)人員 知道漏洞利用原理將有利于編寫(xiě)出安全的代碼。

·高校信息安全專業(yè)的學(xué)生 本書(shū)將在一定程度上彌補(bǔ)高校教育與信息安全公司人才需求脫節(jié)的現(xiàn)象。用一套過(guò)硬的調(diào)試技術(shù)和逆向技術(shù)來(lái)武裝自己可以讓您在未來(lái)的求職道路上利于不敗之地。精通exploit的人才可以輕松征服任何一家殺毒軟件公司或安全資訊公司的求職門檻,獲得高薪工作。

·本科二年級(jí)以上計(jì)算機(jī)系學(xué)生 通過(guò)調(diào)試實(shí)驗(yàn),你們將更加深入地了解計(jì)算機(jī)體系架構(gòu)和操作系統(tǒng)。這些知識(shí)一樣將成為您未來(lái)求職時(shí)過(guò)硬的敲門磚。

·所有黑客技術(shù)愛(ài)好者 如果您厭倦了網(wǎng)絡(luò)嗅探、端口掃描之類的掃盲讀物,您將在本書(shū)中學(xué)到實(shí)施有效攻擊所必備的知識(shí)和技巧。

關(guān)于反饋與提問(wèn)

讀者在閱讀本書(shū)時(shí)如遇到任何問(wèn)題,可以到看雪論壇相關(guān)版面參與討論http://zeroday.pediy.com。

致謝

感謝電子工業(yè)出版社對(duì)本書(shū)的大力支持,尤其是畢寧編輯為本書(shū)出版所做的大量工作。

感謝看雪對(duì)本書(shū)的大力推薦和支持以及看雪論壇為本書(shū)提供的交流平臺(tái)。

非常感謝在本書(shū)第一版問(wèn)世后,向我提供勘誤信息的眾多熱心讀者,本書(shū)質(zhì)量的提高離不開(kāi)你們熱心的幫助。

感謝賽門鐵克中國(guó)響應(yīng)中心的病毒分析員Beannie Cai為本書(shū)第26章友情撰稿。

最后感謝我的母校西安交通大學(xué),是那里踏實(shí)求是的校風(fēng)與校訓(xùn)激勵(lì)著我不斷進(jìn)步。

主站蜘蛛池模板: 武陟县| 白水县| 思茅市| 苍南县| 西乌珠穆沁旗| 百色市| 台州市| 扎兰屯市| 会泽县| 白城市| 铜梁县| 呼和浩特市| 陕西省| 三都| 福清市| 临武县| 台湾省| 全椒县| 大英县| 疏附县| 搜索| 临汾市| 孝感市| 夹江县| 遵义县| 盐边县| 永春县| 东宁县| 太原市| 裕民县| 巧家县| 巩义市| 怀柔区| 内江市| 逊克县| 大关县| 柘荣县| 临澧县| 翼城县| 云龙县| 四会市|