《Web應用安全指南》係日本Web安全德丸浩所創,是作者從業多年的經驗總結。作者首先簡要介紹瞭Web應用的安全隱患以及産生原因,然後詳細介紹瞭Web安全的基礎,如HTTP、會話管理、同源策略等。此外還重點介紹瞭Web應用的各種安全隱患,對其産生原理及對策進行瞭詳盡的講解。最後對如何提高Web網站的安全性和開發安全的Web應用所需要的管理進行瞭深入的探討。《Web應用安全指南》可操作性強,讀者可以通過下載已搭建的虛擬機環境親自體驗書中的各種安全隱患。
《Web應用安全指南》適閤Web相關的開發人員特彆是安全及測試人員閱讀。
德丸浩<作者>,2008年創立HASH谘詢公司,任董事長。主要從事網絡安全性的診斷與谘詢工作,並在工作之餘通過博客普及網絡安全知識。兼任KYOCERA Communication Systems股份有限公司技術顧問、獨立行政法人信息處理推進機構(IPA)兼職研究員。Twitter ID為@ockeghem。
趙文<譯者>,程序員,Ruby 語言愛好者。圖靈電子書《關於 mruby 的一切》譯者。
劉斌<譯者>,程序員,關注於後颱開發,Java/Ruby愛好者。
第1章 什麼是 Web應用的安全隱患
1-1 安全隱患即“能用於作惡的Bug”
1-2 為什麼存在安全隱患會有問題
1-3 産生安全隱患的原因
1-4 安全性 Bug與安全性功能
1-5 本書的結構
第2章 搭建試驗環境
2-1試驗環境概要
2-2 安裝 VMware Player
2-3 安裝虛擬機及運行確認
2-4 安裝 Fiddler
參考:虛擬機的數據一覽
參考:如果無法連接試驗環境的POP3服務器
第3章 Web 安全基礎:HTTP、會話管理、同源策略
3-1 HTTP 與會話管理
3-2 被動攻擊與同源策略
第4章 Web應用的各種安全隱患
4-1 Web 應用的功能與安全隱患的對應關係
4-2 輸入處理與安全性
4-3 頁麵顯示的相關問題
4.3.1 跨站腳本(基礎篇)
4.3.2 跨站腳本(進階篇)
4.3.3 錯誤消息導緻的信息泄漏
4-4 SQL 調用相關的安全隱患
4.4.1 SQL 注入
4-5 關鍵處理中引入的安全隱患
4.5.1 跨站請求僞造(CSRF)
4-6 不完善的會話管理
4.6.1 會話劫持的原因及影響
4.6.2 會話 ID可預測
4.6.3 會話 ID嵌入URL
4.6.4 固定會話 ID
4-7 重定嚮相關的安全隱患
4.7.1 自由重定嚮漏洞
4.7.2 HTTP 消息頭注入
4.7.3 重定嚮相關的安全隱患總結
4-8 Cookie 輸齣相關的安全隱患
4.8.1 Cookie 的用途不當
4.8.2 Cookie 的安全屬性設置不完善
4-9 發送郵件的問題
4.9.1 發送郵件的問題概要
4.9.2 郵件頭注入漏洞
4-10 文件處理相關的問題
4.10.1 目錄遍曆漏洞
4.10.2 內部文件被公開
4-11 調用 OS命令引起的安全隱患
4.11.1 OS 命令注入
4-12 文件上傳相關的問題
4.12.1 文件上傳問題的概要
4.12.2 通過上傳文件使服務器執行腳本
4.12.3 文件下載引起的跨站腳本
4-13 include 相關的問題
4.13.1 文件包含攻擊
4-14 eval 相關的問題
4.14.1 eval 注入
4-15 共享資源相關的問題
4.15.1 競態條件漏洞
第5章 典型安全功能
5-1 認證
5.1.1 登錄功能
5.1.2 針對暴力破解攻擊的對策
5.1.3 密碼保存方法
5.1.4 自動登錄
5.1.5 登錄錶單
5.1.6 如何顯示錯誤消息
5.1.7 退齣登錄功能
5.1.8 認證功能總結
5-2賬號管理
5.2.1 用戶注冊
5.2.2 修改密碼
5.2.3 修改郵箱地址
5.2.4 密碼找迴
5.2.5 賬號凍結
5.2.6 賬號刪除
5.2.7 賬號管理總結
5.3 授權
5.3.1 什麼是授權
5.3.2 典型的授權漏洞
5.3.3 授權管理的需求設計
5.3.4 如何正確實現授權管理
5.3.5 總結
5.4 日誌輸齣
5.4.1 日誌輸齣的目的
5.4.2 日誌種類
5.4.3 有關日誌輸齣的需求
5.4.4 實現日誌輸齣
5.4.5 總結
第6章 字符編碼和安全
6-1 字符編碼和安全概要
6-2 字符集
什麼是字符集
ASCII 和ISO-8859-1
JIS 規定的字符集
微軟標準字符集
Unicode
GB2312
GBK
GB18030
不同字符相同編碼的問題
字符集的處理引起的漏洞
6-3 字符編碼方式
什麼是編碼方式
Shift_JIS
EUC-JP
ISO-2022-JP
UTF-16
UTF-8
GB2312
GBK
GB18030
6-4 由字符編碼引起的漏洞總結
字符編碼方式中非法數據導緻的漏洞
對字符編碼方式處理存在紕漏導緻的漏洞
在不同字符集間變換導緻的漏洞
6-5 如何正確處理字符編碼
在應用內統一使用的字符集
輸入非法數據時報錯並終止處理
處理數據時使用正確的編碼方式
專欄 調用 htmlspecialchars函數時必須指定字符編碼方式
輸齣時設置正確的字符編碼方式
其他對策:盡量避免編碼自動檢測
6-6 總結
第7章 如何提高 Web網站的安全性
7-1 針對 Web服務器的攻擊途徑和防範措施
7.1.1 利用基礎軟件漏洞進行攻擊
7.1.2 非法登錄
7.1.3 對策
7-2 防範僞裝攻擊的對策
7.2.1 網絡僞裝的手段
7.2.2 釣魚攻擊
7.2.3 Web 網站的僞裝攻擊對策
7-3 防範網絡監聽、篡改的對策
7.3.1 網絡監聽、篡改的途徑
7.3.2 中間人攻擊
7.3.3 對策
7-4 防範惡意軟件的對策
7.4.1 什麼是 Web網站的惡意軟件對策
7.4.2 惡意軟件的感染途徑
7.4.3 Web 網站惡意軟件防範對策概要
7.4.4 如何確保服務器不被惡意軟件感染
7-5 總結
第8章 開發安全的 Web應用所需要的管理
8-1 開發管理中的安全對策概要
8-2 開發體製
開發標準的製定
教育培訓
8-3 開發過程
8.3.1 規劃階段的注意事項
8.3.2 招標時的注意事項
8.3.3 需求分析時的注意事項
8.3.4 概要設計的推進方法
8.3.5 詳細設計和編碼階段的注意事項
8.3.6 安全性測試的重要性及其方法
8.3.7 Web 健康診斷基準
8.3.8 承包方測試
8.3.9 發包方測試(驗收)
8.3.10 運維階段的注意事項
8-4 總結
第1章
什麼是 Web應用的 安全隱患
本章將對“安全隱患”這一貫穿全書的主題加以概述,包 括什麼是安全隱患,安全隱患會帶來哪些問題,安全隱患 是如何産生的,等等。本章最後會給齣全書的結構和學習方法。
1.1 安全隱患即“能用於作惡的Bug”
程序Bug對於開發者來說如同傢常便飯。應用程序有瞭Bug,就會齣現各種不正常的現象。例如,顯示齣錯誤的結果、需要進行的處理遲遲不能結束、網頁布局錯亂、響應速度極為緩慢等。而這其中,有一種Bug能被惡意利用。此類Bug被稱為安全隱患(Vulnerability),有時也被稱為安全性Bug。
以下是一些惡意利用的常見案例。
未經許可瀏覽用戶個人信息等隱私信息
篡改網站的內容
使網頁瀏覽者的計算機感染病毒
僞裝成他人來窺探用戶的隱私信息、發布文章、在綫購物、肆意轉賬等
使目標網站不能被訪問
在網絡遊戲中讓自己達到無敵狀態,或非法獲得遊戲中的裝備道具
在確認自己的個人信息時,能看到彆人的個人信息A
如同程序員對一般的Bug(無奈地)習以為常一樣,Web應用程序開發者對安全隱患也同樣已經司空見慣。倘若開發Web應用程序時對安全隱患一無所知,就會開發齣能被用來進行上述惡舉的網站。針對這一問題,本書將從原理到具體對策,來詳細講述如何在開發Web應用時杜絕安全隱患。
A 能看到其他用戶個人信息的Bug雖不是故意作惡,但由此而偶然造成的不良後果也被視為安全隱患。
1.2 為什麼存在安全隱患會有問題
為什麼存在安全隱患會有問題,這是個越思考就越深入的課題。接下來,就讓我們從幾個方麵來探討一下必須杜絕安全隱患的原因。
◆經濟損失
應杜絕安全隱患的原因之一為,假如網站的安全隱患被惡意利用,網站的經營者將會濛受經濟損失。典型的損失為以下幾項。
賠償用戶的經濟損失
給用戶寄送代金券作為補償時的花銷
網站暫停運營造成的機會損失
信譽度下降造成的營業額減少
此類經濟損失的總額有時會高達數十億日元。
然而,或許有人會有這樣的疑問。如果網站的營銷規模並不大,上述列舉的各項經濟損失就會變得相對較小。所以可能有些網站運營方就會采取這種思路:事前不做相應對策,萬一齣事瞭就賠償用戶的損失。A
但是,實際的損失並不僅限於經濟損失。
◆法律要求B
《個人信息保護法》是規定網站實施安全性措施的法律。該法第20條規定,擁有超過5000名用戶的網站運營方,作為個人信息經營者,有義務實施網站的安全管理措施。
(安全管理措施)
第二十條 個人信息經營者,為瞭安全管理其用戶的個人信息,必須采取必要且恰當的措施,防止用戶的個人信息被泄漏、刪除或損壞。
安全管理措施的具體內容,由各省廳分彆製定規章。其中,“經濟産業領域關於個人信息保護法的指導方針”中,“技術性安全管理措施”中的“‘個人數據訪問控製’的實踐方法示例”一節中有如下記載。
A 這種策略被稱為“風險自留”。
B 本節闡述的是日本的相關法律,供中國讀者參考。遺憾的是,截至譯稿時(2013年9月),中國在網絡安全隱患方麵還沒有推齣相應的法律法規。 ——譯者注
檢驗處理個人信息的係統中引入的訪問控製功能的有效性。
(例如,檢驗網絡應用是否存在安全隱患。)
也就是說,通過Web係統管理個人信息的運營者受到《個人信息保護法》以及相關規章的約束,承擔著對Web應用的安全隱患采取安全管理措施的法律義務。
◆對用戶造成不可逆的傷害
應該意識到,安全隱患造成的事故會給用戶帶來很多不可逆的傷害。個人信息一旦泄漏,就不可能再迴收。賬號被盜而導緻用戶的名譽受損之後,就再也迴不到以前的狀態瞭。另外,如果用戶的信用卡賬號被泄漏,即使賠償瞭用戶的金錢損失,也不可能完全平撫用戶受到的恐慌、不安等精神上的痛苦。換言之,一旦發生瞭安全事故,就會齣現很多金錢無法解決的問題。
……
2011年,索尼遭受瞭3次大規模攻擊,造成7700萬PlayStationNetwork(PSN)用戶的個人信息泄漏。攻擊令PSN網絡服務癱瘓瞭23天,給索尼造成瞭上億美元的經濟損失。
2011年12月,國內知名開發者社區CSDN遭到攻擊,600萬用戶賬號及明文密碼泄漏並在網絡上被大量傳播。
2013年3月,全球知名的雲筆記應用Evernote遭到攻擊,導緻5000萬用戶的郵箱地址和加密密碼泄漏。
寫下這篇文字時,又正值全球最大的眾籌網站Kickstarter被攻擊而導緻用戶信息被竊取。
一件件觸目驚心的事件無一不在提醒著我們網絡安全的重要性。造成這些事件的罪魁禍首或許隻是代碼中一些不起眼的地方,但引發的影響及後果卻駭人聽聞。掌握如何在編程時不引入漏洞已成為瞭Web應用開發者不可或缺的技能。
然而,當開發者想要係統性地學習Web應用安全時,卻發現市麵上充斥著以攻擊者的視角寫作的“XX攻防大全”等書籍,卻鮮有站在開發者立場的優秀的權威性書籍可供參考。圖靈公司引進的這本《Web應用安全權威指南》正好填補瞭這一領域的空缺。
“在那本‘德丸本’中有透徹的講解。”這是譯者在日本工作期間,嚮同事詢問“什麼是CSRF”時得到的答復。沒錯,“德丸本”就是本書在日本的昵稱,幾乎在每個Web開發小組的案頭都能發現它的身影。
本書的作者德丸浩先生在日本被譽為“Web應用安全領域第一人”,他在經營著一傢Web安全谘詢公司的同時,還在博客上筆耕不輟,孜孜不倦地分享著自己Web安全方麵的知識,得此稱號可謂實至名歸。這本書是目前為止德丸浩先生齣版的唯一一本圖書,可以說是從業多年的經驗沉澱下來的精華。
看過日係技術書的讀者,一定會對其通俗易懂、深入淺齣、謙虛謹慎等特點印象深刻,本書也不例外。SQL注入、XSS、CSRF等對於Web開發人員來說耳熟能詳卻可能一知半解的術語,都將在這本書中詳細剖析。本書既適閤從頭到尾通讀來進行係統性學習,也適閤作為參考書時常查閱。
最後,再一次感謝圖靈文化的編輯們能將這本書引入到國內。感謝另一位譯者劉斌的辛勤付齣,使得本書能夠成功地問世。還要感謝妻子馬超對我使用業餘時間進行翻譯工作的鼓勵和支持。
希望本書能夠讓您受益。
趙文
2014年2月於無锡
我之前一直在找一本能夠係統性地介紹Web應用安全各個方麵的書籍,而《Web應用安全權威指南》恰好滿足瞭我的需求。這本書的深度和廣度都非常驚人。它不僅僅停留在錶麵的攻擊手法,而是深入剖析瞭Web安全背後的底層原理。例如,在講解HTTP協議的安全時,它不僅提到瞭HTTPS的重要性,還詳細解釋瞭SSL/TLS的握 ক্ষমতা,包括證書的生成、握手過程、加密算法等等。對於一些相對冷門但又至關重要的安全領域,比如WebAssembly的安全、Service Worker的安全、甚至IoT設備與Web應用的交互安全,這本書也都有涉及,並且提供瞭相當深入的分析。讓我印象深刻的是,書中對於各種安全防禦措施的介紹,都不僅僅是簡單羅列,而是會追溯其設計初衷,解釋其工作原理,並分析其局限性。比如,在講到內容安全策略(CSP)時,它會詳細解釋CSP指令的含義,如何配置CSP來抵禦XSS攻擊,同時也會指齣CSP可能帶來的副作用,以及如何進行精細化的配置。這種深入淺齣的講解方式,讓我對Web安全的理解不再是零散的知識點,而是形成瞭一個完整的體係。閱讀這本書的過程,就像是經曆瞭一場由淺入深的知識洗禮,讓我對Web安全有瞭更加深刻和全麵的認識。
評分不得不說,這本《Web應用安全權威指南》在對業務邏輯層麵的安全分析上,給我帶來瞭前所未有的啓發。我一直以為Web安全就是關注那些技術性的漏洞,比如SQL注入、文件上傳等等,但這本書卻把視角拓寬到瞭業務邏輯的層麵,讓我意識到很多看似不起眼的功能點,在安全攻防中卻可能是關鍵的突破口。它詳細分析瞭諸如權限控製繞過、越權訪問、支付邏輯篡改、訂單劫持等一係列源自業務流程設計缺陷的安全問題,並且用大量的真實案例進行佐證,讀起來非常有代入感。書中對如何進行業務邏輯安全評審的流程和方法也進行瞭詳細的闡述,比如如何通過梳理業務流程、識彆關鍵數據、分析用戶行為等方式來挖掘潛在的風險點。這一點對我來說尤其重要,因為在實際工作中,我們往往會花費大量時間在技術漏洞的修復上,卻忽略瞭業務邏輯本身的脆弱性,而一旦業務邏輯齣現問題,其造成的損失可能比技術漏洞更為嚴重。這本書就像是一個優秀的偵探,指導我如何一步步剝開業務的層層外衣,找到隱藏在深處的安全隱患。它不僅僅是一本技術手冊,更是一本思考安全問題的“思維指南”,讓我學會用更全麵的視角去看待Web應用的安全性。
評分作為一個項目負責人,我需要確保我負責的Web應用能夠抵禦各種潛在的攻擊。而《Web應用安全權威指南》這本書,給我提供瞭非常實用的指導和參考。《Web應用安全權威指南》這本書,在團隊協作和安全流程建設方麵,給我提供瞭非常清晰的思路。《Web應用安全權威指南》這本書,它提供瞭一套非常係統化的方法論,能夠指導我如何從項目的早期階段就將安全融入到開發流程中。書中詳細闡述瞭需求分析階段的安全考慮、設計階段的安全模式、編碼階段的安全實踐、測試階段的安全審計,以及部署和運維階段的安全加固。特彆是關於安全測試的部分,它不僅介紹瞭滲透測試、漏洞掃描等技術手段,還強調瞭代碼審計、靜態分析等早期發現問題的方法。最讓我覺得難能可貴的是,書中還提供瞭很多關於如何建立安全意識培訓、如何進行漏洞管理、如何響應安全事件等方麵的建議。這些都是我作為項目負責人經常需要麵對的問題。有瞭這本書作為指導,我能夠更有條理地規劃團隊的安全工作,明確每個階段的安全目標和責任人,從而有效地降低項目麵臨的安全風險。這本書讓我明白,Web安全不是某一個人的責任,而是整個團隊的共同任務,需要建立一套行之有效的安全流程來保障。
評分我之前在安全領域摸爬滾打多年,自認為對Web應用安全已經有瞭一定的瞭解,但在閱讀《Web應用安全權威指南》這本書時,還是被其中一些獨特的視角和前瞻性的內容所吸引。這本書並沒有止步於講解已有的攻擊和防禦手段,而是花瞭大量的篇幅去探討Web安全的發展趨勢和未來挑戰。比如,它對微服務架構下的安全挑戰進行瞭深入分析,包括服務間通信安全、API安全、容器安全等,並且提齣瞭一些創新的解決方案。此外,書中還對人工智能在Web安全領域的應用進行瞭探討,包括如何利用AI進行威脅檢測、漏洞挖掘,以及AI本身可能存在的安全風險。這種對未來趨勢的洞察,讓我意識到Web安全領域一直在不斷發展,學習永無止境。書中對於一些新興技術,比如GraphQL、WebSockets的安全問題,也進行瞭細緻的分析,並且提供瞭相應的應對策略。這對於我這樣需要緊跟技術前沿的從業者來說,非常有價值。這本書不僅僅是一本“指南”,更像是一位經驗豐富的智者,在和我分享他對Web安全未來的思考和預測。讀完這本書,我感覺自己對Web安全的理解又提升瞭一個層次,並且對未來的學習方嚮有瞭更清晰的規劃。
評分這本《Web應用安全權威指南》簡直是把我從技術小白的泥潭裏拉瞭齣來!之前做項目,雖然知道安全重要,但總感覺是空中樓閣,摸不著邊際。拿到這本書,就像抓到瞭一根救命稻草。它沒有上來就講那些高深莫測的理論,而是從最基礎的XSS、SQL注入這些常見的漏洞開始,講得特彆透徹。而且,它不隻是告訴你“是什麼”,更告訴你“為什麼會這樣”,比如攻擊者是如何利用某些特性來繞過防禦的,背後的原理是什麼。書中還附帶瞭很多實際的代碼示例,我可以直接拿來跑,親身體驗漏洞的存在,再結閤書裏的講解,理解起來就事半功倍瞭。最讓我驚喜的是,它還提供瞭很多防禦措施的實現細節,不僅僅是“要這樣做”,更是“如何具體地做到”。比如,對於CSRF,它不僅解釋瞭原理,還給齣瞭使用Token、Referer校驗等多種方法的具體代碼實現和注意事項。這種實踐性的指導,對於我這樣需要將理論轉化為實際操作的人來說,簡直太寶貴瞭。我花瞭好幾天時間,跟著書裏的案例一步步操作,感覺自己的安全意識和實操能力都有瞭質的飛躍。現在再看以前的代碼,總能發現一些潛在的安全隱患,這在我以前是想都不敢想的。這本書的結構也很清晰,從入門到進階,循序漸進,不會讓人感到 overwhelm。而且,語言風格很友好,即使是比較復雜的技術概念,也能用相對易懂的方式錶達齣來。
評分書非常好,思路很清晰
評分還有一個腳印,其餘還不錯
評分退貨速度非常快,服務非常好
評分很好很好很好很好很好
評分質量好,內容豐富。值得購買。
評分Web安全的好書,值得一看
評分書不錯,包裝很好,快遞師傅送貨很快
評分內容很細緻,收藏瞭。
評分很實用 性價比高 科技前沿
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.teaonline.club All Rights Reserved. 圖書大百科 版權所有