Weakness (CWE)
CWE-128: Wrap-around Error
Wrap around errors occur whenever a value is incremented past the maximum value for its type and therefore "wraps around" to a very small, negative, or undefined value.
How to prevent it (3 mitigations)
-
Requirements specification: The choice could be made to use a language that is not susceptible to these issues.
-
Architecture and Design
Provide clear upper and lower bounds on the scale of any protocols designed.
-
Implementation
Perform validation on all incremented variables to ensure that they remain within reasonable bounds.
Source: MITRE CWE-128
1 result · Clear filters · Feed
-
Low 2.0
concurrent-ruby: `ReentrantReadWriteLock` read-count overflow grants a write lock without exclusivity
concurrent-ruby is a modern concurrency tools for Ruby. Prior to 1.3.7, Concurrent::ReentrantReadWriteLock can incorrectly grant a write lock after one thread acquires the read lock 32,768 times. The lock stores a thread's local read and write hold counts in …