Pearson Books home
Browse and buy books online Information for authors Browse our academic online catalogue Resources for schools and English language teaching Online courses and companion websites Online ordering for trade customers
The Reg Bookshop home > Secure Programming with Static Analysis
Business BooksBusiness
Careers & Personal Development BooksCareers & Personal Development
Computing BooksComputing
Economics BooksEconomics
Education BooksEducation
Engineering BooksEngineering
Finance and Accounting BooksFinance and Accounting
History BooksHistory
Humanities BooksHumanities
Languages BooksLanguages
Law & Criminology BooksLaw & Criminology
Leisure, Hospitality & Tourism BooksLeisure, Hospitality & Tourism
Life Skills BooksLife Skills
Marketing BooksMarketing
Mathematics BooksMathematics
Revision, York Notes & Study Skills BooksRevision, York Notes & Study Skills
Psychology BooksPsychology
Science BooksScience
Social Science BooksSocial Science
Secure Programming with Static Analysis

Secure Programming with Static Analysis

Brian Chess, Jacob West

Jul 2007, Paperback, 624 pages 
ISBN13: 9780321424778
ISBN10: 0321424778
Special online offer - Save 30%
Was £35.99, Now £25.19 Buy Secure Programming with Static Analysis

Description  Back Cover  Contents  Author  

Description

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

top

Back Cover

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

top

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

top

Author

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.

top


Product Search



Copyright Pearson EducationLegal Notice Privacy Notice