Home > Store > Security > Software Security
Secure Programming with Static Analysis
- By Brian Chess, Jacob West
- Published Jun 29, 2007 by Addison-Wesley Professional. Part of the Addison-Wesley Software Security Series series.
- Copyright 2008
- Dimensions: 7x9-1/4
- Pages: 624
- Edition: 1st
- Book
- ISBN-10: 0-321-42477-8
- ISBN-13: 978-0-321-42477-8
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Brian Chess is a founder of Fortify Software. He currently serves as Fortify’s Chief Scientist, where his work focuses on practical methods for creating secure systems. Brian holds a Ph.D. in Computer Engineering from the University of California at Santa Cruz, where he studied the application of static analysis to the problem of finding security-relevant defects in source code. Before settling on security, Brian spent a decade in Silicon Valley working at huge companies and small startups. He has done research on a broad set of topics, ranging from integrated circuit design all the way to delivering software as a service. He lives in Mountain View, California.
Jacob West manages Fortify Software’s Security Research Group, which is responsible for building security knowledge into Fortify’s products. Jacob brings expertise in numerous programming languages, frameworks, and styles together with knowledge about how real-world systems can fail. Before joining Fortify, Jacob worked with Professor David Wagner at the
University of California at Berkeley to develop MOPS (MOdel Checking Programs for Security properties), a static analysis tool used to discover security vulnerabilities in C programs. When he is away from the keyboard, Jacob spends time speaking at conferences and working with customers to advance their understanding of software security. He lives in San Francisco, California.
The First Expert Guide to Static Analysis for Software Security!
Creating secure code requires more than just good intentions. Programmers need to know that their code will be safe in an almost infinite number of scenarios and configurations. Static source code analysis gives users the ability to review their work with a fine-toothed comb and uncover the kinds of errors that lead directly to security vulnerabilities. Now, there’s a complete guide to static analysis: how it works, how to integrate it into the software development processes, and how to make the most of it during security code review. Static analysis experts Brian Chess and Jacob West look at the most common types of security defects that occur today. They illustrate main points using Java and C code examples taken from real-world security incidents, showing how coding errors are exploited, how they could have been prevented, and how static analysis can rapidly uncover similar mistakes. This book is for everyone concerned with building more secure software: developers, security engineers, analysts, and testers.
Coverage includes:
Why conventional bug-catching often misses security problems
How static analysis can help programmers get security right
The critical attributes and algorithms that make or break a static analysis tool
36 techniques for making static analysis more effective on your code
More than 70 types of serious security vulnerabilities, with specific solutions
Example vulnerabilities from Firefox, OpenSSH, MySpace, eTrade, Apache httpd, and many more
Techniques for handling untrusted input
Eliminating buffer overflows: tactical and strategic approaches
Avoiding errors specific to Web applications, Web services, and Ajax
Security-aware logging, debugging, and error/exception handling
Creating, maintaining, and sharing secrets and confidential information
Detailed tutorials that walk you through the static analysis process
“We designed Java so that it could be analyzed statically. This book shows you how to apply advanced static analysis techniques to create more secure, more reliable software.”
–Bill Joy, Co-founder of Sun Microsystems, co-inventor of the Java programming language
“'Secure Programming with Static Analysis' is a great primer on static analysis for security-minded developers and security practitioners. Well-written, easy to read, tells you what you need to know.”
–David Wagner, Associate Professor, University of California Berkeley
“Software developers are the first and best line of defense for the security of their code. This book gives them the security development knowledge and the tools they need in order to eliminate vulnerabilities before they move into the final products that can be exploited.”
–Howard A. Schmidt, Former White House Cyber Security Advisor
BRIAN CHESS is Founder and Chief Scientist of Fortify Software, where his research focuses on practical methods for creating secure systems. He holds a Ph.D. in Computer Engineering from University of California Santa Cruz, where he studied the application of static analysis to finding security-related code defects.
JACOB WEST manages Fortify Software’s Security Research Group, which is responsible for building security knowledge into Fortify’s products. He brings expertise in numerous programming languages, frameworks, and styles together with deep knowledge about how real-world systems fail.
CD contains a working demonstration version of Fortify Software’s Source Code Analysis (SCA) product; extensive Java and C code samples; and the tutorial chapters from the book in PDF format.
Part I: Software Security and Static Analysis 1
1 The Software Security Problem 3
2 Introduction to Static Analysis 21
3 Static Analysis as Part of the Code Review Process 47
4 Static Analysis Internals 71
Part II: Pervasive Problems 115
5 Handling Input 117
6 Buffer Overflow 175
7 Bride of Buffer Overflow 235
8 Errors and Exceptions 265
Part III: Features and Flavors 295
9 Web Applications 297
10 XML and Web Services 349
11 Privacy and Secrets 379
12 Privileged Programs 421
Part IV: Static Analysis in Practice 457
13 Source Code Analysis Exercises for Java 459
14 Source Code Analysis Exercises for C 503
Epilogue 541
References 545
Index 559
Related Article
|
11 of 15 people found the following review helpful
By
This review is from: Secure Programming with Static Analysis (Paperback)
After having read every secure programming book in print, this is the book I would recommend to both working developers and students. The abundance of code examples in C/C++ and Java help this book stand out from the shelf of other secure programming books, but that's just the beginning of what sets this book apart from the rest.While most secure programming books focus on the basics of security mistakes like buffer overflows, they're short on how to find and fix security flaws in a large body of code. Most of us have too much code to inspect manually line by line by the next release, so this book shows the reader how to effectively use static analysis tools as a part of the code review process to automate finding security bugs. The CD that comes with the book has a working demo version of the Fortify Source Code Analyzer tool, so the reader can gain hands-on experience with static analysis. Once you've found the bugs, you could attempt to fix them one by one,... Read more
15 of 22 people found the following review helpful
By Craig Anderson "Canders" (Waltham, MA) - See all my reviews
This review is from: Secure Programming with Static Analysis (Paperback)
If you are an architect who really serious about building security to your large-scale applications, then this book would offer only a hello world to security. All you find is a full-blownup security chapter "Part 1 and 2" for Standalone application applications beyond that nothing but google-able content. The worst is Part III discusses on web apps, XML web services security, privacy and privileged programs - poorly written and highly repetitive content. To the most disappointment, there is no chapter to show how to put-to-gether all these stuff in a real world enterprise application. I also noticed the book if has the same Java examples from the Java site. The chapter on Web services security is a joke, shows the authors lack of understanding on Web services security fundamentals. After browsing all the pages, I don't found anything that shows how to incorporate them in a working security architecture. The book also trying to promote a product, maybe this book is relevant for those...
Read more
10 of 15 people found the following review helpful
By
This review is from: Secure Programming with Static Analysis (Paperback)
In this exceptional book, Brian Chess and Jacob West provide an invaluable resource to programmers. Armed with with the hands-on instruction provided in Secure Programming with Static Analysis, developers will finally be in a position to fully utilize technological advances to produce better code. Reading this book is a prerequisite for any serious programming.
|
› See all 10 customer reviews...
Online Sample Chapter
Static Analysis as Part of the Code Review Process
Table of Contents
Part I: Software Security and Static Analysis 1
1 The Software Security Problem 3
2 Introduction to Static Analysis 21
3 Static Analysis as Part of the Code Review Process 47
4 Static Analysis Internals 71
Part II: Pervasive Problems 115
5 Handling Input 117
6 Buffer Overflow 175
7 Bride of Buffer Overflow 235
8 Errors and Exceptions 265
Part III: Features and Flavors 295
9 Web Applications 297
10 XML and Web Services 349
11 Privacy and Secrets 379
12 Privileged Programs 421
Part IV: Static Analysis in Practice 457
13 Source Code Analysis Exercises for Java 459
14 Source Code Analysis Exercises for C 503
Epilogue 541
References 545
Index 559
Preface
Downloadable Sample Chapter
Foreword
Index

This book includes free shipping!
This book includes free shipping!
eBook (Watermarked)
$47.99
$38.39
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
- Request an Instructor or Media review copy.
- Corporate, Academic, and Employee Purchases
- International Buying Options
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.

