预购商品
书目分类
特别推荐
『OWASP發展至今,前10大排名的弱點已不再是單純的一種攻擊名稱,而是一種不安全的行為。作者以弱點復現來說明其弱點成因,是我推薦本書的主要原因,希望本書能帶給程式設計師更多安全開發的觀念!』——登豐數位科技創辦人/白帽駭客 黃建笙(Jason 方丈) 專文推薦 『雖然這本書是資訊安全的書籍,卻沒有艱深難懂的理論,利用輕鬆的攻與防,讓讀者在攻防戰之間提升資安與安全程式碼二者的經驗值,讓你一次擁有劍與盾兩件寶物。』——微軟MVP最有價值專家 陳傳興(Bruce Chen) 專文推薦 ASP.NET Core開發人員經常會收到安全性測試的結果,報告中顯示的是在Web應用程式中所發現的漏洞。雖然這些報告可以提供一些高階的修復建議,但是它們往往沒有說明,為了解決或是修復這些測試所發現的弱點,你需要採取哪些確切的步驟? 在本書的第1章中,首先,你將學習安全程式碼的基本概念。然後,在第2章到第11章中,我們將帶領你一步步學習識別常見的Web應用程式漏洞。在閱讀的過程中,我們也會介紹如何在ASP.NET Core Web應用程式中修復不安全的組態設定。我們更進一步展示如何解決不同類型的跨網站指令碼(XSS)。最後還有獨立的一章,專門指導你修復不再屬於OWASP Top 10清單的其他漏洞。 本書的寫作格式屬於訣竅式風格(recipe style):每一個訣竅都代表一個問題,我們會先展示不安全程式碼的範例,接著提供相應的解決方案,讓你學習如何根除應用程式中的安全錯誤。遵循簡單的訣竅步驟,你將探索ASP.NET Core Web應用程式中不同類型的安全性弱點,理解什麼樣的程式碼會導致應用程式不安全,然後一步步練習如何修復它們,由此建立強健又安全的解決方案。 讀完這本書,你將獲得解決ASP.NET Core Web應用程式安全性漏洞的實用訣竅,以及修復安全性缺陷的實戰經驗。 你將從本書學會: ・如何消滅ASP.NET Core Web應用程式中的bug ・探索不同類型的注入攻擊,並防止這個漏洞被利用 ・修復與無效的身分驗證和授權相關的安全問題 ・使用多種保護技術,排除敏感資料外洩的風險 ・啟用ASP.NET Core Web應用程式的安全功能,防止不安全的組態設定 ・探索ASP.NET Web應用程式的其他漏洞,以及安全開發的最佳實踐 目標讀者 本書的目標讀者是那些使用「ASP.NET Core框架」開發Web應用程式的開發人員和軟體工程師。本書非常適合初學者和經驗豐富的資深工程師:本書將指導新手學習編寫「安全程式碼」的必要基礎,而資深工程師也可以利用這本書,作為一個逐步編寫「ASP.NET Core安全程式碼」的快速參考。 對於那些希望深入理解「如何透過程式碼來保護ASP.NET Core應用程式」的應用系統安全工程師來說,這本書也能提供很好的幫助。本書將協助他們瞭解「如何修復」他們每天執行的安全測試所發現的問題。
推薦序一|黃建笙(Jason 方丈) 推薦序二|陳傳興(Bruce Chen) 推薦序三|Ed Price 前言 Chapter 01:安全程式碼的基礎 技術需求 輸入驗證 使用驗證屬性啟用白名單驗證 使用FluentValidation程式庫進行白名單驗證 語法和語義驗證 輸入清理 使用HtmlSanitizer程式庫進行輸入清理 輸出編碼 使用HtmlEncoder進行輸出編碼 使用UrlEncoder進行輸出編碼 使用JavaScriptEncoder進行輸出編碼 使用Data Protection API保護敏感資料 Chapter 02:注入缺陷 技術需求 什麼是SQL注入? 使用Entity Framework修復SQL注入 在ADO.NET中修復SQL注入 修復NoSQL注入 修復命令注入 修復LDAP注入 修復XPath注入 Chapter 03:無效的身分驗證 技術需求 修復「身分驗證嘗試次數過多」的錯誤限制 修復「未充分保護的認證」 修復「使用者列舉」 修復「弱密碼要求」 修復「工作階段過期時間」的不足 Chapter 04:敏感資料外洩 技術需求 修復傳輸中資料保護不足的問題 修復遺漏的HSTS標頭 修復弱協定 修復寫死的密碼編譯金鑰 禁用關鍵網頁的快取 Chapter 05:XML外部實體 技術需求 啟用XML驗證 使用XmlDocument修復XXE注入 使用XmlTextReader修復XXE注入 使用LINQ to XML修復XXE注入 Chapter 06:無效的存取控制 技術需求 修復IDOR 修復不正確的授權 修復遺漏的存取控制 修復開放式重新導向漏洞 Chapter 07:不安全的組態設定 技術需求 在非開發環境中禁用偵錯功能 修復被禁用的安全功能 禁用不必要的功能 修復經由「錯誤訊息」而導致的資訊暴露 修復經由「不安全的cookie」而導致的資訊暴露 Chapter 08:跨網站指令碼 技術需求 修復反射型XSS 修復儲存性/持續性XSS 修復DOM XSS Chapter 09:不安全的反序列化 技術需求 修復不安全的反序列化 修復「使用不安全的反序列化器」的問題 修復「不受信任的資料」的反序列化 Chapter 10:使用具有已知漏洞的元件 技術需求 修復使用「易受攻擊的第三方JavaScript程式庫」的問題 修復使用「易受攻擊的NuGet套件」的問題 修復使用「來自不受信任來源的程式庫」的問題 Chapter 11:記錄和監控不足 技術需求 修復例外記錄不足的問題 修復資料庫交易記錄不足的問題 修復過多的資訊記錄 修復缺乏安全監控的問題 Chapter 12:其他漏洞 技術需求 修復被禁用的「CSRF保護」 防止伺服器端請求偽造 防止記錄注入 防止HTTP回應分割 防止點擊劫持 修復隨機性不足 Chapter 13:最佳實踐 技術需求 正確的例外處理 使用與安全相關的cookie屬性 使用內容安全性原則(CSP) 修復留下的偵錯程式碼
作者簡介 Roman Canlas Roman Canlas是一名資深應用程式安全工程師,他在一家財星500強的公司工作,在那裡,他成功地從頭開始建立了全球的應用程式安全計劃。多年的開發經驗使他成為「安全程式碼審查」和「靜態應用程式安全測試」方面的專家,專注於Web技術。 Roman擁有多項認證:GIAC Web Application Penetration Tester(GWAPT)、ISC2的Certified Secure Software Lifecycle Professional(CSSLP),以及EC-Council的Certified Application Security Engineer in .NET(CASE.NET)。 Roman還擁有資訊系統碩士學位和電腦科學學士學位。
客服公告
热门活动
订阅电子报