Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Software security : building security in
McGraw G., Addison-Wesley Professional, Boston, MA, 2006. 448 pp. Type: Book (9780321356703)
Date Reviewed: Jun 1 2006

Over the years, I have read several books covering software security from a system or programming language perspective. While most of them were outstanding and provided excellent overviews of the security features to be considered when programming in specific programming languages, I was hoping to eventually see a holistic approach to software security. This is the third work of a truly outstanding trilogy [1,2], and is just the kind of book I had in mind. It is one of the best introductions I have seen to the security of software.

Although the book’s content is spread over 400 pages, one phrase summarizes it well: “Software security is not security software.” One of the major errors we make in development is addressing software security by adding additional features; this process is cost efficient in the short term, but raises major issues in the long run. In his book, McGraw shows that security is not a feature that can be added to extend the functionality of software, but an essential building block and key architectural design characteristic of reliable software.

Although the book is written at a high level of abstraction, going beyond simple code vulnerabilities and examples, the multiple sidebars with anecdotes and real stories related to the content of the book provide suggestive illustrations and make the book easy to read. The book begins by defining the discipline, and then introduces the notion of risk management. These topics comprise the first part of the book, which also covers issues like risk mitigation, risk measures, operations, and the major stages of how to apply risk management in practice. The book’s second part covers touch points for software security, and includes chapters on code review, architectural risk analysis, penetration testing, abuse cases, security requirements, security operations, and external analysis.

At first, the content of the book might seem dry and targeted to less technically oriented readers, like project managers or high-level software architects. For those readers who are more interested in technical and programming issues, my favorite chapter is the fourth, addressing automated code review with the Fortify security tool. The author is one of the developers of this tool, and a CD comes with the book that contains a sample scenario to be worked out by the reader. The final part of the book deals with enterprise-level security development cycles, and shows the importance of knowledge-based management schemes for such purposes.

There is a final jewel hidden at the end of the book--an annotated bibliography covering most of the essential readings from academia and industry. In fact, the contents of the book are intrinsically tied to both of these areas, and McGraw manages to provide a common view on software security from both perspectives. I highly recommend this book to all readers wishing to build security into their software.

Reviewer:  Radu State Review #: CR132856 (0704-0321)
1) Hoglund, G.; McGraw, G. Exploiting software: how to break code . Addison-Wesley Professional, USABoston, MA, 2004.
2) Viega, J.; McGraw, G. Building secure software: how to avoid security problems the right way. Addison-Wesley Professional, Boston, MA, 2001.
Bookmark and Share
  Editor Recommended
Featured Reviewer
 
 
Protection Mechanisms (D.2.0 ... )
 
 
Code Inspections And Walk-Throughs (D.2.5 ... )
 
 
Security and Protection (K.6.5 )
 
 
Testing And Debugging (D.2.5 )
 
Would you recommend this review?
yes
no
Other reviews under "Protection Mechanisms": Date
Building secure software: how to avoid security problems the right way
Viega J. (ed), McGraw G., Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2002.  493, Type: Book (9780201721522)
Apr 22 2002
Pluggable verification modules: an extensible protection mechanism for the JVM
Fong P.  Object-oriented programming, systems, languages, and applications (Proceedings of the 19th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, Vancouver, BC, Canada, Oct 24-28, 2004)404-418, 2004. Type: Proceedings
Jul 21 2005
 Traducement: a model for record security
Walcott T., Bishop M. ACM Transactions on Information and System Security 7(4): 576-590, 2004. Type: Article
May 24 2005
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy