Read Time:1 Minute, 6 Second
Description
An integer value is specified to be shifted by a negative amount or an amount greater than or equal to the number of bits contained in the value causing an unexpected or indeterminate result.
Modes of Introduction:
– Implementation
Related Weaknesses
Consequences
Integrity: DoS: Crash, Exit, or Restart
Potential Mitigations
Phase: Implementation
Description:
Implicitly or explicitly add checks and mitigation for negative or over-shift values.
CVE References
- CVE-2009-4307
- An unexpected large value in the ext4 filesystem causes an overshift condition resulting in a divide by zero.
- CVE-2012-2100
- An unexpected large value in the ext4 filesystem causes an overshift condition resulting in a divide by zero – fix of CVE-2009-4307.
- CVE-2020-8835
- An overshift in a kernel a allowed out of bounds reads and writes resulting in a root takeover.
- CVE-2015-1607
- Program is not properly handling signed bitwise left-shifts causing an overlapping memcpy memory range error.
- CVE-2016-9842
- Compression function improperly executes a signed left shift of a negative integer.
- CVE-2018-18445
- Some kernels improperly handle right shifts of 32 bit numbers in a 64 bit register.
- CVE-2013-4206
- Putty has an incorrectly sized shift value resulting in an overshift.
- CVE-2018-20788
- LED driver overshifts under certain conditions resulting in a DoS.