CWE

Common Weakness Enumeration

A community-developed list of SW & HW weaknesses that can become vulnerabilities

New to CWE? click here!
CWE Most Important Hardware Weaknesses
CWE Top 25 Most Dangerous Weaknesses
Home > CWE List > CWE- Individual Dictionary Definition (4.16)  
ID

CWE CATEGORY: CERT C Secure Coding Standard (2008) Chapter 5 - Integers (INT)

Category ID: 738
Vulnerability Mapping: PROHIBITED This CWE ID must not be used to map to real-world vulnerabilities
+ Summary
Weaknesses in this category are related to the rules and recommendations in the Integers (INT) chapter of the CERT C Secure Coding Standard (2008).
+ Membership
Nature Type ID Name
MemberOf ViewView - a subset of CWE entries that provides a way of examining CWE content. The two main view structures are Slices (flat lists) and Graphs (containing relationships between entries). 734 Weaknesses Addressed by the CERT C Secure Coding Standard (2008)
HasMember ClassClass - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource. 20 Improper Input Validation
HasMember VariantVariant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. 129 Improper Validation of Array Index
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 190 Integer Overflow or Wraparound
HasMember VariantVariant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. 192 Integer Coercion Error
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 197 Numeric Truncation Error
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 369 Divide By Zero
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 466 Return of Pointer Value Outside of Expected Range
HasMember VariantVariant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. 587 Assignment of a Fixed Address to a Pointer
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 606 Unchecked Input for Loop Condition
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 676 Use of Potentially Dangerous Function
HasMember BaseBase - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 681 Incorrect Conversion between Numeric Types
HasMember PillarPillar - a weakness that is the most abstract type of weakness and represents a theme for all class/base/variant weaknesses related to it. A Pillar is different from a Category as a Pillar is still technically a type of weakness that describes a mistake, while a Category represents a common characteristic used to group related things. 682 Incorrect Calculation
+ Vulnerability Mapping Notes

Usage: PROHIBITED

(this CWE ID must not be used to map to real-world vulnerabilities)

Reason: Category

Rationale:

This entry is a Category. Using categories for mapping has been discouraged since 2019. Categories are informal organizational groupings of weaknesses that can help CWE users with data aggregation, navigation, and browsing. However, they are not weaknesses in themselves.

Comments:

See member weaknesses of this category.
+ Notes

Relationship

In the 2008 version of the CERT C Secure Coding standard, the following rules were mapped to the following CWE IDs:

  • CWE-20 INT06-C Use strtol() or a related function to convert a string token to an integer
  • CWE-129 INT32-C Ensure that operations on signed integers do not result in overflow
  • CWE-190 INT03-C Use a secure integer library
  • CWE-190 INT30-C Ensure that unsigned integer operations do not wrap
  • CWE-190 INT32-C Ensure that operations on signed integers do not result in overflow
  • CWE-190 INT35-C Evaluate integer expressions in a larger size before comparing or assigning to that size
  • CWE-192 INT02-C Understand integer conversion rules
  • CWE-192 INT05-C Do not use input functions to convert character data if they cannot handle all possible inputs
  • CWE-192 INT31-C Ensure that integer conversions do not result in lost or misinterpreted data
  • CWE-197 INT02-C Understand integer conversion rules
  • CWE-197 INT05-C Do not use input functions to convert character data if they cannot handle all possible inputs
  • CWE-197 INT31-C Ensure that integer conversions do not result in lost or misinterpreted data
  • CWE-369 INT33-C Ensure that division and modulo operations do not result in divide-by-zero errors
  • CWE-466 INT11-C Take care when converting from pointer to integer or integer to pointer
  • CWE-587 INT11-C Take care when converting from pointer to integer or integer to pointer
  • CWE-606 INT03-C Use a secure integer library
  • CWE-676 INT06-C Use strtol() or a related function to convert a string token to an integer
  • CWE-681 INT15-C Use intmax_t or uintmax_t for formatted IO on programmer-defined integer types
  • CWE-681 INT31-C Ensure that integer conversions do not result in lost or misinterpreted data
  • CWE-681 INT35-C Evaluate integer expressions in a larger size before comparing or assigning to that size
  • CWE-682 INT07-C Use only explicitly signed or unsigned char type for numeric values
  • CWE-682 INT13-C Use bitwise operators only on unsigned operands
+ References
[REF-597] Robert C. Seacord. "The CERT C Secure Coding Standard". 1st Edition. Addison-Wesley Professional. 2008-10-14.
+ Content History
+ Submissions
Submission Date Submitter Organization
2008-11-24
(CWE 1.1, 2008-11-24)
CWE Content Team MITRE
+ Modifications
Modification Date Modifier Organization
2017-11-08 CWE Content Team MITRE
updated Description, Name, Relationship_Notes
2019-01-03 CWE Content Team MITRE
updated Description, Name, References
2023-04-27 CWE Content Team MITRE
updated Mapping_Notes
2023-06-29 CWE Content Team MITRE
updated Mapping_Notes
+ Previous Entry Names
Change Date Previous Entry Name
2017-11-08 CERT C Secure Coding Section 04 - Integers (INT)
2019-01-03 CERT C Secure Coding (2008 Version) Section 04 - Integers (INT)
Page Last Updated: November 19, 2024