Katalog CWE

CWE-567 · Słabość

Unsynchronized Access to Shared Data in a Multithreaded Context

Abstrakcja
Bazowa
Status
Szkic
Dodano
15 grudnia 2006
Ostatnia zmiana
11 grudnia 2025

Podatności CVE z tą słabościąPełny wpis na cwe.mitre.org ↗

Opis

The product does not properly synchronize shared data, such as static variables across threads, which can lead to undefined behavior and unpredictable data changes.

Within servlets, shared static variables are not protected from concurrent access, but servlets are multithreaded. This is a typical programming mistake in J2EE applications, since the multithreading is handled by the framework. When a shared variable can be influenced by an attacker, one thread could wind up modifying the variable to contain data that is not valid for a different thread that is also using the data within the variable.

Note that this weakness is not unique to servlets.

Skutki

  • Confidentiality, Integrity, Availability

    Read Application Data; Modify Application Data; DoS: Instability; DoS: Crash, Exit, or Restart

    If the shared variable contains sensitive data, it may be manipulated or displayed in another user session. If this data is used to control the application, its value can be manipulated to cause the application to crash or perform poorly.

Zapobieganie

  • Implementation

    Remove the use of static variables used between servlets. If this cannot be avoided, use synchronized access for these variables.

Słabość nadrzędna

Może prowadzić do

Kiedy powstaje

Dotyczy

Java

Wpis z katalogu CWE 4.20.