CWE-128 · Słabość
Wrap-around Error
- Abstrakcja
- Bazowa
- Status
- Niekompletny
- Ryzyko wykorzystania
- średnie
- Dodano
- 19 lipca 2006
- Ostatnia zmiana
- 11 grudnia 2025
Opis
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.
Skutki
Availability
DoS: Crash, Exit, or Restart; DoS: Resource Consumption (CPU); DoS: Resource Consumption (Memory); DoS: Instability
This weakness will generally lead to undefined behavior and therefore crashes. In the case of overflows involving loop index variables, the likelihood of infinite loops is also high.
Integrity
Modify Memory
If the value in question is important to data (as opposed to flow), simple data corruption has occurred. Also, if the wrap around results in other conditions such as buffer overflows, further memory corruption may occur.
Confidentiality, Availability, Access Control
Execute Unauthorized Code or Commands; Bypass Protection Mechanism
This weakness can sometimes trigger buffer overflows which can be used to execute arbitrary code. This is usually outside the scope of a program's implicit security policy.
Zapobieganie
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.
Słabość nadrzędna
Może prowadzić do
Pokrewna
Kiedy powstaje
- Implementation
Dotyczy
C, C++
Uwagi
The relationship between overflow and wrap-around needs to be examined more closely, since several entries (including CWE-190) are closely related.
Źródła
- 24 Deadly Sins of Software Security — Michael Howard, David LeBlanc, John Viega, "Sin 5: Buffer Overruns." Page 89, McGraw-Hill, 2010
- The Art of Software Security Assessment — Mark Dowd, John McDonald, Justin Schuh, Chapter 6, "Signed Integer Boundaries", Page 220, Addison Wesley, 2006
- The CLASP Application Security Process — Secure Software, Inc., 2005
Wpis z katalogu CWE 4.20.