Skip to content
OpenAdvisories

Weakness (CWE)

CWE-362: Concurrent Execution using Shared Resource with Improper Synchronization

Class Draft

The product contains a concurrent code sequence that requires temporary, exclusive access to a shared resource, but a timing window exists in which the shared resource can be modified by another code sequence operating concurrently.

How to prevent it (8 mitigations)
  1. Architecture and Design

    In languages that support it, use synchronization primitives. Only wrap these around critical code to minimize the impact on performance.

  2. Architecture and Design

    Use thread-safe capabilities such as the data access abstraction in Spring.

  3. Architecture and Design

    Minimize the usage of shared resources in order to remove as much complexity as possible from the control flow and to reduce the likelihood of unexpected conditions occurring.

    Additionally, this will minimize the amount of synchronization necessary and may even help to reduce the likelihood of a denial of service where an attacker may be able to repeatedly trigger a critical section (CWE-400).

  4. Implementation

    When using multithreading and operating on shared variables, only use thread-safe functions.

  5. Implementation

    Use atomic operations on shared variables. Be wary of innocent-looking constructs such as "x++". This may appear atomic at the code layer, but it is actually non-atomic at the instruction layer, since it involves a read, followed by a computation, followed by a write.

  6. Implementation

    Use a mutex if available, but be sure to avoid related weaknesses such as CWE-412.

  7. Implementation

    Avoid double-checked locking (CWE-609) and other implementation errors that arise when trying to avoid the overhead of synchronization.

  8. Implementation

    Disable interrupts or signals over critical parts of the code, but also make sure that the code does not go into a large or infinite loop.

Source: MITRE CWE-362

