Logo
-

Byte Open Security

(ByteOS Network)

Log In

Sign Up

ByteOS

Security
Vulnerability Details
Registries
Custom Views
Weaknesses
Attack Patterns
Filters & Tools
CAPEC-29:Leveraging Time-of-Check and Time-of-Use (TOCTOU) Race Conditions
Attack Pattern ID:29
Version:v3.9
Attack Pattern Name:Leveraging Time-of-Check and Time-of-Use (TOCTOU) Race Conditions
Abstraction:Standard
Status:Draft
Likelihood of Attack:High
Typical Severity:High
DetailsContent HistoryRelated WeaknessesReports
9Weaknesses found

CWE-362
Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
ShareView Details
Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')
Likelihood of Exploit-Medium
Mapping-Allowed-with-Review
Abstraction-Class
Found in1813CVEs

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.

Impacts-
Read Application DataDoS: Resource Consumption (Other)DoS: Crash, Exit, or RestartDoS: Resource Consumption (Memory)Execute Unauthorized Code or CommandsGain Privileges or Assume IdentityDoS: Resource Consumption (CPU)Bypass Protection MechanismRead Files or DirectoriesDoS: Instability
Tags-
Medium exploitEnvironment HardeningICS/OT (technology class)Mobile (technology class)Execute Unauthorized Code or Commands (impact)DoS: Resource Consumption (CPU) (impact)Bypass Protection Mechanism (impact)Read Files or Directories (impact)DoS: Crash, Exit, or Restart (impact)DoS: Resource Consumption (Memory) (impact)Read Application Data (impact)DoS: Instability (impact)Gain Privileges or Assume Identity (impact)DoS: Resource Consumption (Other) (impact)
As Seen In-
2022 CWE Top 25 Most Dangerous Software2023 CWE Top 25 Most Dangerous SoftwareOriginally Used by NVD from 2008 to 2016Simplified Mapping of Published Vulnerabilities
CWE-366
Race Condition within a Thread
ShareView Details
Race Condition within a Thread
Likelihood of Exploit-Medium
Mapping-Allowed
Abstraction-Base
Found in11CVEs

If two threads of execution use a resource simultaneously, there exists the possibility that resources may be used while invalid, in turn making the state of execution undefined.

Impacts-
Alter Execution LogicUnexpected State
Tags-
C#Medium exploitUnexpected State (impact)Alter Execution Logic (impact)
As Seen In-
Not Available
CWE-367
Time-of-check Time-of-use (TOCTOU) Race Condition
ShareView Details
Time-of-check Time-of-use (TOCTOU) Race Condition
Likelihood of Exploit-Medium
Mapping-Allowed
Abstraction-Base
Found in451CVEs

The product checks the state of a resource before using that resource, but the resource's state can change between the check and the use in a way that invalidates the results of the check. This can cause the product to perform invalid actions when the resource is in an unexpected state.

Impacts-
OtherAlter Execution LogicModify MemoryHide ActivitiesModify Files or DirectoriesUnexpected StateModify Application Data
Tags-
Medium exploitOther (impact)Unexpected State (impact)Modify Application Data (impact)Modify Files or Directories (impact)Hide Activities (impact)Alter Execution Logic (impact)Modify Memory (impact)
As Seen In-
CWE Cross-section
CWE-368
Context Switching Race Condition
ShareView Details
Context Switching Race Condition
Likelihood of Exploit-Not Available
Mapping-Allowed
Abstraction-Base
Found in5CVEs

A product performs a series of non-atomic actions to switch between contexts that cross privilege or other security boundaries, but a race condition allows an attacker to modify or misrepresent the product's behavior during the switch.

Impacts-
Read Application DataModify Application Data
Tags-
Modify Application Data (impact)Read Application Data (impact)
As Seen In-
Not Available
CWE-370
Missing Check for Certificate Revocation after Initial Check
ShareView Details
Missing Check for Certificate Revocation after Initial Check
Likelihood of Exploit-Medium
Mapping-Allowed
Abstraction-Variant
Found in0CVEs

The product does not check the revocation status of a certificate after its initial revocation check, which can cause the product to perform privileged actions even after the certificate is revoked at a later time.

Impacts-
Read Application DataModify Application DataGain Privileges or Assume Identity
Tags-
Medium exploitModify Application Data (impact)Read Application Data (impact)Gain Privileges or Assume Identity (impact)
As Seen In-
Not Available
CWE-662
Improper Synchronization
ShareView Details
Improper Synchronization
Likelihood of Exploit-Not Available
Mapping-Discouraged
Abstraction-Class
Found in56CVEs

The product utilizes multiple threads or processes to allow temporary access to a shared resource that can only be exclusive to one process at a time, but it does not properly synchronize these actions, which might cause simultaneous accesses of this resource by multiple threads or processes.

Impacts-
Read Application DataAlter Execution LogicModify Application Data
Tags-
Modify Application Data (impact)Read Application Data (impact)Alter Execution Logic (impact)
As Seen In-
CISQ Data Protection MeasuresSimplified Mapping of Published Vulnerabilities
CWE-663
Use of a Non-reentrant Function in a Concurrent Context
ShareView Details
Use of a Non-reentrant Function in a Concurrent Context
Likelihood of Exploit-Not Available
Mapping-Allowed
Abstraction-Base
Found in0CVEs

The product calls a non-reentrant function in a concurrent context in which a competing code sequence (e.g. thread or signal handler) may have an opportunity to call the same function or otherwise influence its state.

Impacts-
Read Application DataAlter Execution LogicModify MemoryRead MemoryModify Application Data
Tags-
Modify Application Data (impact)Read Memory (impact)Read Application Data (impact)Alter Execution Logic (impact)Modify Memory (impact)
As Seen In-
Not Available
CWE-665
Improper Initialization
ShareView Details
Improper Initialization
Likelihood of Exploit-Medium
Mapping-Discouraged
Abstraction-Class
Found in329CVEs

The product does not initialize or incorrectly initializes a resource, which might leave the resource in an unexpected state when it is accessed or used.

Impacts-
Read Application DataBypass Protection MechanismRead MemoryDoS: Crash, Exit, or Restart
Tags-
Medium exploitLanguage SelectionBypass Protection Mechanism (impact)Read Memory (impact)DoS: Crash, Exit, or Restart (impact)Read Application Data (impact)
As Seen In-
CISQ Data Protection MeasuresSimplified Mapping of Published Vulnerabilities
CWE-691
Insufficient Control Flow Management
ShareView Details
Insufficient Control Flow Management
Likelihood of Exploit-Not Available
Mapping-Discouraged
Abstraction-Pillar
Found in30CVEs

The code does not sufficiently manage its control flow during execution, creating conditions in which the control flow can be modified in unexpected ways.

Impacts-
Alter Execution Logic
Tags-
Alter Execution Logic (impact)
As Seen In-
Research Concepts