Master your Minecraft
 
 

Special Offers see all

Enter to WIN a $100 Credit

Subscribe to PowellsBooks.news
for a chance to win.
Privacy Policy

Tour our stores


    Recently Viewed clear list


    Best Books of the Year | December 8, 2014

    Tracey T.: IMG Best Cookbooks of 2014



    As the cookbook buyer for Powell's Books, I am the lucky one who gets to choose every new cookbook that comes into our stores. This means I have a... Continue »

    spacer
Qualifying orders ship free.
$54.99
New Trade Paper
Ships in 1 to 3 days
Add to Wishlist
available for shipping or prepaid pickup only
Available for In-store Pickup
in 7 to 12 days
Qty Store Section
6 Remote Warehouse Computer Languages- C++

This title in other editions

Other titles in the SEI Series in Software Engineering series:

Secure Coding in C and C++ (SEI Series in Software Engineering)

by

Secure Coding in C and C++ (SEI Series in Software Engineering) Cover

 

Synopses & Reviews

Publisher Comments:

Learn the Root Causes of Software Vulnerabilities and How to Avoid Them

 

Commonly exploited software vulnerabilities are usually caused by avoidable software defects. Having analyzed tens of thousands of vulnerability reports since 1988, CERT has determined that a relatively small number of root causes account for most of the vulnerabilities.

 

Secure Coding in C and C++, Second Edition, identifies and explains these root causes and shows the steps that can be taken to prevent exploitation. Moreover, this book encourages programmers to adopt security best practices and to develop a security mindset that can help protect software from tomorrow’s attacks, not just today’s. Drawing on the CERT’s reports and conclusions, Robert C. Seacord systematically identifies the program errors most likely to lead to security breaches, shows how they can be exploited, reviews the potential consequences, and presents secure alternatives.

 

Coverage includes technical detail on how to

 

  • Improve the overall security of any C or C++ application
  • Thwart buffer overflows, stack-smashing and return oriented programming attacks that exploit insecure string manipulation logic
  • Avoid vulnerabilities and security flaws resulting from the incorrect use of dynamic memory management functions
  • Eliminate integer-related problems resulting from signed integer overflows, unsigned integer wrapping, and truncation errors
  • Perform secure I/O, avoiding file system vulnerabilities
  • Correctly use formatted output functions without introducing format-string vulnerabilities
  • Avoid race conditions and other exploitable vulnerabilities while developing concurrent code.

 

The second edition features

 

  • ·Code updated for C11 and C++11
  • Significant revisions to chapters on strings, dynamic memory management, and integer security
  • A new chapter on concurrency
  • Access to the online secure coding course offered through Carnegie Mellon’s Open Learning Initiative (OLI)

 

Secure Coding in C and C++, Second Edition, presents hundreds of examples of secure code, insecure code, and exploits, implemented for Windows and Linux. If you’re responsible for creating secure C or C++ software–or for keeping it safe–no other book offers you this much detailed, expert assistance.

Synopsis:

Write secure C and C++ code — and avoid the software defects most likely to cause exploitable vulnerabilities! Straight from the world-renowned security experts at CERT/CC, this book identifies the root causes of today's most widespread software vulnerabilities, shows how they can be exploited, reviews the potential consequences, and presents secure alternatives. Fully updated for the new C++11 standard, Secure Coding in C and C++, Second Edition presents extensive new coverage of strings, dynamic memory management, integer security, and many other topics — including an entirely new chapter on writing secure concurrent code. It contains hundreds of Windows- and Linux-based examples of secure code, insecure code, and exploits; comprehensive practical guidance for adopting modern security best practices; and important new insights for developing a security mindset that can help you protect software against tomorrow's attacks, not just today's. This edition also provides unique access to CERT's pioneering Online Learning Initiative (OLI) course on secure coding, originally funded by Cisco, Siemens, and other industry leaders to provide internal training to their own mission-critical developers. For every C/C++ developer who wants to write more secure code.

About the Author

Robert C. Seacord is currently the Secure Coding Technical Manager  in the CERT Program of Carnegie Mellon’s Software Engineering Institute (SEI). He is the author or coauthor of five books, including The CERT® C Secure Coding Standard (Addison-Wesley, 2009), and is the author and instructor of a video training series, Professional C Programming Live Lessons, Part I: Writing Robust, Secure, Reliable Code (Addison-Wesley, 2013).

Table of Contents

Foreword

Preface

About the Author

 

Chapter 1:  Running with Scissors

1.1  Gauging the Threat

1.2  Security Concepts

1.3  C and C++

1.4  Development Platforms

1.5  Summary

1.6  Further Reading

 

Chapter 2:  Strings

2.1  Character Strings

2.2  Common String Manipulation Errors

2.3  String Vulnerabilities and Exploits

