Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Updated Coding Standard download links.

Include Page
seccode:Secure Coding Space Homepage Notices
seccode:Secure Coding Space Homepage Notices


The C++ rules and recommendations in this wiki are a work in progress and reflect the current thinking of the secure coding community. Because this is a development website, many pages are incomplete or contain errors. As rules and recommendations mature, they are published in report or book form as official releases. These releases are issued as dictated by the needs and interests of the secure software development community.

The CERT C++ Coding Standard does not currently expose any recommendations; all C++ recommendations have been removed (moved to The Void section) due to quality concerns pending further review and development.

If you wish to be more involved and directly edit content on the site, you still need to request an account and edit privileges

Front Matter  

Content by Label
showLabelsfalse
max99
spaces@self
showSpacefalse
sorttitle
reversetrue
cqllabel = "front-matter" and space = currentSpace()
labels+intro

Rules

...

width10%

...

Image Removed

Image Removed

CERT Websites
CERT
Secure Coding
Tech Tips

Related Sites
Build Security In
Image Removed
Image Removed

...

width90%

C++ inherits a host of opportunities for type violations from C and adds a few of its own.
– Bjarne Stroustrup, "A rationale for semantically enhanced library languages"

...

Content by Label
showLabelsfalse

...

max99
spaces@self
showSpacefalse
sorttitle
cqllabel = "rule-list" and label != "void" and space = currentSpace()
labels+rule-list,-void

Back Matter

Content by Label
showLabelsfalse
max99
spaces@self
showSpacefalse
sorttitle
cqllabel = "bm" and label not in ("cwe-sans","void") and space = currentSpace()
labels+

...

Info

Information for Editors
To have a new section automatically listed above be sure to label it section.

Analyzers

Content by Label
showLabelsfalse
max99
spaces@self
sorttitle
showSpacefalse
titleAnalyzers
labelsanalyzer

Eliminated Sections

Content by Label
showLabelsfalse
maxResults99
sorttitle
showSpacefalse
label+section,+void
space@self

bm -void -cwe-sans

Panel
borderColor#B0B1BA
bgColor#fafafa
titleColor#ffffff
borderWidth1
titleBGColor#B0B1BA
borderStylesolid
titleSecure C++ Coding Books and Downloads

Image Added The CERT C++ Coding Standard, 2016 Edition provides rules to help programmers ensure that their C++ code reduces security flaws by following secure coding best practices.  It is downloadable as a PDF. (errata)



Image AddedThe CERT C++ Coding Standard references and relies on the CERT C Coding Standard. The CERT C Coding Standard, 2016 Edition provides rules to help programmers ensure that their code complies with the new C11 standard and earlier standards, including C99.  It is downloadable as a PDF. (errata)



Image Added

Secure Coding in C and C++ 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.

Panel
borderColor#B0B1BA
bgColor#fafafa
titleColor#ffffff
borderWidth1
titleBGColor#B0B1BA
borderStylesolid
titleContact Us

Contact us if you

  • have questions about this wiki
  • have recommendations for standards in development
  • want to request privileges to participate in standards development
Panel
borderColor#B0B1BA
bgColor#fafafa
titleColor#ffffff
borderWidth1
titleBGColor#B0B1BA
borderStylesolid
titleThank You!

We acknowledge the contributions of the following folks, and we look forward to seeing your name here as well.  

Include Page
seccode:Understand the Difference Between Rules and Recommendations
seccode:Understand the Difference Between Rules and Recommendations

Info
titleLinking to Our Pages

Link to guidelines using the Tiny Link under Tools→Link to this Page... (This URL will not change if the name of the guideline changes.)   

Info
title

...

Information for Editors
  • To eliminate a section from the

...

  • lists above

...

  • , label it section and void.

 

  • To have a section listed as a recommendation, label it section and recommendation.
  • To have a section listed as a rule, label it section and rule.  

...