The Art of Software Security Testing: Identifying Software Security Flaws (Paperback)
暫譯: 軟體安全測試的藝術:識別軟體安全缺陷 (平裝本)
Chris Wysopal, Lucas Nelson, Dino Dai Zovi, Elfriede Dustin
- 出版商: Addison Wesley
- 出版日期: 2006-11-01
- 定價: $1,980
- 售價: 8.0 折 $1,584
- 語言: 英文
- 頁數: 312
- 裝訂: Paperback
- ISBN: 0321304861
- ISBN-13: 9780321304865
-
相關分類:
Amazon Web Services、資訊安全
立即出貨
買這商品的人也買了...
-
$580$458 -
$2,280$2,166 -
$399After Effects in Production: A Companion for Creating Motion Graphics, 2/e
-
$1,140Designing Interactive Systems: People, Activities, Contexts, Technologies (Hardcover)
-
$2,030$1,929 -
$880$695 -
$480$408 -
$550$468 -
$2,831Thinking in Java, 4/e (Paperback)
-
$780$663 -
$400$360 -
$650$507 -
$550$468 -
$680$666 -
$650$507 -
$1,080CMMI: Guidelines for Process Integration and Product Improvement, 2/e
-
$750$593 -
$720$569 -
$990LPI Linux Certification in a Nutshell, 2/e (Paperback)
-
$480$432 -
$700$630 -
$580$493 -
$880$695 -
$4,030$3,829 -
$600$480
相關主題
商品描述
Description
Risk-based security testing, the important subject of this book, is one of seven software security touchpoints introduced in my book, Software Security: Building Security In. This book takes the basic idea several steps forward. Written by masters of software exploit, this book describes in very basic terms how security testing differs from standard software testing as practiced by QA groups everywhere. It unifies in one place ideas from Michael Howard, David Litchfield, Greg Hoglund, and me into a concise introductory package. Improve your security testing by reading this book today.”
–Gary McGraw, Ph.D., CTO, Cigital; Author, Software Security, Exploiting Software, Building Secure Software, and Software Fault Injection; www.cigital.com/~gem
“As 2006 closes out, we will see over 5,000 software vulnerabilities announced to the public. Many of these vulnerabilities were, or will be, found in enterprise applications from companies who are staffed with large, professional, QA teams. How then can it be that these flaws consistently continue to escape even well-structured diligent testing? The answer, in part, is that testing still by and large only scratches the surface when validating the presence of security flaws. Books such as this hopefully will start to bring a more thorough level of understanding to the arena of security testing and make us all a little safer over time.”
–Alfred Huger, Senior Director, Development, Symantec Corporation
“Software security testing may indeed be an art, but this book provides the paint-by-numbers to perform good, solid, and appropriately destructive security testing: proof that an ounce of creative destruction is worth a pound of patching later. If understanding how software can be broken is step one in every programmers’ twelve-step program to defensible, secure, robust software, then knowledgeable security testing comprises at least steps two through six.”
–Mary Ann Davidson, Chief Security Officer, Oracle
“Over the past few years, several excellent books have come out teaching developers how to write more secure software by describing common security failure patterns. However, none of these books have targeted the tester whose job it is to find the security problems before they make it out of the R&D lab and into customer hands. Into this void comes The Art of Software Security Testing: Identifying Software Security Flaws. The authors, all of whom have extensive experience in security testing, explain how to use free tools to find the problems in software, giving plenty of examples of what a software flaw looks like when it shows up in the test tool. The reader learns why security flaws are different from other types of bugs (we want to know not only that ‘the program does what it’s supposed to,’ but also that ‘the program doesn’t do that which it’s not supposed to’), and how to use the tools to find them. Examples are primarily based on C code, but some description of Java, C#, and scripting languages help for those environments. The authors cover both Windows and UNIX-based test tools, with plenty of screenshots to see what to expect. Anyone who’s doing QA testing on software should read this book, whether as a refresher for finding security problems, or as a starting point for QA people who have focused on testing functionality.”
–Jeremy Epstein, WebMethods
State-of-the-Art Software Security Testing: Expert, Up to Date, and Comprehensive
The Art of Software Security Testing delivers in-depth, up-to-date, battle-tested techniques for anticipating and identifying software security problems before the “bad guys” do.
Drawing on decades of experience in application and penetration testing, this book’s authors can help you transform your approach from mere “verification” to proactive “attack.” The authors begin by systematically reviewing the design and coding vulnerabilities that can arise in software, and offering realistic guidance in avoiding them. Next, they show you ways to customize software debugging tools to test the unique aspects of any program and then analyze the results to identify exploitable vulnerabilities.
Coverage includes
- Tips on how to think the way software attackers think to strengthen your defense strategy
- Cost-effectively integrating security testing into your development lifecycle
- Using threat modeling to prioritize testing based on your top areas of risk
- Building testing labs for performing white-, grey-, and black-box software testing
- Choosing and using the right tools for each testing project
- Executing today’s leading attacks, from fault injection to buffer overflows
- Determining which flaws are most likely to be exploited by real-world attackers
This book is indispensable for every technical professional responsible for software security: testers, QA specialists, security professionals, developers, and more. For IT managers and leaders, it offers a proven blueprint for implementing effective security testing or strengthening existing processes.
Table of Contents
Foreword xiii
Preface xvii
Acknowledgments xxix
About the Authors xxxi
Part I: Introduction
Chapter 1: Case Your Own Joint: A Paradigm Shift from Traditional Software Testing 3
Chapter 2: How Vulnerabilities Get Into All Software 19
Chapter 3: The Secure Software Development Lifecycle 55
Chapter 4: Risk-Based Security Testing: Prioritizing Security Testing with Threat Modeling 73
Chapter 5: Shades of Analysis: White, Gray, and Black Box Testing 93
Part II: Performing the Attacks
Chapter 6: Generic Network Fault Injection 107
Chapter 7: Web Applications: Session Attacks 125
Chapter 8: Web Applications: Common Issues 141
Chapter 9: Web Proxies: Using WebScarab 169
Chapter 10: Implementing a Custom Fuzz Utility 185
Chapter 11: Local Fault Injection 201
Part III: Analysis
Chapter 12: Determining Exploitability 233
Index 251
商品描述(中文翻譯)
描述
基於風險的安全測試,本書的重要主題,是我在書中《軟體安全:內建安全》中介紹的七個軟體安全接觸點之一。本書將基本概念向前推進了幾步。由軟體漏洞專家撰寫,本書以非常基本的術語描述了安全測試與各地QA團隊所實施的標準軟體測試之間的區別。它將Michael Howard、David Litchfield、Greg Hoglund和我自己的想法統一在一個地方,形成一個簡明的入門包。今天就閱讀本書,提升您的安全測試能力。
– Gary McGraw,博士,Cigital首席技術官;《軟體安全、利用軟體、建構安全軟體》和《軟體故障注入》的作者;www.cigital.com/~gem
“隨著2006年的結束,我們將看到超過5,000個軟體漏洞向公眾公告。這些漏洞中的許多是在擁有大型專業QA團隊的企業應用程式中發現的。那麼,這些缺陷為何能夠持續逃避即使是結構良好的勤奮測試呢?部分原因在於,測試在驗證安全缺陷的存在時仍然大多僅僅是表面功夫。希望像這樣的書籍能開始為安全測試領域帶來更深入的理解,並隨著時間的推移讓我們都變得更安全。”
– Alfred Huger,塞門鐵克公司開發部高級總監
“軟體安全測試確實可能是一門藝術,但本書提供了進行良好、穩固且適當破壞性安全測試的數字化指南:證明一盎司的創造性破壞比後續的修補更有價值。如果理解軟體如何被破壞是每位程式設計師在可防禦、安全、穩健軟體的十二步計畫中的第一步,那麼知識豐富的安全測試至少涵蓋了第二到第六步。”
– Mary Ann Davidson,甲骨文公司首席安全官
“在過去幾年中,幾本優秀的書籍教導開發人員如何通過描述常見的安全失敗模式來編寫更安全的軟體。然而,這些書籍中沒有一本是針對測試人員的,他們的工作是發現安全問題,防止它們從研發實驗室流出並進入客戶手中。於是,《軟體安全測試的藝術:識別軟體安全缺陷》應運而生。所有作者在安全測試方面都有豐富的經驗,解釋如何使用免費工具來發現軟體中的問題,並提供了許多示例,展示了當問題出現在測試工具中時,軟體缺陷的樣子。讀者將了解為什麼安全缺陷與其他類型的錯誤不同(我們不僅想知道‘程式是否按預期運行’,還想知道‘程式是否不執行不應該執行的操作’),以及如何使用工具來找到它們。示例主要基於C語言,但對Java、C#和腳本語言的一些描述也有助於這些環境。作者涵蓋了Windows和UNIX基礎的測試工具,並提供了大量截圖以便了解預期的結果。任何從事軟體QA測試的人都應該閱讀本書,無論是作為發現安全問題的複習,還是作為專注於功能測試的QA人員的起點。”
– Jeremy Epstein,WebMethods
最先進的軟體安全測試:專家、最新且全面
《軟體安全測試的藝術》提供了深入、最新、經過實戰考驗的技術,以預測和識別軟體安全問題,防止“壞人”先行發現。
本書的作者擁有數十年的應用程式和滲透測試經驗,可以幫助您將方法從單純的“驗證”轉變為主動的“攻擊”。作者首先系統地回顧了軟體中可能出現的設計和編碼漏洞,並提供了避免這些漏洞的現實指導。接下來,他們展示了如何自定義軟體調試工具,以測試任何程式的獨特方面,然後分析結果以識別可利用的漏洞。
涵蓋內容包括
- 如何以軟體攻擊者的思維來加強您的防禦策略的提示
- 成本效益地將安全測試整合到您的開發生命週期中
- 使用威脅建模根據您的主要風險領域優先進行測試
- 建立測試實驗室以進行白盒、灰盒和黑盒軟體測試
- 為每個測試項目選擇和使用合適的工具
- 執行當今的主要攻擊,從故障注入到緩衝區溢出
- 確定哪些缺陷最有可能被現實世界的攻擊者利用
本書對每位負責軟體安全的技術專業人員都是不可或缺的:測試人員、QA專家、安全專業人員、開發人員等。對於IT經理和領導者,它提供了一個經過驗證的藍圖,以實施有效的安全測試或加強現有流程。
目錄
前言 xiii
序言 xvii
致謝 xxix
關於作者 xxxi
第一部分:介紹
第1章:改變你的思維:從傳統軟體測試的範式轉變 3
第2章:漏洞如何進入所有軟體 19
第3章:安全軟體開發生命週期 55
第4章:基於風險的安全測試:使用威脅建模優先進行安全測試 73
第5章:分析的層次:白盒、灰盒和黑盒測試 93
第二部分:執行攻擊
第6章:通用網路故障注入 107
第7章:網路應用程式:會話攻擊 125
第8章:網路應用程式:常見問題 141
第9章:網路代理:使用WebScarab 169
第10章:實現自定義模糊測試工具 185
第11章:本地故障注入 201
第三部分:分析
第12章:確定可利用性 233
索引 251