2.4  Mitigation Strategies for Strings

2.5  String-Handling Functions

2.6  Runtime Protection Strategies

 

Chapter 3:  Pointer Subterfuge

3.1  Data Locations

3.2  Function Pointers

3.3  Data Pointers

 3.4  Modifying the Instruction Pointer

3.5  Global Offset Table

3.6  The .dtors Section

3.7  Virtual Pointers

3.8  The atexit() and on_exit() Functions

3.9  The longjmp() Function

3.10  Exception Handling

3.11  Mitigation Strategies

3.12  Summary

3.13  Further Reading

 

Chapter 4:  Dynamic Memory Management

4.1  C Memory Management

4.2  Common C Memory Management Errors

4.3  C++ Dynamic Memory Management

4.4  Common C++ Memory Management Errors

4.5  Improperly Paired Memory Management Functions

4.6  Memory Managers

4.7  Doug Lea’s Memory Allocator

4.8  Double-Free Vulnerabilities

4.9  Mitigation Strategies

4.10  Notable Vulnerabilities

4.11  Summary

 

Chapter 5:  Integer Security

5.1  Introduction to Integer Security

5.2  Integer Data Types

5.3  Integer Conversions

5.4  Integer Operations

5.5  Integer Vulnerabilities

5.6  Mitigation Strategies

5.7  Summary

 

Chapter 6:  Formatted Output

6.1  Variadic Functions

6.2  Formatted Output Functions

6.3  Exploiting Formatted Output Functions

6.4  Stack Randomization

6.5  Mitigation Strategies

6.6  Notable Vulnerabilities

6.7  Summary

6.8 Further Reading

 

Chapter 7:  Concurrency

7.1  Introduction

7.2  Performance Goals

7.3  Concurrency Pitfalls

7.4  Concurrency Mitigations

7.5  Concurrency in C and C++

7.6  Concurrency Vulnerabilities

 

Chapter 8:  File I/O

8.1  File I/O Basics

8.2  File I/O Interfaces

8.3  Access Control

8.4  File Identification

8.5  Race Conditions

8.6  Mitigation Strategies

8.7  Summary

 

Chapter 9:  Recommended Practices

9.1  The Security Development Lifecycle

9.2  Security Training

9.3  Requirements

9.4  Design

9.5  Implementation

9.6  Verification

9.7  Summary

9.8  Further Reading

 

References

Acronyms

Index

Product Details

ISBN:
9780321822130
Author:
Seacord, Robert C.
Publisher:
Addison-Wesley Professional
Author:
Seacord, Robert
Subject:
Computer Languages-C++
Subject:
Programming Languages - C
Copyright:
Edition Description:
Trade paper
Series:
SEI Series in Software Engineering
Publication Date:
20130431
Binding:
TRADE PAPER
Language:
English
Pages:
600
Dimensions:
9.164 x 7.148 x 1.181 in 921 gr

Other books you might like

  1. Complete Book of Phonics (Complete... Used Trade Paper $10.50
  2. Practice Makes Perfect: Fractions,... New Trade Paper $14.00
  3. Business Mathematics, 10th Edition Used Trade Paper $1.95

Related Subjects

Computers and Internet » Computer Languages » C
Computers and Internet » Computer Languages » C++
Computers and Internet » Networking » Computer Security

Secure Coding in C and C++ (SEI Series in Software Engineering) New Trade Paper
0 stars - 0 reviews
$54.99 In Stock
Product details 600 pages Addison-Wesley Professional - English 9780321822130 Reviews:
"Synopsis" by ,

Write secure C and C++ code — and avoid the software defects most likely to cause exploitable vulnerabilities! Straight from the world-renowned security experts at CERT/CC, this book identifies the root causes of today's most widespread software vulnerabilities, shows how they can be exploited, reviews the potential consequences, and presents secure alternatives. Fully updated for the new C++11 standard, Secure Coding in C and C++, Second Edition presents extensive new coverage of strings, dynamic memory management, integer security, and many other topics — including an entirely new chapter on writing secure concurrent code. It contains hundreds of Windows- and Linux-based examples of secure code, insecure code, and exploits; comprehensive practical guidance for adopting modern security best practices; and important new insights for developing a security mindset that can help you protect software against tomorrow's attacks, not just today's. This edition also provides unique access to CERT's pioneering Online Learning Initiative (OLI) course on secure coding, originally funded by Cisco, Siemens, and other industry leaders to provide internal training to their own mission-critical developers. For every C/C++ developer who wants to write more secure code.

spacer
spacer
  • back to top

FOLLOW US ON...

     
Powell's City of Books is an independent bookstore in Portland, Oregon, that fills a whole city block with more than a million new, used, and out of print books. Shop those shelves — plus literally millions more books, DVDs, and gifts — here at Powells.com.