Stack-based buffer overflow in Biosig Project libbiosig
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-121 and the CVSS impact.
Summary
A stack-based buffer overflow vulnerability exists in the MFER parsing functionality of The Biosig Project libbiosig 3.9.0 and Master Branch (35a819fa). A specially crafted MFER file can lead to arbitrary code execution. An attacker can provide a malicious file to trigger this vulnerability.This vulnerability manifests on line 8970 of biosig.c on the current master branch (35a819fa), when the Tag is 63: else if (tag==63) { uint8_t tag2=255, len2=255; count = 0; while ((count<len) && !(FlagInfiniteLength && len2==0 && tag2==0)){ curPos += ifread(&tag2,1,1,hdr); curPos += ifread(&len2,1,1,hdr); if (VERBOSE_LEVEL==9) fprintf(stdout,"MFER: tag=%3i chan=%2i len=%-4i tag2=%3i len2=%3i curPos=%i %li count=%4i\n",tag,chan,len,tag2,len2,curPos,iftell(hdr),(int)count); if (FlagInfiniteLength && len2==0 && tag2==0) break; count += (2+len2); curPos += ifread(&buf,1,len2,hdr); Here, the number of bytes read is not the Data Length decoded from the current frame in the file (`len`) but rather is a new length contained in a single octet read from the same input file (`len2`). Despite this, a stack-based buffer overflow condition can still occur, as the destination buffer is still `buf`, which has a size of only 128 bytes, while `len2` can be as large as 255.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| The Biosig Project | libbiosig | 3.9.0; Master Branch (35a819fa) | — | No fix listed | CNA |
- libbiosig VendorThe Biosig Project Affected 3.9.0; Master Branch (35a819fa) Fixed in — No fix listed CNA
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:libbiosig_project:libbiosig:*:*:*:*:*:*:*:* | before 3.9.1 | Vulnerable | The Biosig Project |
- cpe:2.3:a:libbiosig_project:libbiosig:*:*:*:*:*:*:*:* Versions before 3.9.1 Vulnerable ·The Biosig Project
Remediation
No fixed version listed by the sources yet.
Timeline
- 2026-10-02 Threatist record created from CVE-2025-54489
- 2026-10-03 Alias added: GHSA-54vg-hcf2-vf9w
References
More The Biosig Project Libbiosig vulnerabilities
- TI-2025-40573 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
- TI-2025-40572 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
- TI-2025-40571 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
- TI-2025-40570 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
- TI-2025-40569 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
- TI-2025-40568 Stack-based buffer overflow in Biosig Project libbiosig CVSS 3.1CRITICAL 9.8
Sources
- CVE-2025-54489 · CVE Program
- CVE-2025-54489 · NVD
- FIRST EPSS
- GHSA-54vg-hcf2-vf9w · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences