CVE-2025-70085
Stack Buffer Overflow in OpenSatKit 2.2.1 file.c Functions
Publication date: 2026-02-11
Last updated on: 2026-02-17
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| opensatkit | opensatkit | 2.2.1 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-121 | A stack-based buffer overflow condition is a condition where the buffer being overwritten is allocated on the stack (i.e., is a local variable or, rarely, a parameter to a function). |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in OpenSatKit version 2.2.1, specifically in the handling of the EventErrStr buffer which has a fixed size of 256 bytes.
The code uses the unsafe function sprintf to format two filenames into this buffer without checking if the combined length exceeds the buffer size. The filenames involved are Source1Filename and the string returned by FileUtil_FileStateStr.
If the filenames are very long, approaching the maximum path length (commonly between 64 and 256 bytes), the formatted string can overflow the 256-byte buffer, causing a stack buffer overflow.
This unsafe usage of sprintf occurs in multiple functions within file.c, such as FILE_ConcatenateCmd() and ConcatenateFiles(), all of which fail to validate the output length before writing to the buffer.
How can this vulnerability impact me? :
A stack buffer overflow can lead to various serious impacts including application crashes, data corruption, and potentially arbitrary code execution if exploited.
Since the vulnerability arises from unchecked string formatting of filenames, an attacker who can control or influence the filenames used in these functions might exploit this to execute malicious code or cause denial of service.
In the context of OpenSatKit, which is used in flight software systems, such an exploit could disrupt critical file management operations, potentially affecting system stability and reliability.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
[{'type': 'paragraph', 'content': "This vulnerability arises from unsafe usage of sprintf in OpenSatKit 2.2.1's file.c, specifically in functions like FILE_ConcatenateCmd() and ConcatenateFiles(), which do not validate output length and can cause stack buffer overflow when handling long filenames."}, {'type': 'paragraph', 'content': 'To detect this vulnerability on your system, you can check if your OpenSatKit installation is version 2.2.1 and review usage of file concatenation commands that might involve long filenames approaching OS_MAX_PATH_LEN.'}, {'type': 'paragraph', 'content': 'Since the code uses event messages for logging errors or debug information via CFE_EVS_SendEvent(), monitoring these event logs for abnormal or error messages related to file concatenation or file operations may help detect attempts to trigger the overflow.'}, {'type': 'paragraph', 'content': 'There are no specific network commands or signatures provided to detect this vulnerability remotely.'}, {'type': 'paragraph', 'content': 'Suggested commands to check file operations and states include using the OpenSatKit file management commands such as FILE_ConcatenateCmd(), which can be invoked to test file concatenation behavior, but care should be taken to avoid triggering the overflow.'}] [1]
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation steps include avoiding the use of file concatenation commands (such as FILE_ConcatenateCmd() and ConcatenateFiles()) with filenames that approach or exceed typical maximum path lengths (64-256 bytes) to prevent triggering the buffer overflow.
Review and restrict input filenames to lengths well below the 256-byte EventErrStr buffer size to avoid overflow conditions.
Monitor event logs generated by the system for any error or debug messages related to file operations, which may indicate attempts to exploit the vulnerability.
Apply patches or updates from OpenSatKit developers once available that replace unsafe sprintf calls with bounded format specifiers or add proper length checks.