Sceawere
Vulnerability Detail
CVE-2026-90572UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV
Snap7 Memory Corruption Vulnerability
Vulnerability Metadata
- Severity
- Medium
- Score / CVSS
- 4.7
- Creation Date
- 3h ago
- Vendor
- davenardella
- Product
- snap7
- Attack Type
- Memory Corruption
- Vector String
- CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:L/I:L/A:L
- Attack Complexity
- LOW
Narrative and Response
Description
A vulnerability was determined in davenardella snap7 up to 1.4.3. The affected element is the function TSnap7MicroClient::opUpload of the file src/core/s7_micro_client.cpp. Executing a manipulation of the argument DataLen can lead to memory corruption. The attack can be executed remotely. The exploit has been publicly disclosed and may be utilized. The project was informed of the problem early through an issue report but has not responded yet.
Executive Summary
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Technical Details
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Mitigations
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
References
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
Additional Metadata
{
"score": "4.7",
"pubDate": "2026-09-13T18:16:48.727Z",
"pubdate": "2026-09-13T18:16:48.727Z",
"executiveSummary": "A memory corruption vulnerability exists in davenardella snap7 versions up to 1.4.3, specifically within the TSnap7MicroClient::opUpload function.\nThe vulnerability is triggered by improper handling of the DataLen argument, which facilitates a remote attack vector against affected systems.\nSuccessful exploitation leads to memory corruption, potentially resulting in unauthorized code execution, system crashes, or denial of service.\nThe flaw stems from insufficient validation of input parameters, allowing an attacker to manipulate memory operations.\nAs the project maintainers have not yet responded to disclosure, users are currently exposed to potential exploitation if the library is utilized in exposed environments.\nThe attack can be performed remotely, requiring no local authentication, significantly increasing the risk profile for industrial or embedded systems utilizing this library.",
"technicalDetails": "The vulnerability is located in the src/core/s7_micro_client.cpp file within the TSnap7MicroClient::opUpload function. The flaw is fundamentally an input validation error regarding the DataLen parameter, which governs the size of data structures processed during the upload operation.\nWhen a remote client sends a request to the server, the opUpload function fails to perform adequate bounds checking on the DataLen argument before using it to allocate or copy memory. An attacker can craft a malicious packet containing an inflated or specifically malformed DataLen value that deviates from expected protocol constraints.\nThe root cause is a lack of secure integer handling or buffer size verification prior to memory buffer manipulation. By supplying a crafted value, the attacker triggers an out-of-bounds write or a heap-based buffer overflow during the memory copy process within the S7 communication routine.\nThe attack flow proceeds as follows: First, the attacker initiates a connection to the target snap7 instance using the S7 communication protocol. Second, the attacker sends a command that invokes the TSnap7MicroClient::opUpload function. Third, the attacker embeds a malicious DataLen argument within the payload. Fourth, the snap7 client processes the argument without verifying its consistency against the allocated memory buffer, leading to memory corruption.\nThe impact of this corruption is severe, as it allows for the potential overwriting of adjacent memory segments, including function pointers or critical control data. This can lead to arbitrary code execution if an attacker successfully controls the overwriting process, or a controlled crash if the memory segment accessed is invalid, leading to a denial of service (DoS).\nBecause the library is often used in industrial control systems or embedded automation, the remote nature of this vulnerability poses a significant risk to the integrity and availability of operational technology environments. Since the vulnerability resides within the core communication library, any application linked against the vulnerable versions of snap7 is inherently susceptible to this exploit."
}