|
-- 會員 / 註冊 --
|
|
|
|
HTTPS權威指南 在服務器和Web應用上部署SSL TLS和PKI ( 簡體 字) |
作者:[英] 伊萬·里斯蒂奇 ( Ivan Risti? ) | 類別:1. -> 程式設計 -> 綜合 |
譯者: |
出版社:人民郵電出版社 | 3dWoo書號: 45180 詢問書籍請說出此書號!【缺書】 NT售價: 495 元 |
出版日:9/1/2016 |
頁數:417 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787115432728 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言: |
內容簡介: 本書是集理論、協議細節、漏洞分析、部署建議于一體的詳盡Web應用安全指南。書中具體內容包括:密碼學基礎,TLS協議,PKI體系及其安全性,HTTP和瀏覽器問題,協議漏洞;新的攻擊形式,如BEAST、CRIME、BREACH、Lucky 13等;詳盡的部署建議;如何使用OpenSSL生成密鑰和確認信息;如何使用Apache httpd、IIS、Nginx等進行安全配置。 |
目錄:第1章 SSL、TLS和密碼學 1 1.1 傳輸層安全 1 1.2 網絡層 2 1.3 協議歷史 3 1.4 密碼學 4 1.4.1 構建基塊 4 1.4.2 協議 12 1.4.3 攻擊密碼 13 1.4.4 衡量強度 13 1.4.5 中間人攻擊 15 第2章 協議 19 2.1 記錄協議 19 2.2 握手協議 21 2.2.1 完整的握手 21 2.2.2 客戶端身份驗證 26 2.2.3 會話恢復 28 2.3 密鑰交換 29 2.3.1 RSA密鑰交換 30 2.3.2 Diffie-Hellman密鑰交換 31 2.3.3 橢圓曲線Diffie-Hellman密鑰交換 33 2.4 身份驗證 34 2.5 加密 34 2.5.1 序列加密 34 2.5.2 分組加密 35 2.5.3 已驗證的加密 36 2.6 重新協商 37 2.7 應用數據協議 38 2.8 警報協議 38 2.9 關閉連接 39 2.10 密碼操作 39 2.10.1 偽隨機函數 39 2.10.2 主密鑰 40 2.10.3 密鑰生成 40 2.11 密碼套件 41 2.12 擴展 42 2.12.1 應用層協議協商 43 2.12.2 證書透明度 44 2.12.3 橢圓曲線功能 44 2.12.4 心跳 45 2.12.5 次協議協商 46 2.12.6 安全重新協商 47 2.12.7 服務器名稱指示 47 2.12.8 會話票證 48 2.12.9 簽名算法 48 2.12.10 OCSP stapling 49 2.13 協議限制 49 2.14 協議版本間的差異 50 2.14.1 SSL 3 50 2.14.2 TLS 1.0 50 2.14.3 TLS 1.1 50 2.14.4 TLS 1.2 51 第3章 公鑰基礎設施 52 3.1 互聯網公鑰基礎設施 52 3.2 標準 54 3.3 證書 55 3.3.1 證書字段 55 3.3.2 證書擴展 57 3.4 證書鏈 58 3.5 信賴方 60 3.6 證書頒發機構 61 3.7 證書生命周期 62 3.8 吊銷 63 3.9 弱點 63 3.10 根密鑰泄露 65 3.11 生態系統評估 66 3.12 進步 68 第4章 攻擊PKI 71 4.1 VeriSign簽發的Microsoft代碼簽名證書 71 4.2 Thawte簽發的login.live.com 72 4.3 StartCom違規(2008) 72 4.4 CertStar(Comodo)簽發的Mozilla證書 73 4.5 偽造的RapidSSL CA證書 73 4.5.1 前綴選擇碰撞攻擊 75 4.5.2 創建碰撞證書 75 4.5.3 預測前綴 76 4.5.4 接下來發生的事 78 4.6 Comodo代理商違規 78 4.7 StartCom違規(2011) 80 4.8 DigiNotar 80 4.8.1 公眾的發現 80 4.8.2 一個證書頒發機構的倒下 81 4.8.3 中間人攻擊 82 4.8.4 ComodoHacker宣布負責 83 4.9 DigiCert Sdn. Bhd. 85 4.10 火焰病毒 85 4.10.1 火焰病毒對抗Windows更新 86 4.10.2 火焰病毒對抗Windows終端服務 87 4.10.3 火焰病毒對抗MD5 88 4.11 TURKTRUST 89 4.12 ANSSI 90 4.13 印度國家信息中心 91 4.14 廣泛存在的SSL竊聽 91 4.14.1 Gogo 91 4.14.2 Superfish和它的朋友們 92 4.15 CNNIC 93 第5章 HTTP和瀏覽器問題 95 5.1 sidejacking 95 5.2 Cookie竊取 97 5.3 Cookie篡改 98 5.3.1 了解HTTP Cookie 98 5.3.2 Cookie篡改攻擊 99 5.3.3 影響 102 5.3.4 緩解方法 103 5.4 SSL剝離 103 5.5 中間人攻擊證書 104 5.6 證書警告 105 5.6.1 為什么有這么多無效證書 107 5.6.2 證書警告的效果 108 5.6.3 點擊—通過式警告與例外 109 5.6.4 緩解方法 110 5.7 安全指示標志 110 5.8 混合內容 112 5.8.1 根本原因 112 5.8.2 影響 114 5.8.3 瀏覽器處理 114 5.8.4 混合內容的流行程度 116 5.8.5 緩解方法 117 5.9 擴展驗證證書 118 5.10 證書吊銷 119 5.10.1 客戶端支持不足 119 5.10.2 吊銷檢查標準的主要問題 119 5.10.3 證書吊銷列表 120 5.10.4 在線證書狀態協議 122 第6章 實現問題 127 6.1 證書校驗缺陷 127 6.1.1 在庫和平臺中的證書校驗缺陷 128 6.1.2 應用程序校驗缺陷 131 6.1.3 主機名校驗問題 132 6.2 隨機數生成 133 6.2.1 Netscape Navigator瀏覽器(1994) 133 6.2.2 Debian(2006) 134 6.2.3 嵌入式設備熵不足問題 135 6.3 心臟出血 137 6.3.1 影響 137 6.3.2 緩解方法 139 6.4 FREAK 139 6.4.1 出口密碼 140 6.4.2 攻擊 140 6.4.3 影響和緩解方法 143 6.5 Logjam 144 6.5.1 針對不安全DHE密鑰交換的主動攻擊 144 6.5.2 針對不安全DHE密鑰交換的預先計算攻擊 145 6.5.3 針對弱DH密鑰交換的狀態—水平威脅 146 6.5.4 影響 147 6.5.5 緩解方法 148 6.6 協議降級攻擊 148 6.6.1 SSL 3中的回退保護 149 6.6.2 互操作性問題 149 6.6.3 自愿協議降級 152 6.6.4 TLS 1.0和之后協議的回退保護 153 6.6.5 攻擊自愿協議降級 154 6.6.6 現代回退防御 154 6.7 截斷攻擊 156 6.7.1 截斷攻擊的歷史 157 6.7.2 Cookie截斷 157 6.8 部署上的弱點 159 6.8.1 虛擬主機混淆 159 6.8.2 TLS會話緩存共享 160 第7章 協議攻擊 161 7.1 不安全重新協商 161 7.1.1 為什么重新協商是不安全的 162 7.1.2 觸發弱點 162 7.1.3 針對HTTP協議的攻擊 163 7.1.4 針對其他協議的攻擊 166 7.1.5 由架構引入的不安全重新協商問題 167 7.1.6 影響 167 7.1.7 緩解方法 167 7.1.8 漏洞發現和補救時間表 168 7.2 BEAST 169 7.2.1 BEAST的原理 170 7.2.2 客戶端緩解方法 173 7.2.3 服務器端緩解方法 175 7.2.4 歷史 176 7.2.5 影響 177 7.3 壓縮旁路攻擊 178 7.3.1 壓縮預示如何生效 178 7.3.2 攻擊的歷史 180 7.3.3 CRIME 181 7.3.4 針對TLS和SPDY攻擊的緩解方法 187 7.3.5 針對HTTP壓縮攻擊的緩解方法 188 7.4 Lucky 13 189 7.4.1 什么是填充預示 189 7.4.2 針對TLS的攻擊 190 7.4.3 影響 191 7.4.4 緩解方法 191 7.5 RC4缺陷 192 7.5.1 密鑰調度弱點 192 7.5.2 單字節偏差 193 7.5.3 前256字節偏差 194 7.5.4 雙字節偏差 196 7.5.5 針對密碼進行攻擊的改進 196 7.5.6 緩解方法:RC4與BEAST、Lucky 13和POODLE的比較 197 7.6 三次握手攻擊 198 7.6.1 攻擊 198 7.6.2 影響 202 7.6.3 先決條件 203 7.6.4 緩解方法 203 7.7 POODLE 204 7.7.1 實際攻擊 207 7.7.2 影響 208 7.7.3 緩解方法 208 7.8 Bullrun 209 第8章 部署 212 8.1 密鑰 212 8.1.1 密鑰算法 212 8.1.2 密鑰長度 213 8.1.3 密鑰管理 213 8.2 證書 215 8.2.1 證書類型 215 8.2.2 證書主機名 215 8.2.3 證書共享 216 8.2.4 簽名算法 216 8.2.5 證書鏈 217 8.2.6 證書吊銷 218 8.2.7 選擇合適的CA 218 8.3 協議配置 219 8.4 密碼套件配置 220 8.4.1 服務器密碼套件配置優先 220 8.4.2 加密強度 220 8.4.3 前向保密 221 8.4.4 性能 222 8.4.5 互操作性 222 8.5 服務器配置和架構 223 8.5.1 共享環境 223 8.5.2 虛擬安全托管 223 8.5.3 會話緩存 223 8.5.4 復雜體系結構 224 8.6 問題緩解方法 225 8.6.1 重新協商 225 8.6.2 BEAST(HTTP) 225 8.6.3 CRIME(HTTP) 225 8.6.4 Lucky 13 226 8.6.5 RC4 226 8.6.6 TIME和BREACH(HTTP) 227 8.6.7 三次握手攻擊 227 8.6.8 心臟出血 228 8.7 釘扎 228 8.8 HTTP 228 8.8.1 充分利用加密 228 8.8.2 Cookie安全 229 8.8.3 后端證書和域名驗證 229 8.8.4 HTTP嚴格傳輸安全 229 8.8.5 內容安全策略 230 8.8.6 協議降級保護 230 第9章 性能優化 231 9.1 延遲和連接管理 232 9.1.1 TCP 優化 232 9.1.2 長連接 234 9.1.3 SPDY、HTTP 2.0以及其他 235 9.1.4 內容分發網絡 235 9.2 TLS協議優化 237 9.2.1 密鑰交換 237 9.2.2 證書 240 9.2.3 吊銷檢查 242 9.2.4 會話恢復 243 9.2.5 傳輸開銷 243 9.2.6 對稱加密 244 9.2.7 TLS記錄緩存延遲 246 9.2.8 互操作性 247 9.2.9 硬件加速 247 9.3 拒絕服務攻擊 248 9.3.1 密鑰交換和加密CPU開銷 249 9.3.2 客戶端發起的重新協商 250 9.3.3 優化過的TLS拒絕服務攻擊 250 第10章 HTTP嚴格傳輸安全、內容安全策略和釘扎 251 10.1 HTTP嚴格傳輸安全 251 10.1.1 配置HSTS 252 10.1.2 確保主機名覆蓋 253 10.1.3 Cookie安全 253 10.1.4 攻擊向量 254 10.1.5 瀏覽器支持 255 10.1.6 強大的部署清單 256 10.1.7 隱私問題 257 10.2 內容安全策略 257 10.2.1 防止混合內容問題 258 10.2.2 策略測試 259 10.2.3 報告 259 10.2.4 瀏覽器支持 259 10.3 釘扎 260 10.3.1 釘扎的對象 261 10.3.2 在哪里釘扎 262 10.3.3 應該使用釘扎嗎 263 10.3.4 在本機應用程序中使用釘扎 263 10.3.5 Chrome公鑰釘扎 264 10.3.6 Microsoft Enhanced Mitigation Experience Toolkit 265 10.3.7 HTTP公鑰釘扎擴展 265 10.3.8 DANE 267 10.3.9 證書密鑰可信保證 270 10.3.10 證書頒發機構授權 271 第11章 OpenSSL 272 11.1 入門 272 11.1.1 確定OpenSSL版本和配置 273 11.1.2 構建OpenSSL 274 11.1.3 查看可用命令 275 11.1.4 創建可信證書庫 276 11.2 密鑰和證書管理 277 11.2.1 生成密鑰 277 11.2.2 創建證書簽名申請 280 11.2.3 用當前證書生成CSR文件 282 11.2.4 非交互方式生成CSR 282 11.2.5 自簽名證書 283 11.2.6 創建對多個主機名有效的證書 283 11.2.7 檢查證書 284 11.2.8 密鑰和證書格式轉換 286 11.3 配置 288 11.3.1 選擇密碼套件 288 11.3.2 性能 298 11.4 創建私有證書頒發機構 300 11.4.1 功能和限制 301 11.4.2 創建根CA 301 11.4.3 創建二級CA 306 第12章 使用OpenSSL進行測試 309 12.1 連接SSL服務 309 12.2 測試升級到SSL的協議 312 12.3 使用不同的握手格式 313 12.4 提取遠程證書 313 12.5 測試支持的協議 314 12.6 測試支持的密碼套件 314 12.7 測試要求包含SNI的服務器 315 12.8 測試會話復用 316 12.9 檢查OCSP吊銷狀態 316 12.10 測試OCSP stapling 318 12.11 檢查CRL吊銷狀態 319 12.12 測試重新協商 321 12.13 測試BEAST漏洞 322 12.14 測試心臟出血 323 12.15 確定Diffie-Hellman參數的強度 325 第13章 配置Apache 327 13.1 安裝靜態編譯OpenSSL的Apache 328 13.2 啟用TLS 329 13.3 配置TLS協議 329 13.4 配置密鑰和證書 330 13.5 配置多個密鑰 331 13.6 通配符和多站點證書 332 13.7 虛擬安全托管 333 13.8 為錯誤消息保留默認站點 334 13.9 前向保密 335 13.10 OCSP stapling 336 13.10.1 配置OCSP stapling 336 13.10.2 處理錯誤 337 13.10.3 使用自定義OCSP響應程序 338 13.11 配置臨時的DH密鑰交換 338 13.12 TLS會話管理 338 13.12.1 獨立會話緩存 338 13.12.2 獨立會話票證 339 13.12.3 分布式會話緩存 340 13.12.4 分布式會話票證 341 13.12.5 禁用會話票證 342 13.13 客戶端身份驗證 343 13.14 緩解協議問題 344 13.14.1 不安全的重新協商 344 13.14.2 BEAST 344 13.14.3 CRIME 344 13.15 部署HTTP嚴格傳輸安全 345 13.16 監視會話緩存狀態 346 13.17 記錄協商的TLS參數 346 13.18 使用mod_sslhaf的高級日志記錄 347 第14章 配置Java和Tomcat 349 14.1 Java加密組件 349 14.1.1 無限制的強加密 350 14.1.2 Provider配置 350 14.1.3 功能概述 351 14.1.4 協議漏洞 352 14.1.5 互操作性問題 352 14.1.6 屬性配置調優 354 14.1.7 常見錯誤消息 355 14.1.8 保護Java Web應用 358 14.1.9 常見密鑰庫操作 362 14.2 Tomcat 366 14.2.1 TLS配置 369 14.2.2 JSSE配置 371 14.2.3 APR和OpenSSL配置 373 第15章 配置Microsoft Windows和IIS 375 15.1 Schannel 375 15.1.1 功能概述 375 15.1.2 協議漏洞 377 15.1.3 互操作性問題 377 15.2 Microsoft根證書計劃 379 15.2.1 管理系統可信證書庫 379 15.2.2 導入可信證書 380 15.2.3 可信證書黑名單 380 15.2.4 禁用根證書自動更新 380 15.3 配置 380 15.3.1 Schannel配置 381 15.3.2 密碼套件配置 382 15.3.3 密鑰和簽名限制 384 15.3.4 重新協商配置 389 15.3.5 配置會話緩存 390 15.3.6 監控會話緩存 391 15.3.7 FIPS 140-2 391 15.3.8 第三方工具 393 15.4 保護ASP.NET網站應用的安全 394 15.4.1 強制使用SSL 394 15.4.2 Cookie的保護 395 15.4.3 保護會話Cookie和Forms身份驗證的安全 395 15.4.4 部署HTTP嚴格傳輸安全 396 15.5 Internet信息服務 396 第16章 配置Nginx 402 16.1 以靜態鏈接OpenSSL方式安裝Nginx 402 16.2 啟用TLS 403 16.3 配置TLS協議 403 16.4 配置密鑰和證書 404 16.5 配置多密鑰 405 16.6 通配符證書和多站點證書 405 16.7 虛擬安全托管 406 16.8 默認站點返回錯誤消息 406 16.9 前向保密 407 16.10 OCSP stapling 407 16.10.1 配置OCSP stapling 408 16.10.2 自定義OCSP響應 409 16.10.3 手動配置OCSP響應 409 16.11 配置臨時DH密鑰交換 410 16.12 配置臨時ECDH密鑰交換 410 16.13 TLS會話管理 411 16.13.1 獨立會話緩存 411 16.13.2 獨立會話票證 411 16.13.3 分布式會話緩存 412 16.13.4 分布式會話票證 412 16.13.5 禁用會話票證 413 16.14 客戶端身份驗證 413 16.15 緩解協議問題 414 16.15.1 不安全的重新協商 414 16.15.2 BEAST 415 16.15.3 CRIME 415 16.16 部署HTTP嚴格傳輸安全 415 16.17 TLS緩沖區調優 416 16.18 日志記錄 416 第17章 總結 418
|
序: |
|