Logo
-

Byte Open Security

(ByteOS Network)

Log In

Sign Up

ByteOS

Security
Vulnerability Details
Registries
Custom Views
Weaknesses
Attack Patterns
Filters & Tools
CWE-824:Access of Uninitialized Pointer
Weakness ID:824
Version:v4.17
Weakness Name:Access of Uninitialized Pointer
Vulnerability Mapping:Allowed
Abstraction:Base
Structure:Simple
Status:Incomplete
Likelihood of Exploit:
DetailsContent HistoryObserved CVE ExamplesReports
▼Description

The product accesses or uses a pointer that has not been initialized.

▼Extended Description

If the pointer contains an uninitialized value, then the value might not point to a valid memory location. This could cause the product to read from or write to unexpected memory locations, leading to a denial of service. If the uninitialized pointer is used as a function call, then arbitrary functions could be invoked. If an attacker can influence the portion of uninitialized memory that is contained in the pointer, this weakness could be leveraged to execute code or perform other attacks.

Depending on memory layout, associated memory management behaviors, and product operation, the attacker might be able to influence the contents of the uninitialized pointer, thus gaining more fine-grained control of the memory location to be accessed.

▼Alternate Terms
▼Relationships
Relevant to the view"Research Concepts - (1000)"
NatureMappingTypeIDName
CanPrecedeAllowedB125Out-of-bounds Read
CanPrecedeAllowedB787Out-of-bounds Write
ChildOfDiscouragedC119Improper Restriction of Operations within the Bounds of a Memory Buffer
Nature: CanPrecede
Mapping: Allowed
Type: Base
ID: 125
Name: Out-of-bounds Read
Nature: CanPrecede
Mapping: Allowed
Type: Base
ID: 787
Name: Out-of-bounds Write
Nature: ChildOf
Mapping: Discouraged
Type: Class
ID: 119
Name: Improper Restriction of Operations within the Bounds of a Memory Buffer
▼Memberships
NatureMappingTypeIDName
MemberOfProhibitedC465Pointer Issues
MemberOfProhibitedC1399Comprehensive Categorization: Memory Safety
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 465
Name: Pointer Issues
Nature: MemberOf
Mapping: Prohibited
Type:Category
ID: 1399
Name: Comprehensive Categorization: Memory Safety
▼Tags
NatureMappingTypeIDName
MemberOfProhibitedBSBOSS-311Execute Unauthorized Code or Commands (impact)
MemberOfProhibitedBSBOSS-323Read Memory (impact)
MemberOfProhibitedBSBOSS-324DoS: Crash, Exit, or Restart (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-311
Name: Execute Unauthorized Code or Commands (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-323
Name: Read Memory (impact)
Nature: MemberOf
Mapping: Prohibited
Type:BOSSView
ID: BOSS-324
Name: DoS: Crash, Exit, or Restart (impact)
▼Relevant To View
Relevant to the view"Software Development - (699)"
NatureMappingTypeIDName
MemberOfProhibitedC465Pointer Issues
Nature: MemberOf
Mapping: Prohibited
Type: Category
ID: 465
Name: Pointer Issues
▼Background Detail

▼Common Consequences
ScopeLikelihoodImpactNote
ConfidentialityN/ARead Memory

If the uninitialized pointer is used in a read operation, an attacker might be able to read sensitive portions of memory.

AvailabilityN/ADoS: Crash, Exit, or Restart

If the uninitialized pointer references a memory location that is not accessible to the product, or points to a location that is "malformed" (such as NULL) or larger than expected by a read or write operation, then a crash may occur.

IntegrityConfidentialityAvailabilityN/AExecute Unauthorized Code or Commands

If the uninitialized pointer is used in a function call, or points to unexpected data in a write operation, then code execution may be possible.

Scope: Confidentiality
Likelihood: N/A
Impact: Read Memory
Note:

If the uninitialized pointer is used in a read operation, an attacker might be able to read sensitive portions of memory.

Scope: Availability
Likelihood: N/A
Impact: DoS: Crash, Exit, or Restart
Note:

If the uninitialized pointer references a memory location that is not accessible to the product, or points to a location that is "malformed" (such as NULL) or larger than expected by a read or write operation, then a crash may occur.

Scope: Integrity, Confidentiality, Availability
Likelihood: N/A
Impact: Execute Unauthorized Code or Commands
Note:

If the uninitialized pointer is used in a function call, or points to unexpected data in a write operation, then code execution may be possible.

▼Potential Mitigations
▼Modes Of Introduction
▼Applicable Platforms
Languages
Class: C(Undetermined Prevalence)
Class: C++(Undetermined Prevalence)
▼Demonstrative Examples
▼Observed Examples
ReferenceDescription
CVE-2024-32878
LLM product has a free of an uninitialized pointer
CVE-2019-3836
Chain: secure communications library does not initialize a local variable for a data structure (CWE-456), leading to access of an uninitialized pointer (CWE-824).
CVE-2018-14641
Chain: C union member is not initialized (CWE-456), leading to access of invalid pointer (CWE-824)
CVE-2010-0211
chain: unchecked return value (CWE-252) leads to free of invalid, uninitialized pointer (CWE-824).
CVE-2009-2768
Pointer in structure is not initialized, leading to NULL pointer dereference (CWE-476) and system crash.
CVE-2009-1721
Free of an uninitialized pointer.
CVE-2009-1415
Improper handling of invalid signatures leads to free of invalid pointer.
CVE-2009-0846
Invalid encoding triggers free of uninitialized pointer.
CVE-2009-0040
Crafted PNG image leads to free of uninitialized pointer.
CVE-2008-2934
Crafted GIF image leads to free of uninitialized pointer.
CVE-2007-4682
Access of uninitialized pointer might lead to code execution.
CVE-2007-4639
Step-based manipulation: invocation of debugging function before the primary initialization function leads to access of an uninitialized pointer and code execution.
CVE-2007-4000
Unchecked return values can lead to a write to an uninitialized pointer.
CVE-2007-2442
zero-length input leads to free of uninitialized pointer.
CVE-2007-1213
Crafted font leads to uninitialized function pointer.
CVE-2006-6143
Uninitialized function pointer in freed memory is invoked
CVE-2006-4175
LDAP server mishandles malformed BER queries, leading to free of uninitialized memory
CVE-2006-0054
Firewall can crash with certain ICMP packets that trigger access of an uninitialized pointer.
CVE-2003-1201
LDAP server does not initialize members of structs, which leads to free of uninitialized pointer if an LDAP request fails.
Reference: CVE-2024-32878
Description:
LLM product has a free of an uninitialized pointer
Reference: CVE-2019-3836
Description:
Chain: secure communications library does not initialize a local variable for a data structure (CWE-456), leading to access of an uninitialized pointer (CWE-824).
Reference: CVE-2018-14641
Description:
Chain: C union member is not initialized (CWE-456), leading to access of invalid pointer (CWE-824)
Reference: CVE-2010-0211
Description:
chain: unchecked return value (CWE-252) leads to free of invalid, uninitialized pointer (CWE-824).
Reference: CVE-2009-2768
Description:
Pointer in structure is not initialized, leading to NULL pointer dereference (CWE-476) and system crash.
Reference: CVE-2009-1721
Description:
Free of an uninitialized pointer.
Reference: CVE-2009-1415
Description:
Improper handling of invalid signatures leads to free of invalid pointer.
Reference: CVE-2009-0846
Description:
Invalid encoding triggers free of uninitialized pointer.
Reference: CVE-2009-0040
Description:
Crafted PNG image leads to free of uninitialized pointer.
Reference: CVE-2008-2934
Description:
Crafted GIF image leads to free of uninitialized pointer.
Reference: CVE-2007-4682
Description:
Access of uninitialized pointer might lead to code execution.
Reference: CVE-2007-4639
Description:
Step-based manipulation: invocation of debugging function before the primary initialization function leads to access of an uninitialized pointer and code execution.
Reference: CVE-2007-4000
Description:
Unchecked return values can lead to a write to an uninitialized pointer.
Reference: CVE-2007-2442
Description:
zero-length input leads to free of uninitialized pointer.
Reference: CVE-2007-1213
Description:
Crafted font leads to uninitialized function pointer.
Reference: CVE-2006-6143
Description:
Uninitialized function pointer in freed memory is invoked
Reference: CVE-2006-4175
Description:
LDAP server mishandles malformed BER queries, leading to free of uninitialized memory
Reference: CVE-2006-0054
Description:
Firewall can crash with certain ICMP packets that trigger access of an uninitialized pointer.
Reference: CVE-2003-1201
Description:
LDAP server does not initialize members of structs, which leads to free of uninitialized pointer if an LDAP request fails.
▼Affected Resources
    ▼Functional Areas
      ▼Weakness Ordinalities
      OrdinalityDescription
      ▼Detection Methods
      Automated Static Analysis
      Detection Method ID:DM-14
      Description:

      Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)

      Effectiveness:High
      Note:

      N/A

      ▼Vulnerability Mapping Notes
      Usage:Allowed
      Reason:Acceptable-Use
      Rationale:

      This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.

      Comments:

      Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.

      Suggestions:
      ▼Notes
      Maintenance

      There are close relationships between incorrect pointer dereferences and other weaknesses related to buffer operations. There may not be sufficient community agreement regarding these relationships. Further study is needed to determine when these relationships are chains, composites, perspective/layering, or other types of relationships. As of September 2010, most of the relationships are being captured as chains.

      N/A

      Terminology

      Many weaknesses related to pointer dereferences fall under the general term of "memory corruption" or "memory safety." As of September 2010, there is no commonly-used terminology that covers the lower-level variants.

      N/A

      ▼Taxonomy Mappings
      Taxonomy NameEntry IDFitEntry Name
      ▼Related Attack Patterns
      IDName
      ▼References
      Reference ID: REF-62
      Title: The Art of Software Security Assessment
      Author: Mark Dowd, John McDonald, Justin Schuh
      Section: Chapter 7, "Variable Initialization", Page 312
      Publication:
      Publisher:Addison Wesley
      Edition:1st Edition
      URL:
      URL Date:
      Day:N/A
      Month:N/A
      Year:2006
      Details not found