阻擊黑客:技術、策略與案例( 簡體 字) | |
作者:徐菲,熊剛,李鎮 | 類別:1. -> 安全 -> 網路安全 -> 駭客攻擊與入侵 |
出版社:電子工業出版社 | 3dWoo書號: 46444 詢問書籍請說出此書號! 有庫存 NT售價: 395 元 |
出版日:3/1/2017 | |
頁數:356 | |
光碟數:0 | |
站長推薦: | |
印刷:黑白印刷+數頁彩色插圖 | 語系: ( 簡體 字 ) |
ISBN:9787121310669 | 加入購物車 │加到我的最愛 (請先登入會員) |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社) | |
第1部分 問題定義
第1章 介紹 3 1.1 變化 3 1.2 適應變化 5 1.3 安全分析 9 1.4 用詞的一點說明 11 第2章 對安全的思考 13 2.1 安全的思維方式 13 2.2 明確你的目標 15 2.3 安全作為一個系統問題 19 2.4 像對手一樣思考 22 第3章 威脅模型 27 3.1 誰是你的敵人 27 3.2 攻擊的分類 30 3.3 高級可持續性威脅 32 3.4 什么處在威脅之中 36 3.5 期限問題 37 第2部分 技術 第4章 防病毒軟件 41 4.1 特征 41 4.2 防病毒軟件的養護和培育 46 4.3 隨時都需要防病毒嗎 48 4.4 分析 52 第5章 防火墻和入侵檢測系統 57 5.1 防火墻不做的事 57 5.2 防火墻的原理 58 5.3 入侵檢測系統 65 5.4 入侵防御系統 66 5.5 泄露檢測 67 5.6 分析 71 第6章 加密和VPN 75 6.1 加密——特效藥 75 6.2 密鑰分發 78 6.3 傳輸層加密 79 6.4 客體加密 82 6.5 VPN 85 6.6 協議、算法和密鑰長度建議 89 6.7 分析 96 第7章 密碼和認證 99 7.1 認證的原則 99 7.2 密碼 100 7.3 存儲密碼:用戶 106 7.4 密碼被盜 110 7.5 忘記密碼 112 7.6 生物特征 114 7.7 一次性密碼 118 7.8 加密認證 122 7.9 令牌和手機 124 7.10 單點登錄和聯合認證 126 7.11 存儲密碼:服務器 128 7.12 分析 132 第8章 PKI:公鑰基礎設施 137 8.1 什么是一個證書 137 8.2 PKI:你相信誰 138 8.3 PKI與pki 142 8.4 證書的過期和撤銷 148 8.5 分析 153 第9章 無線訪問 157 9.1 無線不安全的迷思 157 9.2 保持連接 163 9.3 斷開連接 166 9.4 智能手機、平板電腦、玩具以及移動電話接入 167 9.5 分析 168 第10章 云和虛擬化 171 10.1 分布式和隔離 171 10.2 虛擬機 172 10.3 沙箱 174 10.4 云 177 10.5 云提供商的安全架構 178 10.6 云計算 180 10.7 云存儲 181 10.8 分析 183 第3部分 安全操作 第11章 創建安全系統 189 11.1 正確的編碼 190 11.2 設計問題 194 11.3 外部鏈接 196 11.4 可信方 200 11.5 原始系統 203 11.6 結構化防御 204 11.7 安全評估 207 第12章 選擇軟件 211 12.1 質量問題 211 12.2 明智地選擇軟件 214 第13章 及時更新軟件 219 13.1 漏洞和補丁 219 13.2 補丁的問題 222 13.3 如何打補丁 223 第14章 人 227 14.1 雇員、培訓和教育 228 14.2 用戶 231 14.3 社會工程 233 14.4 可用性 235 14.5 人的因素 240 第15章 系統管理 243 15.1 系統管理員:你最重要的安全資源 243 15.2 走正確的路 244 15.3 系統管理工具和架構 247 15.4 將系統管理外包 250 15.5 黑暗面是權力 251 第16章 安全過程 255 16.1 計劃 255 16.2 安全策略 256 16.3 記錄和報告 259 16.4 事件響應 262 第4部分 關于未來 第17章 案例分析 267 17.1 小型的醫療實踐 267 17.2 電子商務網站 269 17.3 加密的弱點 272 17.4 物聯網 274 第18章 恰當的做法 281 18.1 過時 281 18.2 新設備 282 18.3 新的挑戰 283 18.4 新的防御 284 18.5 考慮隱私 285 18.6 整體考慮 286 參考文獻 287 作者是世界上最受尊重和認可的安全專家之一,他在本書中提供了一種看安全的新視角。本書第1部分從問題定義開始,從系統化的角度看待安全,討論當前安全發展的變化、安全的思維方式、目標,并且分析了不同的威脅模型。在此基礎之上,第2部分介紹安全相關的技術,除了對技術本身進行介紹之外,作者還很好地考慮了不同情況、不同需求,以及在應對不同威脅模型時,各種技術的優勢和可能面臨的問題。第3部分介紹具體的安全操作,即如何創建安全的系統,考慮了包括代碼、設計、架構、管理以及人員等眾多綜合因素。第4部分分析具體案例,并且對未來的技術發展和應對給出了建議。本書基于作者在安全領域多年的實際經驗,結合新技術的發展,給出了實用而全面的安全技術指導,為創建安全系統提供了很好的借鑒。
序言
多數計算機安全類書籍只告訴大家應當做什么和不應當做什么。而本書將會告訴你為什么。 要保證安全,需要做的事情有很多:運行殺毒軟件,安裝防火墻,將所有東西上鎖,遵循嚴格的檢查規定,加密并監視網絡中的所有流量,重金聘請安全顧問,等等。可結果卻是相當讓人失望的:公司在安全上投入巨大,卻還是會遭受大量的計算機相關的攻擊。很明顯,這里還存在問題。 問題的根源具有兩面性:我們在保護(以及在保護上投資)錯誤的東西,我們在這個過程中影響了生產效率。與汽車的車鎖不同,有了汽車車鎖就能夠將車停在不安全的地方,從而加強了汽車的使用功能。而計算機安全似乎是在限制用戶做事情,而不是讓用戶能夠在不安全的地方做事情。人們——尤其是雇員——希望能夠提高生產效率,當安全措施影響生產效率時,猜測一下什么會被犧牲掉?沒錯,就是安全。 解決方法同樣也有兩面性:保護正確的事情,并且讓雇員能夠很容易地做正確的事情。這不僅僅需要一個列表,還需要對于實際威脅和技術的了解。這就是這本書的內容,如何來思考安全。 保護正確的事情 安全始于知道保護什么,以及保護其不受何種威脅。這也就意味著,任何安全建議,如果沒有以這兩個問題開始,都是沒有意義的。你將會花太多精力在錯誤的事情上面。如果你是在保護國家的安全機密信息不受外國情報機構的探測,可能就需要應用所有現有的防護方法,以及一些還未出現的防護措施。此外,你還需要保護其不受“3B”的威脅,“3B”即盜竊(Burglary)、賄賂(Bribery)和勒索(Blackmail)。 大多數人都不像對手那樣有一些間諜(盡管新聞報道稱情況正在改變[Barrett 2015])。當今的典型黑客都是受利益驅使的,需要問的問題是,黑客是如何利用你的計算機和網絡來獲益的。如果你在銀行工作,那么答案就很明顯;用大家都知道的話說,因為銀行是錢在的地方。但是壞人可以利用任何一臺計算機來盜竊我們個人的東西,因此我們不能放松防御。這些攻擊更多可能是隨機的,而不是針對特定目標的。即使這樣,風險程度也可以劃分為不同等級。 這就造成一個結果,防御也是利益相關的。花費比原物價值更多的費用來保護原物是沒有意義的。一種值得記住的說法是[Schiffman 2007]“業余人士擔心算法,專業人士擔心經濟”。你的目標并不是讓一個系統無法被滲透,而是提高被滲透的代價,讓敵人不愿付出高額代價去做,同時降低自己的投入。 我們以典型的密碼為例。30多年來,一直有人不斷地告訴我們弱密碼是不安全的[Morris and Thompson 1979]。毫無疑問這是正確的,由于弱密碼造成的安全問題十分常見。也有人不斷告訴我們不應當把密碼記下來。但是,自從1979年以來,世界在各個方面都有了很大的變化。 假如我設置了一個很強的密碼,并且我不只是設置了一個很強的密碼,而是對于需要登錄的不同網站,設置了很多個不同的強密碼。我不可能記住所有的密碼,一定會忘掉幾個,因此我必須采取密碼恢復機制。什么是密碼恢復機制呢?對于很多網站來說,它們會把新密碼通過郵件發送給我。那么我的賬號安全就取決于郵箱的安全了,對嗎?不僅如此,還存在一些其他的問題。 對很多人來說,真正的威脅不是密碼猜測,而是按鍵記錄器。也就是說,有人在計算機上安裝了一些惡意軟件。這些軟件記錄了鍵盤按鍵的所有行為,包括密碼。即使你設置了一個很強的密碼,也記住了這個密碼,但只要你通過鍵盤輸入這個密碼,那么你的賬戶就可能被攻破[D. Florêncio, Herley, andCoskun 2007]。與之對應,如果密碼是通過一個恢復郵件發送給你,你使用了復制粘貼輸入,而不是鍵盤輸入,那么你就會更安全。很多人的郵箱密碼都是自動保存的,同樣不需要用鍵盤輸入。但是如果用鍵盤輸入了郵箱密碼,那么所有的對于網站的密碼加強機制都會失效,因為壞人會通過盜用郵箱密碼來恢復所有網站的密碼。 因此,密碼安全問題遠比一個簡單的檢查表更加復雜。你必須要有很強的密碼,必須用正確的方式,保護密碼不受威脅。沒有什么方法是完美的。要做出最佳決定,需要理解交互、取舍以及威脅。換句話說,僅遵循一個檢查表的規定是不夠的,你還需要理解為什么要做檢查表所列的事情。 做正確的事情 在撥號訪問時期,硅谷有一家公司擔心自己的安全。他們擔心“戰爭撥號”,即黑客撥叫一個交換區內所有電話號碼,找到一個調制解調器,然后進行密碼猜測攻擊,因此禁用了調制解調器。 禁用的問題與硅谷流行的習慣產生了沖突,硅谷的研發人員都習慣了衣著隨意的在一天的任意時間內工作。研發人員也做了一件事:他們到隔壁商場的計算機專柜,花29.95美元買了一個調制解調器接到公司電話線上,然后一整天都開著。公司的安全人員意識到這個問題,于是安裝了一個數字電話系統,使得研發人員無法在這個系統中隨時使用調制解調器。要使用一個普通的模擬電話線路,需要公司副總經理簽字。看起來問題解決了,但是安全人員沒有禁止其他的能夠連接調制解調器的線路:傳真機。因此,一下子很多工程師都提出辦公室需要一臺傳真機,這樣的請求被批準了。這些29.95美元的調制解調器能夠發送和接收傳真,當然也并不是100%的需求造假。 大家都很高興。安全人員很高興,因為他們以為沒有撥號線路了;工程師很高興,因為他們能夠隨意登錄。一切都很順利,直到一個心懷不滿的前雇員攻擊了這些不安全的防護。而安全人員十分不解,因為他們還以為沒有調制解調器呢! 想象一下,如果換一種方式,采用一個集中管理的調制解調器池,通過恰當的認證和登錄列表連接到部門人員數據庫。這種方式會更加安全,并且會提高生產力,而不是驅使員工去破壞規則。 安全:不需要太多,不需要太少,剛剛好 這兩個情形有很多共同之處。更重要的是,它們都說明了安全決策無法憑空產生。這里面有很大一部分人的因素,不與人的行為相匹配的安全解決方案,不管好方案還是壞方案,都會失敗。 另外一個相似點是,這些防御通常與實際威脅之間沒有匹配好。強密碼無法防護按鍵記錄器;此外,無數的用戶都認為遵循強密碼規則太麻煩。更糟糕的是,他們必須遵守很多套規則,每一套都略有不同。強密碼更容易忘記,因此必須依賴密碼恢復機制。這些機制通常比原有的認證機制更不安全,Sarah Palin在電子郵件賬號被黑客攻擊之后得出了這個結論[Zetter 2010]。她使用的網站花費了很多努力來設計恢復方法、收集和存儲數據,以及提出相關問題。從很大程度上講,他們不得不這么做;人會忘記密碼,但是問題是不是首先出現在對強密碼的依賴上呢? 禁用調制解調器是為了防止那些惡意撥號的人。他們忽略了內部的威脅,同時也犧牲了一些生產力。他們同樣受到其他問題的困擾,例如在零售商那里購買了太多的調制解調器,并且為額外的電話線花費太多。 可能在未來的幾年,你的老板將會讀到新的Herkawat攻擊的信息,以及Kushghab.com的軟件如何來阻止這些攻擊。你要買他們的產品嗎?如何做出選擇呢?我希望你能通過閱讀本書,得到這些問題的答案,不僅僅是針對那些隨機密碼生成器造成的攻擊和相關產品是否購買的答案。 對迷惘的一些引導 這本書并非一本安全類的介紹書籍。本書面向的讀者對象是系統管理員、IT管理員、首席安全官以及系統架構師。閱讀本書,讀者要熟悉防火墻,了解對稱加密與非對稱加密之間的區別。你可能見過常用的安全檢查表,可能獲得了某個安全證書,并且擁有證書中描述的能力。我不會告訴你如何避免緩存溢出、跨站腳本攻擊,以及SQL攻擊等,因為已經有很多關于這些內容的書籍了。本書的目的是教會你如何考慮安全決策的內涵,以及如何設計一個架構,來處理安全問題造成的后果。我不知道十年后,網絡會變成什么樣子,會出現哪些流行的服務和設備。我很確定會有很多新東西出現,一些現在我們想都想不到的東西。你如何保護自己,保護這些新東西,以及保護自己不受新東西的威脅呢?安全檢查表是對于知道正確答案的人來說的,但是有時候,正確答案尚未出現。 本書的第1部分是關于理論的。討論了如何進行思考,同時包含了一些對于可能的威脅的討論。 第2部分討論一些基本的技術,不僅包括安全技術,例如防火墻,而且包括其他針對無線通信獨有特征的技術。 第3部分討論如何創建并且運行實時系統。我們生活在一個不完美的世界,我們需要現在就解決這些問題。 第4部分通過對一些案例的學習來掌握這些原則,并且提出對這個領域未來的一些想法。 鏈接失效說明 George R.R. Martin寫過[G. R. R. Martin 2000]“凡人皆需伺奉,凡人皆有一死”。同樣的,網頁鏈接也會失效。我在2015年8月檢查了這本書中的所有URL,但是當你看到這本書的時候,可能有些鏈接已經失效了。即使美國最高法院也受這個問題的困擾[Zittrain, Albert, and Lessig2014]。目前,沒有什么好辦法,試著使用時光機器(https://www.archive.org)可能是最好的選擇。 致謝 計算機安全科學不是我創建的,我也不是自學的。我要感謝三位學術泰斗,從他們身上我學到了很多:貝爾實驗室的Fred Grampp、NSA國家計算機安全中心的Bob Morris,以及北卡羅萊納大學教堂山分校的Fred Brooks。從Grampp那里我學到了密碼、日志文件以及社會工程學,這很重要。Morris教會我在展示安全操作系統設計時,考慮其功能,“你如何進行備份和恢復?”他的系統是安全的嗎?Morris還告訴我在評估安全時,經濟所處的角色。Brooks教會我如何考慮軟件系統,并讓我意識到松散的編碼是多么令人痛苦的問題。 我還要感謝在寫本書時給過我幫助的所有人。按字母順序,這些人包括(不僅僅是這些人):Randy Bush、Bill Cheswick、Richard Clayton、Greg Conti、Simson Garfinkel、Levi Gundert、Paul Hoffman、Russ Housley、Maritza Johnson、Brian Kernighan、Angelos Keromytis、Brian Krebs、Bala Krishnamurthy、Susan Landau、Fabian Monrose、Kathleen Moriarty、Kevin Poulsen、Avi Rubin、Adam Shostack、Sal Stolfo、Rob Thomas、Win Treese、Paul van Oorschot。還有所有的跟我一起完成這本書的Addison-Wesley出版社的人:John Fuller、Stephanie Geels、Julie Nahil、Melissa Panagos、Mark Taub、John Wait等。當然,本書中出現的錯誤是我個人的問題。 Steven M. Bellovin |