Software Security Engineering: A Guide for Project Managers (Paperback)

Julia H. Allen, Sean Barnum, Robert J. Ellison, Gary McGraw, Nancy R. Mead

  • 出版商: Addison Wesley
  • 出版日期: 2008-05-01
  • 售價: $2,160
  • 貴賓價: 9.5$2,052
  • 語言: 英文
  • 頁數: 368
  • 裝訂: Paperback
  • ISBN: 032150917X
  • ISBN-13: 9780321509178
  • 相關分類: 資訊安全
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

商品描述

“This book’s broad overview can help an organization choose a set of processes, policies, and techniques that are appropriate for its security maturity, risk tolerance, and development style. This book will help you understand how to incorporate practical security techniques into all phases of the development lifecycle.”

      —Steve Riley, senior security strategist, Microsoft Corporation

 

“There are books written on some of the topics addressed in this book, and there are other books on secure systems engineering. Few address the entire life cycle with a comprehensive overview and discussion of emerging trends and topics as well as this one.”

      —Ronda Henning, senior scientist-software/security queen, Harris Corporation

 

Software that is developed from the beginning with security in mind will resist, tolerate, and recover from attacks more effectively than would otherwise be possible. While there may be no silver bullet for security, there are practices that project managers will find beneficial. With this management guide, you can select from a number of sound practices likely to increase the security and dependability of your software, both during its development and subsequently in its operation.

 

Software Security Engineering draws extensively on the systematic approach developed for the Build Security In (BSI) Web site. Sponsored by the Department of Homeland Security Software Assurance Program, the BSI site offers a host of tools, guidelines, rules, principles, and other resources to help project managers address security issues in every phase of the software development life cycle (SDLC). The book’s expert authors, themselves frequent contributors to the BSI site, represent two well-known resources in the security world: the CERT Program at the Software Engineering Institute (SEI) and Cigital, Inc., a consulting firm specializing in software security.

 

This book will help you understand why

  • Software security is about more than just eliminating vulnerabilities and conducting penetration tests
  • Network security mechanisms and IT infrastructure security services do not sufficiently protect application software from security risks
  • Software security initiatives should follow a risk-management approach to identify priorities and to define what is “good enough”—understanding that software security risks will change throughout the SDLC
  • Project managers and software engineers need to learn to think like an attacker in order to address the range of functions that software should not do, and how software can better resist, tolerate, and recover when under attack

Chapter 1: Why Is Security a Software Issue? 1

1.1 Introduction 1

1.2 The Problem 2

1.3 Software Assurance and Software Security 6

1.4 Threats to Software Security 9

1.5 Sources of Software Insecurity 11

1.6 The Benefits of Detecting Software Security Defects Early 13

1.7 Managing Secure Software Development 18

1.8 Summary 23

 

Chapter 2: What Makes Software Secure? 25

2.1 Introduction 25

2.2 Defining Properties of Secure Software 26

2.3 How to Influence the Security Properties of Software 36

2.4 How to Assert and Specify Desired Security Properties 61

2.5 Summary 71

 

Chapter 3: Requirements Engineering for Secure Software 73

3.1 Introduction 73

3.2 Misuse and Abuse Cases 78

3.3 The SQUARE Process Model 84

3.4 SQUARE Sample Outputs 91

3.5 Requirements Elicitation 99

3.6 Requirements Prioritization 106

3.7 Summary 112

 

Chapter 4: Secure Software Architecture and Design 115

4.1 Introduction 115

4.2 Software Security Practices for Architecture and Design: Architectural Risk Analysis 119

4.3 Software Security Knowledge for Architecture and Design: Security Principles, Security Guidelines, and Attack Patterns 137

4.4 Summary 148

 

Chapter 5: Considerations for Secure Coding and Testing 151

5.1 Introduction 151

5.2 Code Analysis 152

5.3 Coding Practices 160

5.4 Software Security Testing 163

5.5 Security Testing Considerations Throughout the SDLC 173

5.6 Summary 180

 

Chapter 6: Security and Complexity: System Assembly Challenges 183

6.1 Introduction 183

6.2 Security Failures 186

6.3 Functional and Attacker Perspectives for Security Analysis: Two Examples 189

6.4 System Complexity Drivers and Security 203

6.5 Deep Technical Problem Complexity 215

6.6 Summary 217

 

Chapter 7: Governance, and Managing for More Secure Software 221

7.1 Introduction 221

7.2 Governance and Security 223

7.3 Adopting an Enterprise Software Security Framework 226

7.4 How Much Security Is Enough? 236

7.5 Security and Project Management 244

7.6 Maturity of Practice 259

7.7 Summary 266

 

Chapter 8: Getting Started 267

8.1 Where to Begin 269

8.2 In Closing 281

商品描述(中文翻譯)

「這本書的廣泛概述可以幫助組織選擇適合其安全成熟度、風險容忍度和開發風格的一套流程、政策和技術。本書將幫助您了解如何將實用的安全技術融入開發生命周期的各個階段。」——史蒂夫·萊利(Steve Riley),微軟公司高級安全策略師

「有些書籍專門探討本書所涉及的某些主題,還有其他關於安全系統工程的書籍。但很少有書籍像這本書一樣全面地概述和討論整個生命周期以及新興趨勢和主題。」——朗達·亨寧(Ronda Henning),哈里斯公司高級科學家-軟件/安全女王

從一開始就以安全為目標開發的軟件將比其他方式更有效地抵抗、容忍和恢復攻擊。儘管沒有絕對安全的方法,但有些實踐對項目經理會有益。通過這本管理指南,您可以從多種可靠的實踐中選擇,這些實踐很可能提高軟件的安全性和可靠性,無論是在開發過程中還是在運行過程中。

《軟件安全工程》廣泛借鑒了為《建立安全性》(Build Security In,BSI)網站開發的系統化方法。BSI網站由國土安全部軟件保證計劃贊助,提供了一系列工具、指南、規則、原則和其他資源,以幫助項目經理在軟件開發生命周期的每個階段解決安全問題。本書的專家作者本身經常為BSI網站做出貢獻,代表了安全界兩個著名的資源:軟件工程研究所(SEI)的CERT計劃和專門從事軟件安全的咨詢公司Cigital, Inc.。

本書將幫助您了解以下問題:
- 軟件安全不僅僅是消除漏洞和進行滲透測試
- 網絡安全機制和IT基礎設施安全服務無法充分保護應用軟件免受安全風險
- 軟件安全計劃應該遵循風險管理方法,確定優先事項並定義什麼是「足夠好」,並理解軟件安全風險在整個開發生命周期中會發生變化
- 項目經理和軟件工程師需要學會像攻擊者一樣思考,以應對軟件不應該執行的一系列功能,以及在受到攻擊時軟件如何更好地抵抗、容忍和恢復

第一章:為什麼安全是軟件問題?
1.1 簡介
1.2 問題
1.3 軟件保證和軟件安全
1.4 軟件安全威脅
1.5 軟件不安全的來源
1.6 早期檢測軟件安全缺陷的好處
1.7 管理安全軟件開發
1.8 總結

第二章:什麼使軟件安全?
2.1 簡介
2.2 定義安全軟件的特性
2.3 如何增強軟件安全性