CVE-2026-35170
Heap Buffer Overflow in openFPGALoader BitParser Causes Memory Access
Publication date: 2026-04-06
Last updated on: 2026-04-28
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| trabucayre | openfpgaloader | to 1.1.1 (inc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-125 | The product reads data past the end, or before the beginning, of the intended buffer. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2026-35170 is a high-severity heap buffer overflow vulnerability in the openFPGALoader utility, specifically in the BitParser::parseHeader() function. It occurs when parsing a crafted .bit FPGA configuration file. The vulnerability arises because the code reads length fields from the file and uses them to advance a buffer index without proper bounds checking. This can cause out-of-bounds heap memory reads beyond the allocated buffer.
The flaw allows an attacker to create a malicious .bit file that triggers this out-of-bounds read, potentially causing the program to crash or leak information. Exploiting this vulnerability does not require any FPGA hardware.
How can this vulnerability impact me? :
This vulnerability can lead to program crashes and potential information disclosure when a user loads a malicious .bit file with the vulnerable openFPGALoader version. Since the vulnerability involves out-of-bounds heap reads, it poses a risk of leaking sensitive data from memory.
Because the vulnerability can be triggered by any user loading a crafted file, it represents a supply-chain risk. The impact includes high confidentiality loss and high availability impact, meaning attackers could cause denial of service or access sensitive information.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by analyzing the behavior of openFPGALoader when parsing .bit files, especially crafted ones that contain a large length field causing out-of-bounds heap reads.
One practical approach is to compile openFPGALoader with AddressSanitizer (ASAN) enabled and then run it against suspicious or crafted .bit files to observe if heap-buffer-overflow errors are triggered.
A proof-of-concept minimal .bit file of 52 bytes exists, containing a length field set to 0xFFFF (65,535) followed by 50 'A' characters, which can be used to test the vulnerability.
Suggested commands include:
- Compile openFPGALoader with ASAN: `clang++ -fsanitize=address -g -o openFPGALoader src/bitparser.cpp ...`
- Run openFPGALoader with the crafted .bit file: `./openFPGALoader crafted_file.bit`
- Monitor the output for ASAN reports indicating heap-buffer-overflow at src/bitparser.cpp line 55.
What immediate steps should I take to mitigate this vulnerability?
Currently, no patched versions of openFPGALoader are available to fix this vulnerability.
Immediate mitigation steps include:
- Avoid loading or parsing untrusted or suspicious .bit files with openFPGALoader.
- Restrict access to openFPGALoader to trusted users only, since the attack requires local user interaction.
- Monitor usage and logs for any abnormal crashes or behavior that might indicate exploitation attempts.
- Consider running openFPGALoader in a sandboxed or isolated environment to limit potential impact.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability in openFPGALoader allows out-of-bounds heap memory reads which can lead to potential information disclosure and program crashes. This risk of information disclosure could impact compliance with data protection regulations such as GDPR and HIPAA, which require safeguarding sensitive data against unauthorized access or leaks.
Since the vulnerability can be triggered by loading a crafted .bit file without requiring FPGA hardware, any user processing such files could unintentionally expose sensitive information, thereby increasing supply-chain risk and potentially violating confidentiality requirements mandated by these standards.