1,600 results · Feed

  • Medium 5.9
    CVE-2018-15473 Public exploit EPSS 99%

    OpenSSH through 7.7 is prone to a user enumeration vulnerability due to not delaying bailout for an invalid authenticat…

  • Medium 5.9
    CVE-2018-8037 EPSS 11%

    Apache Tomcat Race Condition vulnerability

    If an async request was completed by the application at the same time as the container triggered the async timeout, a race condition existed that could result in a user seeing a response intended for a different user. An additional issue was present in the NI…

  • Medium 5.3

    OpenStack Neutron Race Condition vulnerability

    A race-condition flaw was discovered in openstack-neutron before 7.2.0-12.1, 8.x before 8.3.0-11.1, 9.x before 9.3.1-2.1, and 10.x before 10.0.2-1.1, where, following a minor overcloud update, neutron security groups were disabled. Specifically, the following…

  • High 8.1

    Race condition in org.apache.hbase:hbase-thrift

    CVE-2018-8025 describes an issue in Apache HBase that affects the optional "Thrift 1" API server when running over HTTP. There is a race-condition which could lead to authenticated sessions being incorrectly applied to users, e.g. one authenticated user would…

  • High 7.0

    Phusion Passenger Race Condition Allows Privilege Escalation

    A race condition in the nginx module in Phusion Passenger 3.x through 5.x before 5.3.2 allows local escalation of privileges when a non-standard passenger_instance_registry_dir with insufficiently strict permissions is configured. Replacing a file with a syml…

  • Medium 5.9

    389-ds-base before versions 1.4.0.10, 1.3.8.3 is vulnerable to a race condition in the way 389-ds-base handles persiste…

  • High —

    private_address_check contains race condition

    private_address_check ruby gem before 0.5.0 is vulnerable to a time-of-check time-of-use (TOCTOU) race condition due to the address the socket uses not being checked. DNS entries with a TTL of 0 can trigger this case where the initial resolution is a public a…

  • Unscored —
    CVE-2017-2619 Public exploit EPSS 11%

    Samba before versions 4.6.1, 4.5.7 and 4.4.11 are vulnerable to a malicious client using a symlink race to allow access…

  • Unscored —
    CVE-2018-1049 Public exploit

    In systemd prior to 234 a race condition exists between .mount and .automount units such that automount requests from k…

  • High 8.1

    Race Condition in Jenkins

    A race condition during Jenkins 2.81 through 2.94 (inclusive); 2.89.1 startup could result in the wrong order of execution of commands during initialization. This could in rare cases result in failure to initialize the setup wizard on the first startup. This …

  • High 8.1

    Apache Guacamole Race Condition vulnerability

    A race condition in Guacamole's terminal emulator in versions 0.9.5 through 0.9.10-incubating could allow writes of blocks of printed data to overlap. Such overlapping writes could cause packet data to be misread as the packet length, resulting in the remaini…

  • Unscored —

    A use-after-free vulnerability was found in network namespaces code affecting the Linux kernel before 4.14.11. The func…

  • High 7.1

    In GNU Coreutils through 8.29, chown-core.c in chown and chgrp does not prevent replacement of a plain file with a syml…

  • High 7.5
    CVE-2016-8745 EPSS 16%

    Concurrent Execution using Shared Resource with Improper Synchronization in Apache Tomcat

    A bug in the error handling of the send file code for the NIO HTTP connector in Apache Tomcat 9.0.0.M1 to 9.0.0.M13, 8.5.0 to 8.5.8, 8.0.0.RC1 to 8.0.39, 7.0.0 to 7.0.73 and 6.0.16 to 6.0.48 resulted in the current Processor object being added to the Processo…

  • High 8.1

    Radicale is vulnerable to timing oracles and simple bruteforce attacks

    Radicale before 1.1.2 and 2.x before 2.0.0rc2 is prone to timing oracles and simple brute-force attacks when using the htpasswd authentication method.

  • Medium 5.9

    Smack allows the bypass of TLS protections

    Race condition in the XMPP library in Smack before 4.1.9, when the SecurityMode.required TLS setting has been set, allows man-in-the-middle attackers to bypass TLS protections and trigger use of cleartext for client authentication by stripping the "starttls" …

  • High 7.0

    Race condition in kernel/events/core.c in the Linux kernel before 4.4 allows local users to gain privileges or cause a …

  • High 7.0
    CVE-2016-5195 Exploited Public exploit EPSS 84%

    Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by le…

    KEV Mar 3, 2022
  • Low —

    OpenStack Neutron Race condition vulnerability

    Race condition in OpenStack Neutron before 2014.2.4 and 2015.1 before 2015.1.2, when using the ML2 plugin or the security groups AMQP API, allows remote authenticated users to bypass IP anti-spoofing controls by changing the device owner of a port to start wi…

  • Medium —

    Information disclosure in JBoss Weld

    Race condition in JBoss Weld before 2.2.8 and 3.x before 3.0.0 Alpha3 allows remote attackers to obtain information from a previous conversation via vectors related to a stale thread state.

  • High 7.5

    Plone and Zope2 affected by Race Condition

    AccessControl/AuthEncoding.py in Zope before 2.13.19, as used in Plone before 4.2.3 and 4.3 before beta 1, allows remote attackers to obtain passwords via vectors involving timing discrepancies in password validation.

  • Medium 5.5
    CVE-2014-0196 Exploited Public exploit EPSS 20%

    The n_tty_write function in drivers/tty/n_tty.c in the Linux kernel through 3.14.3 does not properly manage tty driver …

    KEV May 12, 2023
  • High 7.0

    Race condition in the kernel in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows S…

  • High 7.4

    Race condition in win32k.sys in the kernel-mode drivers in Microsoft Windows Vista SP2, Windows Server 2008 SP2, R2, an…

  • High 7.0

    Race condition in win32k.sys in the kernel-mode drivers in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, W…

  • High 7.4

    Race condition in the kernel in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, Windows Vista SP2, Windows S…

  • High 7.0

    Race condition in win32k.sys in the kernel-mode drivers in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, W…

  • High 7.0

    Race condition in win32k.sys in the kernel-mode drivers in Microsoft Windows XP SP2 and SP3, Windows Server 2003 SP2, W…

  • Medium —

    Concurrent Execution using Shared Resource with Improper Synchronization in Spring Security

    Race condition in the RunAsManager mechanism in VMware SpringSource Spring Security before 2.0.7 and 3.0.x before 3.0.6 stores the Authentication object in the shared security context, which allows attackers to gain privileges via a crafted thread.

  • Medium 4.8

    Race condition in PrivateFirewall 7.0.20.37 on Windows XP allows local users to bypass kernel-mode hook handlers, and e…

  • High 7.0

    Race condition in Online Armor Premium 4.0.0.35 on Windows XP allows local users to bypass kernel-mode hook handlers, a…

  • Medium 4.5

    Race condition in ESET Smart Security 4.2.35.3 on Windows XP allows local users to bypass kernel-mode hook handlers, an…

  • High 7.0

    Race condition in VIPRE Antivirus Premium 4.0.3272 on Windows XP allows local users to bypass kernel-mode hook handlers…

  • High 7.0

    Race condition in Dr.Web Security Space Pro 6.0.0.03100 on Windows XP allows local users to bypass kernel-mode hook han…

  • High 7.5

    Concurrent Execution using Shared Resource with Improper Synchronization in pyftpdlib

    Race condition in the FTPHandler class in ftpserver.py in pyftpdlib before 0.5.2 allows remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the accept function having an unexp…

  • Medium —

    Zope Object Database Denial of Service vulnerability

    Race condition in ZEO/StorageServer.py in Zope Object Database (ZODB) before 3.10.0 allows remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the accept function having an un…

  • Medium —

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') in pyftpdlib

    Race condition in the FTPHandler class in ftpserver.py in pyftpdlib before 0.5.2 allows remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the getpeername function having an …

  • Medium —

    Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition') in pyftpdlib

    Race condition in the FTPHandler class in ftpserver.py in pyftpdlib before 0.5.1 allows remote attackers to cause a denial of service (daemon outage) by establishing and then immediately closing a TCP connection, leading to the accept function having an unexp…

  • Medium 5.9
    CVE-2010-0021 EPSS 13%

    Multiple race conditions in the SMB implementation in the Server service in Microsoft Windows Vista Gold, SP1, and SP2,…

  • Medium —

    session fixation protection mechanism in cgi_process.rb in Rails

    The session fixation protection mechanism in cgi_process.rb in Rails 1.2.4, as used in Ruby on Rails, removes the :cookie_only attribute from the DEFAULT_SESSION_OPTIONS constant, which effectively causes cookie_only to be applied only to the first instantiat…