skip to content
Secure coding in C and C++ Preview this item
ClosePreview this item
Checking...

Secure coding in C and C++

Author: Robert C Seacord
Publisher: Upper Saddle River, NJ : Addison-Wesley, ©2013.
Series: SEI series in software engineering.
Edition/Format:   eBook : Document : English : 2nd edView all editions and formats
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic books
Additional Physical Format: Print version:
Seacord, Robert C.
Secure coding in C and C++.
Upper Saddle River, NJ : Addison-Wesley, ©2013
(DLC) 2013932290
(OCoLC)813856454
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Robert C Seacord
ISBN: 9780132981989 013298198X 0321822137 9780321822130
OCLC Number: 852664304
Description: 1 online resource (1 volume) : illustrations.
Contents: Foreword xvii Preface xxi Acknowledgments xxv About the Author xxvii Chapter 1: Running with Scissors 1 1.1 Gauging the Threat 5 1.2 Security Concepts 12 1.3 C and C++ 17 1.4 Development Platforms 25 1.5 Summary 27 1.6 Further Reading 28 Chapter 2: Strings 29 2.1 Character Strings 29 2.2 Common String Manipulation Errors 42 2.3 String Vulnerabilities and Exploits 50 2.4 Mitigation Strategies for Strings 72 2.5 String-Handling Functions 84 2.6 Runtime Protection Strategies 101 2.7 Notable Vulnerabilities 117 2.8 Summary 118 2.9 Further Reading 120 Chapter 3: Pointer Subterfuge 121 3.1 Data Locations 122 3.2 Function Pointers 123 3.3 Object Pointers 124 3.4 Modifying the Instruction Pointer 125 3.5 Global Offset Table 127 3.6 The .dtorsSection 129 3.7 Virtual Pointers 131 3.8 The atexit()and on_exit()Functions 133 3.9 The longjmp()Function 134 3.10 Exception Handling 136 3.11 Mitigation Strategies 139 3.12 Summary 142 3.13 Further Reading 143 Chapter 4: Dynamic Memory Management 145 4.1 C Memory Management 146 4.2 Common C Memory Management Errors 151 4.3 C++ Dynamic Memory Management 162 4.4 Common C++ Memory Management Errors 172 4.5 Memory Managers 180 4.6 Doug Lea's Memory Allocator 182 4.7 Double-Free Vulnerabilities 191 4.8 Mitigation Strategies 212 4.9 Notable Vulnerabilities 222 4.10 Summary 224 Chapter 5: Integer Security 225 5.1 Introduction to Integer Security 225 5.2 Integer Data Types 226 5.3 Integer Conversions 246 5.4 Integer Operations 256 5.5 Integer Vulnerabilities 283 5.6 Mitigation Strategies 288 5.7 Summary 307 Chapter 6: Formatted Output 309 6.1 Variadic Functions 310 6.2 Formatted Output Functions 313 6.3 Exploiting Formatted Output Functions 319 6.4 Stack Randomization 332 6.5 Mitigation Strategies 337 6.6 Notable Vulnerabilities 348 6.7 Summary 349 6.8 Further Reading 351 Chapter 7: Concurrency 353 7.1 Multithreading 354 7.2 Parallelism 355 7.3 Performance Goals 359 7.4 Common Errors 362 7.5 Mitigation Strategies 368 7.6 Mitigation Pitfalls 384 7.7 Notable Vulnerabilities 399 7.8 Summary 401 Chapter 8: File I/O 403 8.1 File I/O Basics 403 8.2 File I/O Interfaces 407 8.3 Access Control 413 8.4 File Identification 432 8.5 Race Conditions 450 8.6 Mitigation Strategies 461 8.7 Summary 472 Chapter 9: Recommended Practices 473 9.1 The Security Development Lifecycle 474 9.2 Security Training 480 9.3 Requirements 481 9.4 Design 486 9.5 Implementation 503 9.6 Verification 512 9.7 Summary 518 9.8 Further Reading 518 References 519 Acronyms 539 Index 545
Series Title: SEI series in software engineering.
Other Titles: Secure coding in C and C plus plus
Responsibility: Robert C. Seacord.

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/852664304> # Secure coding in C and C++
    a schema:Book, schema:MediaObject, schema:CreativeWork ;
    library:oclcnum "852664304" ;
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/nju> ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/876688#Place/upper_saddle_river_nj> ; # Upper Saddle River, NJ
    schema:about <http://id.worldcat.org/fast/843286> ; # C++ (Computer program language)
    schema:about <http://id.worldcat.org/fast/872484> ; # Computer security
    schema:about <http://dewey.info/class/005.8/e23/> ;
    schema:about <http://id.worldcat.org/fast/843279> ; # C (Computer program language)
    schema:alternateName "Secure coding in C and C plus plus" ;
    schema:bookEdition "2nd ed." ;
    schema:bookFormat schema:EBook ;
    schema:copyrightYear "2013" ;
    schema:creator <http://viaf.org/viaf/70730483> ; # Robert C. Seacord
    schema:datePublished "2013" ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/876688> ;
    schema:genre "Electronic books"@en ;
    schema:inLanguage "en" ;
    schema:isPartOf <http://experiment.worldcat.org/entity/work/data/876688#Series/sei_series_in_software_engineering> ; # SEI series in software engineering.
    schema:isSimilarTo <http://www.worldcat.org/oclc/813856454> ;
    schema:name "Secure coding in C and C++"@en ;
    schema:productID "852664304" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/852664304#PublicationEvent/upper_saddle_river_nj_addison_wesley_2013> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/876688#Agent/addison_wesley> ; # Addison-Wesley
    schema:url <http://proquest.tech.safaribooksonline.de/9780132981989> ;
    schema:url <http://proxy.library.carleton.ca/login?url=http://proquest.safaribooksonline.com/?uiCode=carleton&xmlId=9780132981989> ;
    schema:url <http://proquest.safaribooksonline.com/9780132981989> ;
    schema:workExample <http://worldcat.org/isbn/9780132981989> ;
    schema:workExample <http://worldcat.org/isbn/9780321822130> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/852664304> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/876688#Agent/addison_wesley> # Addison-Wesley
    a bgn:Agent ;
    schema:name "Addison-Wesley" ;
    .

