821
CWE-331: Insufficient Entropy
Weakness ID : 331
Structure : Simple
Abstraction : Base
Description
The product uses an algorithm or scheme that produces insufficient entropy, leaving patterns or
clusters of values that are more likely to occur than others.
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr and give insight to
similar items that may exist at higher and lower levels of abstraction. In addition, relationships such
as PeerOf and CanAlsoBe are defined to show similar weaknesses that may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 330 Use of Insufficiently Random Values 814
ParentOf 332 Insufficient Entropy in PRNG 823
ParentOf 333 Improper Handling of Insufficient Entropy in TRNG 825
Relevant to the view "Weaknesses for Simplified Mapping of Published
Vulnerabilities" (CWE-1003)
Nature Type ID Name Page
ChildOf 330 Use of Insufficiently Random Values 814
Relevant to the view "Architectural Concepts" (CWE-1008)
Nature Type ID Name Page
MemberOf 1013 Encrypt Data 2428
Relevant to the view "Software Development" (CWE-699)
Nature Type ID Name Page
MemberOf 1213 Random Number Issues 2477
MemberOf 310 Cryptographic Issues 2318
Applicable Platforms
Language : Not Language-Specific (Prevalence = Undetermined)
Common Consequences
Scope Impact Likelihood
Access Control
Other
Bypass Protection Mechanism
Other
An attacker could guess the random numbers generated
and could gain unauthorized access to a system if
the random numbers are used for authentication and
authorization.
Potential Mitigations
Phase: Implementation
Determine the necessary entropy to adequately provide for randomness and predictability. This
can be achieved by increasing the number of bits of objects such as keys and seeds.
Demonstrative Examples
Example 1:
CWE Version 4.14
CWE-331: Insufficient Entropy
CWE-331: Insufficient Entropy