<http://experiment.worldcat.org/entity/work/data/876688#Place/upper_saddle_river_nj> # Upper Saddle River, NJ
    a schema:Place ;
    schema:name "Upper Saddle River, NJ" ;
    .

<http://experiment.worldcat.org/entity/work/data/876688#Series/sei_series_in_software_engineering> # SEI series in software engineering.
    a bgn:PublicationSeries ;
    schema:hasPart <http://www.worldcat.org/oclc/852664304> ; # Secure coding in C and C++
    schema:name "SEI series in software engineering." ;
    schema:name "SEI series in software engineering" ;
    .

<http://id.worldcat.org/fast/843279> # C (Computer program language)
    a schema:Intangible ;
    schema:name "C (Computer program language)"@en ;
    .

<http://id.worldcat.org/fast/843286> # C++ (Computer program language)
    a schema:Intangible ;
    schema:name "C++ (Computer program language)"@en ;
    .

<http://id.worldcat.org/fast/872484> # Computer security
    a schema:Intangible ;
    schema:name "Computer security"@en ;
    .

<http://viaf.org/viaf/70730483> # Robert C. Seacord
    a schema:Person ;
    schema:familyName "Seacord" ;
    schema:givenName "Robert C." ;
    schema:name "Robert C. Seacord" ;
    .

<http://worldcat.org/isbn/9780132981989>
    a schema:ProductModel ;
    schema:isbn "013298198X" ;
    schema:isbn "9780132981989" ;
    .

<http://worldcat.org/isbn/9780321822130>
    a schema:ProductModel ;
    schema:isbn "0321822137" ;
    schema:isbn "9780321822130" ;
    .

<http://www.worldcat.org/oclc/813856454>
    a schema:CreativeWork ;
    rdfs:label "Secure coding in C and C++." ;
    schema:description "Print version:" ;
    schema:isSimilarTo <http://www.worldcat.org/oclc/852664304> ; # Secure coding in C and C++
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.